← back to Dw Vendor Microsites
build scalamandre (Scalamandre) -> BUILT, port 10072, 4876 skus, img 1.0
6902ef95e9330886aef110511e13c32f2bf597dc · 2026-06-30 15:03:27 -0700 · Steve
Files touched
M manifest.jsonA staging/threads.jsonlA vendors/scalamandre/viewer/fieldmap.jsonA vendors/scalamandre/viewer/public/buybutton.jsA vendors/scalamandre/viewer/public/index.htmlA vendors/scalamandre/viewer/server.js
Diff
commit 6902ef95e9330886aef110511e13c32f2bf597dc
Author: Steve <steve@designerwallcoverings.com>
Date: Tue Jun 30 15:03:27 2026 -0700
build scalamandre (Scalamandre) -> BUILT, port 10072, 4876 skus, img 1.0
---
manifest.json | 10 +-
staging/threads.jsonl | 107 +++++++
vendors/scalamandre/viewer/fieldmap.json | 6 +
vendors/scalamandre/viewer/public/buybutton.js | 70 +++++
vendors/scalamandre/viewer/public/index.html | 414 ++++++++++++++++++++++++
vendors/scalamandre/viewer/server.js | 417 +++++++++++++++++++++++++
6 files changed, 1021 insertions(+), 3 deletions(-)
diff --git a/manifest.json b/manifest.json
index efac466..1bfc6b2 100644
--- a/manifest.json
+++ b/manifest.json
@@ -1571,9 +1571,13 @@
"table_count": 4876,
"samples_only": true,
"status": "OK",
- "build_status": "PENDING",
+ "build_status": "BUILT",
"deploy_status": "PENDING",
- "wave": 3
+ "wave": 3,
+ "port": 10072,
+ "sku_count": 4876,
+ "image_health": 1.0,
+ "image_status": "HEALTHY"
},
"spoonflower": {
"vendor_code": "spoonflower",
@@ -2149,7 +2153,7 @@
"wave": 16
}
},
- "updated_at": "2026-06-30T15:03:23.940108",
+ "updated_at": "2026-06-30T15:03:27.453662",
"stats": {
"total_vendors": 118,
"buildable": 117,
diff --git a/staging/threads.jsonl b/staging/threads.jsonl
new file mode 100644
index 0000000..9453a68
--- /dev/null
+++ b/staging/threads.jsonl
@@ -0,0 +1,107 @@
+{"id": 197, "mfr_sku": "EW15005.790", "dw_sku": "DWTH-830017", "pattern_name": "Whistler", "color_name": "Celery", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": "5 in", "material": "Non Woven - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-4zhs88-837mql/EW15005_790.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:55.208093+00:00", "created_at": "2026-02-24T20:09:14.088562+00:00", "updated_at": "2026-04-01T22:10:49.561522+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#BDB17F", "ai_colors": [{"hex": "#BDB17F", "name": "Khaki", "percentage": 70}, {"hex": "#665F50", "name": "Taupe", "percentage": 30}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral"], "ai_background_color": "Khaki", "ai_tags": ["Khaki", "Taupe", "Brown", "Traditional", "Floral", "Paper", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a delicate floral motif arranged in a symmetrical pattern. The design evokes a sense of classic elegance and understated charm. Ideal for creating a warm and inviting atmosphere in living rooms, bedrooms, or dining areas.", "dominant_color_hex": "#BDB17F", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 196, "mfr_sku": "EW15013.110", "dw_sku": "DWTH-830035", "pattern_name": "Patina", "color_name": "Linen", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-9jr0rs-86d9n2/EW15013_110.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:55.207288+00:00", "created_at": "2026-02-24T20:09:14.085804+00:00", "updated_at": "2026-04-01T22:10:46.216041+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2E7D0", "ai_colors": [{"hex": "#F2E7D0", "name": "Beige", "percentage": 60}, {"hex": "#E5D9C1", "name": "Light Beige", "percentage": 25}, {"hex": "#D7C9B0", "name": "Pale Gold", "percentage": 10}, {"hex": "#C9BA9E", "name": "Cream", "percentage": 5}], "ai_styles": ["Traditional", "Textured"], "ai_patterns": ["Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Pale Gold", "Yellow", "Cream", "White", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle textured pattern in a range of neutral beige tones. Its classic and understated design lends a sense of warmth and sophistication to any space. Recommended for living rooms, bedrooms, or hallways seeking a touch of timeless elegance.", "dominant_color_hex": "#F2E7D0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 193, "mfr_sku": "EW15005.106", "dw_sku": "DWTH-830014", "pattern_name": "Whistler", "color_name": "Marble", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": "5 in", "material": "Paper - 100%", "price_retail": 35.9, "price_trade": 17.95, "image_url": "https://cdn.brandfolder.io/QSXRTCVU/as/fjnc6h4qbsf6r98rbxqxc7ch/EW15005_106.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.967036+00:00", "created_at": "2026-02-24T20:09:13.862037+00:00", "updated_at": "2026-04-01T22:10:42.774523+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Beige", "percentage": 70}, {"hex": "#5C4B32", "name": "Taupe", "percentage": 30}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Taupe", "Brown", "Traditional", "Floral", "Paper", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a delicate floral motif arranged in a symmetrical pattern. The design evokes a sense of classic elegance and understated charm. Ideal for creating a refined and inviting atmosphere in living rooms, bedrooms, or dining areas.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 190, "mfr_sku": "EW15012.925", "dw_sku": "DWTH-830033", "pattern_name": "Glimmer", "color_name": "Silver", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 35.9, "price_trade": 17.95, "image_url": "https://www.kravet.com/media/catalog/product/placeholder/default/placeholder-thumb-kk.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.965148+00:00", "created_at": "2026-02-24T20:09:13.860158+00:00", "updated_at": "2026-04-01T22:36:32.838696+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#696D70", "ai_colors": [{"hex": "#696D70", "name": "Steel Gray", "percentage": 35}, {"hex": "#69A2C8", "name": "Light Blue", "percentage": 30}, {"hex": "#FFFFFF", "name": "White", "percentage": 35}], "ai_styles": ["Minimalist", "Contemporary"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "White", "ai_tags": ["Steel Gray", "Gray", "Light Blue", "White", "Minimalist", "Contemporary", "Geometric", "Abstract", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a minimalist geometric pattern with stylized 'K' shapes. The cool-toned color palette creates a modern and sophisticated mood. Ideal for adding a subtle yet impactful design element to residential or office spaces.", "dominant_color_hex": "#696D70", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 189, "mfr_sku": "EW15005.905", "dw_sku": "DWTH-830018", "pattern_name": "Whistler", "color_name": "Silver", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": "5 in", "material": "Non Woven - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-4l42vs-behz4o/EW15005_905.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.964464+00:00", "created_at": "2026-02-24T20:09:13.85937+00:00", "updated_at": "2026-04-01T22:36:26.878782+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2E5D0", "ai_colors": [{"hex": "#F2E5D0", "name": "Beige", "percentage": 65}, {"hex": "#F7F3E8", "name": "Off-white", "percentage": 35}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Off-white", "Traditional", "Floral", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a delicate floral motif against a textured beige backdrop. The subtle pattern and soft color palette evoke a sense of understated elegance and timeless charm. Ideal for creating a warm and inviting atmosphere in living rooms, bedrooms, or dining areas.", "dominant_color_hex": "#F2E5D0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 185, "mfr_sku": "EW15002.595", "dw_sku": "DWTH-830009", "pattern_name": "Muse", "color_name": "Damson", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 49.9, "price_trade": 24.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-8pvbgo-de4z61/EW15002_595.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.718593+00:00", "created_at": "2026-02-24T20:09:13.643275+00:00", "updated_at": "2026-04-01T22:10:32.240829+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0D0A1", "ai_colors": [{"hex": "#E0D0A1", "name": "Beige", "percentage": 55}, {"hex": "#804050", "name": "Burgundy", "percentage": 30}, {"hex": "#B08060", "name": "Tan", "percentage": 15}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Burgundy", "Red", "Tan", "Traditional", "Textured", "Abstract", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured pattern in beige, burgundy, and tan. The design evokes a traditional style with a touch of rustic charm. Recommended for residential spaces seeking a warm and inviting atmosphere.", "dominant_color_hex": "#E0D0A1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 184, "mfr_sku": "EW15013.140", "dw_sku": "DWTH-830036", "pattern_name": "Patina", "color_name": "Stone", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/as/gw2xfb8jfxwh59gxx7ns3nsb/EW15013_140.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.717844+00:00", "created_at": "2026-02-24T20:09:13.642763+00:00", "updated_at": "2026-04-01T22:36:13.998652+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D0C5B0", "ai_colors": [{"hex": "#D0C5B0", "name": "Beige", "percentage": 60}, {"hex": "#F2EFE5", "name": "Off-white", "percentage": 40}], "ai_styles": ["Traditional", "Textured"], "ai_patterns": ["Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Off-white", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured pattern in neutral beige tones. Its classic and understated style lends a sense of warmth and sophistication to any space. Ideal for creating a calming and inviting atmosphere in living rooms, bedrooms, or offices.", "dominant_color_hex": "#D0C5B0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 192, "mfr_sku": "EW15001.905", "dw_sku": "DWTH-830006", "pattern_name": "Botanica", "color_name": "Silver", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://www.kravet.com/media/catalog/product/placeholder/default/placeholder-thumb-kk.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.966473+00:00", "created_at": "2026-02-24T20:09:13.86148+00:00", "updated_at": "2026-04-01T22:36:38.949777+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#696D70", "ai_colors": [{"hex": "#696D70", "name": "Steel Gray", "percentage": 35}, {"hex": "#69A2C8", "name": "Light Blue", "percentage": 30}, {"hex": "#FFFFFF", "name": "White", "percentage": 35}], "ai_styles": ["Minimalist", "Contemporary"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "White", "ai_tags": ["Steel Gray", "Gray", "Light Blue", "White", "Minimalist", "Contemporary", "Geometric", "Abstract", "Non-woven"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a minimalist geometric pattern of stylized 'K' shapes in contrasting gray and blue tones. The design evokes a sense of modern simplicity and understated elegance. It is suitable for residential and office spaces seeking a clean and contemporary aesthetic.", "dominant_color_hex": "#696D70", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 180, "mfr_sku": "EW15013.970", "dw_sku": "DWTH-830040", "pattern_name": "Patina", "color_name": "Graphite", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-9ocyjc-e8rqjs/EW15013_970.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.714726+00:00", "created_at": "2026-02-24T20:09:13.640672+00:00", "updated_at": "2026-04-01T22:36:06.752599+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D3D3D3", "ai_colors": [{"hex": "#D3D3D3", "name": "Light Gray", "percentage": 55}, {"hex": "#808080", "name": "Gray", "percentage": 35}, {"hex": "#FFFFFF", "name": "White", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Light Gray", "ai_tags": ["Light Gray", "Gray", "White", "Contemporary", "Minimalist", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, abstract textured pattern. Its minimalist style and neutral color palette create a calming and sophisticated mood. Recommended for use in any residential or commercial space seeking a modern and understated aesthetic.", "dominant_color_hex": "#D3D3D3", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 90, "mfr_sku": "EW15013.910", "dw_sku": "DWTH-830038", "pattern_name": "Patina", "color_name": "Dove Grey", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 69.9, "price_trade": 34.95, "image_url": "https://www.kravet.com/media/catalog/product/placeholder/default/placeholder-thumb-kk.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:55.205855+00:00", "created_at": "2026-02-24T20:09:11.981825+00:00", "updated_at": "2026-04-01T22:10:14.382535+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#696D70", "ai_colors": [{"hex": "#696D70", "name": "Steel Gray", "percentage": 35}, {"hex": "#69A1C9", "name": "Light Blue", "percentage": 35}, {"hex": "#FFFFFF", "name": "White", "percentage": 30}], "ai_styles": ["Minimalist", "Contemporary"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "White", "ai_tags": ["Steel Gray", "Gray", "Light Blue", "White", "Minimalist", "Contemporary", "Geometric", "Abstract", "Unknown"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a minimalist geometric pattern formed by stylized 'K' shapes in contrasting steel gray and light blue. The design evokes a contemporary and clean aesthetic. It is suitable for residential and commercial spaces seeking a modern touch.", "dominant_color_hex": "#696D70", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 89, "mfr_sku": "EW15007.205", "dw_sku": "DWTH-830022", "pattern_name": "Frosted Bark", "color_name": "Mocha", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 41.9, "price_trade": 20.95, "image_url": "https://www.kravet.com/media/catalog/product/placeholder/default/placeholder-thumb-kk.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.965727+00:00", "created_at": "2026-02-24T20:09:11.981269+00:00", "updated_at": "2026-04-01T22:10:11.562938+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Brown", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#666B70", "ai_colors": [{"hex": "#666B70", "name": "Steel Gray", "percentage": 35}, {"hex": "#69A3C9", "name": "Light Blue", "percentage": 35}, {"hex": "#FFFFFF", "name": "White", "percentage": 30}], "ai_styles": ["Minimalist", "Contemporary"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "White", "ai_tags": ["Steel Gray", "Gray", "Light Blue", "White", "Minimalist", "Contemporary", "Geometric", "Abstract", "Unknown", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a minimalist geometric pattern with stylized 'K' shapes. The cool-toned color palette creates a modern and sophisticated aesthetic. Ideal for adding a subtle yet impactful design element to residential or commercial spaces.", "dominant_color_hex": "#666B70", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 84, "mfr_sku": "EW15013.925", "dw_sku": "DWTH-830039", "pattern_name": "Patina", "color_name": "Silver", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 45.9, "price_trade": 22.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-9ekf6g-2tu6qs/EW15013_925.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.711774+00:00", "created_at": "2026-02-24T20:09:11.978548+00:00", "updated_at": "2026-04-01T22:35:53.683385+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5F5", "ai_colors": [{"hex": "#F5F5F5", "name": "Off-white", "percentage": 65}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 35}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Light Gray", "Contemporary", "Minimalist", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, abstract texture in light, neutral tones. Its minimalist style creates a calming and sophisticated atmosphere. Recommended for residential spaces seeking a clean and modern aesthetic.", "dominant_color_hex": "#F5F5F5", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 80, "mfr_sku": "EW15032.249", "dw_sku": "DWTH-830103", "pattern_name": "Cordoba", "color_name": "Tawny", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/grxb53ps8tnxqz24tzhn3cj/EW15032_249.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.48787+00:00", "created_at": "2026-02-24T20:09:11.976168+00:00", "updated_at": "2026-04-01T22:09:40.383835+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Beige", "percentage": 55}, {"hex": "#B89B7A", "name": "Taupe", "percentage": 30}, {"hex": "#D1BDA0", "name": "Tan", "percentage": 10}, {"hex": "#876B51", "name": "Brown", "percentage": 5}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Taupe", "Brown", "Tan", "Contemporary", "Abstract", "Textured", "Non-woven"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of vertical brushstrokes in varying shades of brown and beige. The design evokes a contemporary and textured feel. Recommended for use in residential or commercial spaces seeking a modern and understated aesthetic.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 78, "mfr_sku": "EW15023.615", "dw_sku": "DWTH-830065", "pattern_name": "Hakan", "color_name": "Teal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 248.0, "price_trade": 124.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-d87bq0-flucp5/EW15023_615.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.486414+00:00", "created_at": "2026-02-24T20:09:11.975139+00:00", "updated_at": "2026-04-01T22:35:33.776588+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#789CA3", "ai_colors": [{"hex": "#789CA3", "name": "Steel Blue", "percentage": 45}, {"hex": "#89A6AC", "name": "Grayish Teal", "percentage": 30}, {"hex": "#A0B5BA", "name": "Light Gray", "percentage": 15}, {"hex": "#6B8E97", "name": "Medium Gray", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Solid"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Grayish Teal", "Blue", "Light Gray", "Medium Gray", "Contemporary", "Minimalist", "Textured", "Solid", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle textured solid pattern in varying shades of steel blue. Its minimalist style creates a calming and sophisticated mood. Recommended for use in residential or commercial spaces seeking a clean and modern aesthetic.", "dominant_color_hex": "#789CA3", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 77, "mfr_sku": "EW15029.263", "dw_sku": "DWTH-830091", "pattern_name": "Santa Fe", "color_name": "Ember", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/fn3jpgtcbrwczrkm7thfs8s/EW15029_263.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.485326+00:00", "created_at": "2026-02-24T20:09:11.974705+00:00", "updated_at": "2026-04-01T22:09:33.605602+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#8B4513", "name": "Saddle Brown", "percentage": 30}, {"hex": "#D2B48C", "name": "Tan", "percentage": 15}, {"hex": "#654321", "name": "Dark Brown", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Chevron", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Saddle Brown", "Tan", "Dark Brown", "Contemporary", "Chevron", "Abstract", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a bold chevron pattern with a textured, abstract design. The neutral color palette and contemporary style create a sophisticated and versatile look. Recommended for adding visual interest to living rooms, bedrooms, or accent walls.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 74, "mfr_sku": "EW15023.928", "dw_sku": "DWTH-830068", "pattern_name": "Hakan", "color_name": "Pebble", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 248.0, "price_trade": 124.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-3vdjy0-mcvk3/EW15023_928.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.476851+00:00", "created_at": "2026-02-24T20:09:11.973201+00:00", "updated_at": "2026-04-01T22:09:22.767175+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E3DAC5", "ai_colors": [{"hex": "#E3DAC5", "name": "Beige", "percentage": 60}, {"hex": "#D6CEB9", "name": "Light Beige", "percentage": 40}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured pattern in a neutral beige tone. Its classic and understated design lends a sense of warmth and sophistication to any space. Ideal for creating a serene and inviting atmosphere in living rooms, bedrooms, or hallways.", "dominant_color_hex": "#E3DAC5", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 73, "mfr_sku": "EW15017.104", "dw_sku": "DWTH-830041", "pattern_name": "Artisan Plain", "color_name": "Ivory", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 176.0, "price_trade": 88.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-6agyy0-3ac9n8/EW15017_104.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.475997+00:00", "created_at": "2026-02-24T20:09:11.972704+00:00", "updated_at": "2026-04-01T22:35:20.589115+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "White", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Beige", "percentage": 65}, {"hex": "#E8E2D1", "name": "Cream", "percentage": 35}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Cream", "White", "Traditional", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle textured pattern in neutral beige and cream tones. Its classic and understated style lends a sense of warmth and sophistication to any room. Recommended for living rooms, bedrooms, or hallways seeking a touch of timeless elegance.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 72, "mfr_sku": "EW15022.225", "dw_sku": "DWTH-830059", "pattern_name": "Ventris", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-caj6dk-2ghemr/EW15022_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.47477+00:00", "created_at": "2026-02-24T20:09:11.97227+00:00", "updated_at": "2026-04-01T22:09:19.196438+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F0E6D2", "ai_colors": [{"hex": "#F0E6D2", "name": "Beige", "percentage": 55}, {"hex": "#E3D9C5", "name": "Light Beige", "percentage": 35}, {"hex": "#D6CEC0", "name": "Pale Beige", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Stripe"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Pale Beige", "Contemporary", "Textured", "Stripe", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle vertical stripe texture in varying shades of beige. Its contemporary style creates a calming and neutral atmosphere. Recommended for bedrooms, living rooms, or any space seeking a touch of understated elegance.", "dominant_color_hex": "#F0E6D2", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 68, "mfr_sku": "EW15023.680", "dw_sku": "DWTH-830066", "pattern_name": "Hakan", "color_name": "Indigo", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 248.0, "price_trade": 124.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-aw13rc-8al1m/EW15023_680.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.471251+00:00", "created_at": "2026-02-24T20:09:11.97032+00:00", "updated_at": "2026-04-01T22:09:08.845662+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#4F738A", "ai_colors": [{"hex": "#4F738A", "name": "Steel Blue", "percentage": 45}, {"hex": "#6B8394", "name": "Slate Gray", "percentage": 30}, {"hex": "#42647A", "name": "Dark Slate Gray", "percentage": 15}, {"hex": "#7A8E9C", "name": "Gray", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Solid", "Textured"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Slate Gray", "Dark Slate Gray", "Contemporary", "Minimalist", "Solid", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured solid pattern. Its minimalist style and cool color palette create a calming and sophisticated mood. Recommended for use in residential or commercial spaces seeking a clean and modern aesthetic.", "dominant_color_hex": "#4F738A", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 65, "mfr_sku": "EW15027.985", "dw_sku": "DWTH-830085", "pattern_name": "Zanzibar", "color_name": "Charcoal", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "31 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/b5stcjnkb9q7f98sb32mqq/EW15027_985.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.46894+00:00", "created_at": "2026-02-24T20:09:11.968791+00:00", "updated_at": "2026-04-01T22:35:00.527234+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Pale Beige", "percentage": 55}, {"hex": "#5E615C", "name": "Charcoal Gray", "percentage": 45}], "ai_styles": ["Abstract", "Minimalist"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Pale Beige", "ai_tags": ["Pale Beige", "Charcoal Gray", "Gray", "Abstract", "Minimalist", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a pattern of charcoal gray rectangles on a pale beige background, creating an abstract geometric design. The minimalist style evokes a sense of modern simplicity and sophistication. Recommended for use in residential or commercial spaces seeking a contemporary and artistic touch.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 26, "mfr_sku": "EW15025.850", "dw_sku": "DWTH-830078", "pattern_name": "Painted Stripe", "color_name": "Bronze", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-7wlpog-167w14/EW15025_850.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.009098+00:00", "created_at": "2026-02-24T20:09:11.948253+00:00", "updated_at": "2026-04-01T22:34:05.405227+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#B3A38B", "ai_colors": [{"hex": "#B3A38B", "name": "Taupe", "percentage": 45}, {"hex": "#8A9395", "name": "Gray", "percentage": 30}, {"hex": "#C4B59D", "name": "Beige", "percentage": 15}, {"hex": "#A08E75", "name": "Light Brown", "percentage": 10}], "ai_styles": ["Contemporary", "Scandinavian"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Gray", "Beige", "Light Brown", "Contemporary", "Scandinavian", "Stripe", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle stripe pattern with a textured effect. The neutral color palette creates a calming and sophisticated mood, perfect for adding depth and interest to any space. Recommended for use in living rooms, bedrooms, or offices seeking a modern and understated aesthetic.", "dominant_color_hex": "#B3A38B", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 83, "mfr_sku": "EW15027.695", "dw_sku": "DWTH-830084", "pattern_name": "Zanzibar", "color_name": "Ink", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "31 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/9f94m9rqff8r89bh8gxmns4f/EW15027_695.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.708463+00:00", "created_at": "2026-02-24T20:09:11.97807+00:00", "updated_at": "2026-04-01T22:09:50.718107+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E5DCC9", "ai_colors": [{"hex": "#E5DCC9", "name": "Beige", "percentage": 54}, {"hex": "#34495E", "name": "Navy", "percentage": 46}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Navy", "Blue", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a bold abstract pattern of navy rectangles on a beige background. The contemporary style and geometric design create a modern and sophisticated mood. Recommended for use in residential or commercial spaces seeking a unique and artistic touch.", "dominant_color_hex": "#E5DCC9", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 69, "mfr_sku": "EW15017.725", "dw_sku": "DWTH-830042", "pattern_name": "Artisan Plain", "color_name": "Aqua", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 176.0, "price_trade": 88.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-f6b3fk-j5bch/EW15017_725.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.471988+00:00", "created_at": "2026-02-24T20:09:11.9708+00:00", "updated_at": "2026-04-01T22:35:07.589746+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D1DCD1", "ai_colors": [{"hex": "#D1DCD1", "name": "Pale Green", "percentage": 55}, {"hex": "#BFC9BF", "name": "Light Gray", "percentage": 45}], "ai_styles": ["Traditional", "Textured"], "ai_patterns": ["Textured"], "ai_background_color": "Pale Green", "ai_tags": ["Pale Green", "Light Gray", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle textured pattern in pale green and light gray. Its traditional style and understated design create a calming and sophisticated mood. Recommended for use in residential or commercial spaces seeking a touch of elegance and visual interest.", "dominant_color_hex": "#D1DCD1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 63, "mfr_sku": "EW15031.902", "dw_sku": "DWTH-830100", "pattern_name": "Horizon", "color_name": "Mist", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "27 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/ftb9frwq2vvg8596czbggk3s/EW15031_902.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.464586+00:00", "created_at": "2026-02-24T20:09:11.967996+00:00", "updated_at": "2026-04-01T22:08:48.237303+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2B48C", "ai_colors": [{"hex": "#D2B48C", "name": "Beige", "percentage": 45}, {"hex": "#A9A082", "name": "Taupe", "percentage": 30}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 15}, {"hex": "#E2D8C0", "name": "Sand", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Stripe", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Taupe", "Brown", "Light Gray", "Sand", "Contemporary", "Stripe", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a modern abstract stripe pattern in neutral tones. The design evokes a sense of calm and sophistication, perfect for creating a serene atmosphere. Ideal for bedrooms, living rooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#D2B48C", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 61, "mfr_sku": "EW15028.425", "dw_sku": "DWTH-830087", "pattern_name": "Lombok", "color_name": "Dusk", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "22 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/5v6pjs4f4mqm8sn5gh77jtg/EW15028_425.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.462296+00:00", "created_at": "2026-02-24T20:09:11.966892+00:00", "updated_at": "2026-04-01T22:34:50.770544+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#966140", "ai_colors": [{"hex": "#966140", "name": "Brown", "percentage": 65}, {"hex": "#D4C4A8", "name": "Beige", "percentage": 35}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "Brown", "ai_tags": ["Brown", "Beige", "Contemporary", "Abstract", "Geometric", "Non-woven"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of squares and spirals in beige against a brown background. The design has a contemporary and abstract style, creating a visually interesting texture. It is suitable for use in a variety of environments, including residential, office, hospitality, and healthcare settings.", "dominant_color_hex": "#966140", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 56, "mfr_sku": "EW15030.225", "dw_sku": "DWTH-830094", "pattern_name": "Stelvio", "color_name": "Parchment", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/rgsg4ntmj4gnbj73thtfvxw/EW15030_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.459814+00:00", "created_at": "2026-02-24T20:09:11.963877+00:00", "updated_at": "2026-04-01T22:08:13.820637+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2E4C4", "ai_colors": [{"hex": "#F2E4C4", "name": "Beige", "percentage": 65}, {"hex": "#FAF5E5", "name": "Cream", "percentage": 35}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Cream", "White", "Contemporary", "Minimalist", "Abstract", "Geometric", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a modern abstract geometric pattern with rounded zig-zag lines. The neutral beige and cream color palette creates a calming and minimalist style. Ideal for adding a subtle yet stylish touch to any room in residential or commercial spaces.", "dominant_color_hex": "#F2E4C4", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 55, "mfr_sku": "EW15002.780", "dw_sku": "DWTH-830010", "pattern_name": "Muse", "color_name": "Silver Birch", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 43.9, "price_trade": 21.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-c2pe34-70viau/EW15002_780.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.459374+00:00", "created_at": "2026-02-24T20:09:11.963439+00:00", "updated_at": "2026-04-01T22:08:07.240131+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 60}, {"hex": "#D2B48C", "name": "Tan", "percentage": 25}, {"hex": "#2E8B57", "name": "Sea Green", "percentage": 15}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Tan", "Sea Green", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle textured pattern with small, scattered accents. The neutral beige and tan tones create a warm and inviting atmosphere. Recommended for use in living rooms, bedrooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 52, "mfr_sku": "EW15005.125", "dw_sku": "DWTH-830015", "pattern_name": "Whistler", "color_name": "Champagne", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": "5 in", "material": "Non Woven - 100%", "price_retail": 63.9, "price_trade": 31.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-197cvk-2y227/EW15005_125.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.457826+00:00", "created_at": "2026-02-24T20:09:11.962165+00:00", "updated_at": "2026-04-01T22:07:54.290252+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2E4C4", "ai_colors": [{"hex": "#F2E4C4", "name": "Beige", "percentage": 70}, {"hex": "#594B37", "name": "Dark Brown", "percentage": 30}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Dark Brown", "Traditional", "Floral", "Paper"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a repeating floral motif in a dark brown hue against a beige backdrop. The design evokes a sense of classic elegance and understated charm. Ideal for creating a warm and inviting atmosphere in living rooms, bedrooms, or dining areas.", "dominant_color_hex": "#F2E4C4", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 50, "mfr_sku": "EW15031.106", "dw_sku": "DWTH-830098", "pattern_name": "Horizon", "color_name": "Marble", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "27 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/kx2k2wshq4g4gqkpj47g7pb/EW15031_106.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.456651+00:00", "created_at": "2026-02-24T20:09:11.961293+00:00", "updated_at": "2026-04-01T22:07:47.060889+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#E4D8C0", "name": "Sand", "percentage": 30}, {"hex": "#FAF0E6", "name": "Linen", "percentage": 15}, {"hex": "#C2B280", "name": "Khaki", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Sand", "Linen", "White", "Khaki", "Contemporary", "Minimalist", "Stripe", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a subtle stripe pattern with a textured effect. The neutral color palette and minimalist design create a calming and sophisticated atmosphere. Ideal for adding a touch of understated elegance to any interior space.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 115, "mfr_sku": "EW15005.205", "dw_sku": "DWTH-830016", "pattern_name": "Whistler", "color_name": "Mocha", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": "5 in", "material": "Paper - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-gf5rio-caah4y/EW15005_205.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.008425+00:00", "created_at": "2026-02-24T20:09:12.882879+00:00", "updated_at": "2026-04-01T22:10:17.994718+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Brown", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2B48C", "ai_colors": [{"hex": "#D2B48C", "name": "Tan", "percentage": 65}, {"hex": "#4F5441", "name": "Dark Olive Green", "percentage": 35}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral"], "ai_background_color": "Tan", "ai_tags": ["Tan", "Dark Olive Green", "Green", "Traditional", "Floral", "Paper"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a repeating floral motif in a dark olive green against a tan background. The traditional style and botanical pattern create a warm and inviting atmosphere. Recommended for use in living rooms, bedrooms, or dining rooms to add a touch of classic elegance.", "dominant_color_hex": "#D2B48C", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 46, "mfr_sku": "EW15008.948", "dw_sku": "DWTH-830024", "pattern_name": "Alchemy", "color_name": "Granite", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 196.0, "price_trade": 98.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-6olsug-7vfyie/EW15008_948.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.449854+00:00", "created_at": "2026-02-24T20:09:11.959139+00:00", "updated_at": "2026-04-01T22:07:29.606765+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0D8C6", "ai_colors": [{"hex": "#E0D8C6", "name": "Beige", "percentage": 45}, {"hex": "#C8C2B4", "name": "Light Gray", "percentage": 30}, {"hex": "#D6D3C9", "name": "Silver", "percentage": 15}, {"hex": "#B8B1A4", "name": "Taupe", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Gray", "Silver", "Gray", "Taupe", "Brown", "Contemporary", "Abstract", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract geometric pattern with a textured effect. The neutral color palette and subtle design create a modern and sophisticated look. Ideal for adding a touch of understated elegance to any interior space.", "dominant_color_hex": "#E0D8C6", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 40, "mfr_sku": "EW15020.225", "dw_sku": "DWTH-830054", "pattern_name": "Moro", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 262.0, "price_trade": 131.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-66atuo-1qwdxo/EW15020_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.22377+00:00", "created_at": "2026-02-24T20:09:11.955262+00:00", "updated_at": "2026-04-01T22:07:07.112385+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 30}, {"hex": "#EEE8AA", "name": "Pale Beige", "percentage": 15}, {"hex": "#808080", "name": "Gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Gray", "Pale Beige", "Gray", "Contemporary", "Geometric", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of nested rectangles in varying shades of beige and gray. The design offers a modern and minimalist aesthetic. It is suitable for residential spaces seeking a subtle yet stylish backdrop.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 37, "mfr_sku": "EW15022.928", "dw_sku": "DWTH-830062", "pattern_name": "Ventris", "color_name": "Pebble", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-bzb6e8-4kcp5d/EW15022_928.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.221609+00:00", "created_at": "2026-02-24T20:09:11.953722+00:00", "updated_at": "2026-04-01T22:06:56.104131+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0DCD3", "ai_colors": [{"hex": "#E0DCD3", "name": "Beige", "percentage": 60}, {"hex": "#D3D0C9", "name": "Light Beige", "percentage": 40}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Stripe"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Contemporary", "Minimalist", "Textured", "Stripe", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle vertical stripe pattern with a textured effect. The neutral beige color palette creates a calming and sophisticated mood. Recommended for use in residential or commercial spaces seeking a minimalist and contemporary aesthetic.", "dominant_color_hex": "#E0DCD3", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 194, "mfr_sku": "EW15012.104", "dw_sku": "DWTH-830030", "pattern_name": "Glimmer", "color_name": "Ivory", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 33.9, "price_trade": 16.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-333fxs-c579hs/EW15012_104.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.967539+00:00", "created_at": "2026-02-24T20:09:13.862483+00:00", "updated_at": "2026-04-01T22:36:45.232144+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "White", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Cream", "percentage": 75}, {"hex": "#FCFCFC", "name": "Off-white", "percentage": 25}], "ai_styles": ["Contemporary"], "ai_patterns": ["Geometric"], "ai_background_color": "Cream", "ai_tags": ["Cream", "White", "Off-white", "Contemporary", "Geometric", "Paper", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle geometric grid pattern. The neutral cream and off-white color palette creates a calming and sophisticated mood. Ideal for bedrooms, living rooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 67, "mfr_sku": "EW15032.225", "dw_sku": "DWTH-830102", "pattern_name": "Cordoba", "color_name": "Parchment", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/6gx8qvbcnsnm3vqnpbxpxs/EW15032_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.470511+00:00", "created_at": "2026-02-24T20:09:11.969841+00:00", "updated_at": "2026-04-01T22:09:05.519325+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2C0A1", "ai_colors": [{"hex": "#D2C0A1", "name": "Beige", "percentage": 45}, {"hex": "#E5D9C0", "name": "Cream", "percentage": 30}, {"hex": "#917F64", "name": "Taupe", "percentage": 15}, {"hex": "#C1B092", "name": "Tan", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Cream", "White", "Taupe", "Brown", "Tan", "Contemporary", "Abstract", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of vertical brushstrokes in beige, cream, and taupe. The textured design creates a modern and sophisticated mood. Recommended for use in residential or commercial spaces seeking a subtle yet stylish aesthetic.", "dominant_color_hex": "#D2C0A1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 33, "mfr_sku": "EW15020.615", "dw_sku": "DWTH-830055", "pattern_name": "Moro", "color_name": "Teal/Indigo", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 262.0, "price_trade": 131.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-3lo7k0-195ta2/EW15020_615.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.219036+00:00", "created_at": "2026-02-24T20:09:11.95174+00:00", "updated_at": "2026-04-01T22:06:36.23308+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#5F9EA0", "ai_colors": [{"hex": "#5F9EA0", "name": "Steel Blue", "percentage": 35}, {"hex": "#483C32", "name": "Taupe", "percentage": 30}, {"hex": "#F5F5DC", "name": "Beige", "percentage": 20}, {"hex": "#D2B48C", "name": "Tan", "percentage": 15}], "ai_styles": ["Mid-century Modern", "Contemporary"], "ai_patterns": ["Geometric"], "ai_background_color": "Beige", "ai_tags": ["Steel Blue", "Gray", "Taupe", "Brown", "Beige", "Tan", "Mid-century Modern", "Contemporary", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of nested squares in a palette of steel blue, taupe, beige, and tan. The design evokes a Mid-Century Modern aesthetic with a contemporary twist. It is suitable for a variety of spaces, adding a touch of retro sophistication.", "dominant_color_hex": "#5F9EA0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 32, "mfr_sku": "EW15032.695", "dw_sku": "DWTH-830106", "pattern_name": "Cordoba", "color_name": "Ink", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/hbn52jtmgpsp24kfs3rvtf/EW15032_695.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.218447+00:00", "created_at": "2026-02-24T20:09:11.951304+00:00", "updated_at": "2026-04-01T22:06:32.516635+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#466982", "ai_colors": [{"hex": "#466982", "name": "Steel Blue", "percentage": 60}, {"hex": "#F2EFD9", "name": "Beige", "percentage": 25}, {"hex": "#C7943D", "name": "Mustard", "percentage": 15}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Beige", "Mustard", "Yellow", "Contemporary", "Abstract", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of vertical brushstrokes in beige and mustard against a steel blue background. The design evokes a contemporary and artistic mood. Recommended for adding a touch of modern sophistication to any interior space.", "dominant_color_hex": "#466982", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 31, "mfr_sku": "EW15025.985", "dw_sku": "DWTH-830080", "pattern_name": "Painted Stripe", "color_name": "Charcoal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-7cucvs-fdg8kj/EW15025_985.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.217883+00:00", "created_at": "2026-02-24T20:09:11.950778+00:00", "updated_at": "2026-04-01T22:34:24.777377+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#A3998A", "ai_colors": [{"hex": "#A3998A", "name": "Taupe", "percentage": 45}, {"hex": "#737373", "name": "Gray", "percentage": 30}, {"hex": "#C6BFA8", "name": "Beige", "percentage": 15}, {"hex": "#404040", "name": "Charcoal Gray", "percentage": 10}], "ai_styles": ["Industrial", "Farmhouse"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Gray", "Beige", "Charcoal Gray", "Industrial", "Farmhouse", "Stripe", "Textured", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a vertical stripe pattern with a textured effect, mimicking the look of weathered metal. The neutral color palette and industrial-inspired design create a rustic and contemporary feel. Ideal for adding character to living rooms, bedrooms, or accent walls.", "dominant_color_hex": "#A3998A", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 24, "mfr_sku": "EW15020.850", "dw_sku": "DWTH-830057", "pattern_name": "Moro", "color_name": "Charcoal/Bronze", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 262.0, "price_trade": 131.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-7wnoo0-3f59jt/EW15020_850.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.007853+00:00", "created_at": "2026-02-24T20:09:11.947395+00:00", "updated_at": "2026-04-01T22:06:18.242886+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#B0A38B", "ai_colors": [{"hex": "#B0A38B", "name": "Taupe", "percentage": 45}, {"hex": "#736755", "name": "Dark Taupe", "percentage": 30}, {"hex": "#8A7F6D", "name": "Gray-brown", "percentage": 15}, {"hex": "#595246", "name": "Dark Gray-brown", "percentage": 10}], "ai_styles": ["Mid-century Modern", "Contemporary"], "ai_patterns": ["Geometric"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Dark Taupe", "Gray-brown", "Dark Gray-brown", "Mid-century Modern", "Contemporary", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of nested squares in varying shades of taupe and brown. The design evokes a mid-century modern aesthetic with a contemporary twist. It is suitable for residential and commercial spaces seeking a sophisticated and understated look.", "dominant_color_hex": "#B0A38B", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 10, "mfr_sku": "EW15000.910", "dw_sku": "DWTH-830002", "pattern_name": "Woodgrain", "color_name": "Stone", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 178.0, "price_trade": 89.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-5boeco-alw19d/EW15000_910.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.754221+00:00", "created_at": "2026-02-24T20:09:11.938923+00:00", "updated_at": "2026-04-01T22:33:29.941104+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Faux Wood", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F3EB", "ai_colors": [{"hex": "#F5F3EB", "name": "Off-white", "percentage": 55}, {"hex": "#D2C5A9", "name": "Beige", "percentage": 35}, {"hex": "#B8B09B", "name": "Light Gray", "percentage": 10}], "ai_styles": ["Farmhouse", "Scandinavian"], "ai_patterns": ["Textured", "Stripe"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Beige", "Light Gray", "Farmhouse", "Scandinavian", "Textured", "Stripe", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a faux wood plank design with a subtle textured effect. The neutral color palette and rustic charm evoke a sense of warmth and comfort. Ideal for creating a cozy and inviting atmosphere in living rooms, bedrooms, or kitchens.", "dominant_color_hex": "#F5F3EB", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 88, "mfr_sku": "EW15004.905", "dw_sku": "DWTH-830013", "pattern_name": "Afetta Stripe", "color_name": "Silver", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "8 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 63.9, "price_trade": 31.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-g0tfk-ddvuno/EW15004_905.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.716942+00:00", "created_at": "2026-02-24T20:09:11.980719+00:00", "updated_at": "2026-04-01T22:36:00.10184+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2C099", "ai_colors": [{"hex": "#D2C099", "name": "Beige", "percentage": 60}, {"hex": "#736B5F", "name": "Taupe", "percentage": 40}], "ai_styles": ["Traditional"], "ai_patterns": ["Stripe"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Taupe", "Brown", "Traditional", "Stripe", "Paper", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a classic stripe pattern in neutral beige and taupe tones. The design evokes a sense of understated elegance and timeless appeal. Ideal for creating a serene and sophisticated atmosphere in living rooms, bedrooms, or studies.", "dominant_color_hex": "#D2C099", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 35, "mfr_sku": "EW15025.225", "dw_sku": "DWTH-830075", "pattern_name": "Painted Stripe", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-4xjnjc-e6ju7/EW15025_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.220706+00:00", "created_at": "2026-02-24T20:09:11.952824+00:00", "updated_at": "2026-04-01T22:06:46.083876+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#E5E4B7", "name": "Light Beige", "percentage": 30}, {"hex": "#FAF0E6", "name": "Pale Yellow", "percentage": 15}, {"hex": "#DEB887", "name": "Light Brown", "percentage": 10}], "ai_styles": ["Traditional", "Scandinavian"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Pale Yellow", "Light Brown", "Traditional", "Scandinavian", "Stripe", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle stripe pattern with a textured effect, creating a visually interesting surface. The neutral color palette evokes a sense of calm and sophistication, lending itself to a variety of design styles. Recommended for use in living rooms, bedrooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 19, "mfr_sku": "EW15030.249", "dw_sku": "DWTH-830095", "pattern_name": "Stelvio", "color_name": "Tawny", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/6vpzcfqfc4hnmx4bfws6bk2s/EW15030_249.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.005977+00:00", "created_at": "2026-02-24T20:09:11.94517+00:00", "updated_at": "2026-04-01T22:06:01.923578+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F7F4E8", "ai_colors": [{"hex": "#F7F4E8", "name": "Off-white", "percentage": 65}, {"hex": "#C2A782", "name": "Taupe", "percentage": 35}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Abstract"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Taupe", "Brown", "Contemporary", "Minimalist", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a modern abstract pattern of rounded zig-zag lines. The neutral color palette and minimalist design create a calming and sophisticated mood. Ideal for adding a touch of understated elegance to any room.", "dominant_color_hex": "#F7F4E8", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 14, "mfr_sku": "EW15019.850", "dw_sku": "DWTH-830051", "pattern_name": "Fallingwater", "color_name": "Bronze", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 336.0, "price_trade": 168.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-7siakw-34qjs1/EW15019_850.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.756262+00:00", "created_at": "2026-02-24T20:09:11.942391+00:00", "updated_at": "2026-04-01T22:33:42.71736+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#A39787", "ai_colors": [{"hex": "#A39787", "name": "Taupe", "percentage": 45}, {"hex": "#73695B", "name": "Dark Taupe", "percentage": 30}, {"hex": "#C6B9A8", "name": "Light Taupe", "percentage": 15}, {"hex": "#524B40", "name": "Gray", "percentage": 10}], "ai_styles": ["Industrial", "Farmhouse"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Dark Taupe", "Light Taupe", "Gray", "Industrial", "Farmhouse", "Abstract", "Textured", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured pattern with vertical striations. The design evokes a rustic, industrial aesthetic with its muted color palette and distressed appearance. It is suitable for adding depth and character to residential or commercial spaces.", "dominant_color_hex": "#A39787", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 13, "mfr_sku": "EW15019.928", "dw_sku": "DWTH-830052", "pattern_name": "Fallingwater", "color_name": "Pebble", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 336.0, "price_trade": 168.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-fw9tw8-5s5v4w/EW15019_928.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.755753+00:00", "created_at": "2026-02-24T20:09:11.941772+00:00", "updated_at": "2026-04-01T22:05:38.728194+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E3D9C9", "ai_colors": [{"hex": "#E3D9C9", "name": "Beige", "percentage": 45}, {"hex": "#C4BDB0", "name": "Light Gray", "percentage": 30}, {"hex": "#A39B8D", "name": "Taupe", "percentage": 15}, {"hex": "#827A6E", "name": "Gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Gray", "Taupe", "Brown", "Gray", "Contemporary", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured design with vertical striations. The neutral color palette lends a contemporary and sophisticated mood. Ideal for adding subtle depth and visual interest to any interior space.", "dominant_color_hex": "#E3D9C9", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 12, "mfr_sku": "EW15024.104", "dw_sku": "DWTH-830069", "pattern_name": "Renzo", "color_name": "Ivory", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-br2h2g-101e3t/EW15024_104.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.755255+00:00", "created_at": "2026-02-24T20:09:11.941037+00:00", "updated_at": "2026-04-01T22:33:36.044638+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "White", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0D8C7", "ai_colors": [{"hex": "#E0D8C7", "name": "Beige", "percentage": 60}, {"hex": "#F2F0EA", "name": "Off-white", "percentage": 40}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Off-white", "Contemporary", "Minimalist", "Textured", "Abstract", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured abstract pattern. The neutral color palette and minimalist design create a calming and sophisticated atmosphere. Ideal for bedrooms, living rooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#E0D8C7", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 17, "mfr_sku": "EW15024.225", "dw_sku": "DWTH-830070", "pattern_name": "Renzo", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-f9gewo-cof0px/EW15024_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.005119+00:00", "created_at": "2026-02-24T20:09:11.944064+00:00", "updated_at": "2026-04-01T22:05:52.772401+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#EEE8AA", "name": "Pale Beige", "percentage": 30}, {"hex": "#F0E68C", "name": "Light Beige", "percentage": 15}, {"hex": "#FFFFF0", "name": "Ivory", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Pale Beige", "Light Beige", "Ivory", "White", "Contemporary", "Minimalist", "Textured", "Abstract", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, abstract stripe pattern with a textured effect. The neutral beige tones create a calming and minimalist aesthetic. Ideal for adding depth and visual interest to any residential space.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 8, "mfr_sku": "EW15025.928", "dw_sku": "DWTH-830079", "pattern_name": "Painted Stripe", "color_name": "Pebble", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-bnrtgo-5al3t9/EW15025_928.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.753074+00:00", "created_at": "2026-02-24T20:09:11.937353+00:00", "updated_at": "2026-04-01T22:05:28.339463+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D3D0C9", "ai_colors": [{"hex": "#D3D0C9", "name": "Light Gray", "percentage": 45}, {"hex": "#A3A29B", "name": "Gray", "percentage": 30}, {"hex": "#BDB5A5", "name": "Taupe", "percentage": 15}, {"hex": "#B2BCC7", "name": "Light Blue-gray", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Light Gray", "ai_tags": ["Light Gray", "Gray", "Taupe", "Brown", "Light Blue-gray", "Contemporary", "Minimalist", "Stripe", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle vertical stripe pattern with a textured effect. The neutral color palette creates a calming and sophisticated mood. Ideal for adding depth and visual interest to any interior space.", "dominant_color_hex": "#D3D0C9", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 7, "mfr_sku": "EW15019.985", "dw_sku": "DWTH-830053", "pattern_name": "Fallingwater", "color_name": "Charcoal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 336.0, "price_trade": 168.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-2sloeg-2u8srl/EW15019_985.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.752396+00:00", "created_at": "2026-02-24T20:09:11.936645+00:00", "updated_at": "2026-04-01T22:33:23.661687+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#4A4A4A", "ai_colors": [{"hex": "#4A4A4A", "name": "Charcoal Gray", "percentage": 45}, {"hex": "#808080", "name": "Gray", "percentage": 30}, {"hex": "#B3B380", "name": "Taupe", "percentage": 15}, {"hex": "#666666", "name": "Dark Gray", "percentage": 10}], "ai_styles": ["Industrial", "Contemporary"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Gray", "ai_tags": ["Charcoal Gray", "Gray", "Taupe", "Brown", "Dark Gray", "Industrial", "Contemporary", "Abstract", "Textured", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured design with vertical striations. The color palette is a blend of grays and taupe, creating a modern and industrial aesthetic. Recommended for use in offices, hospitality settings, healthcare facilities, and residential spaces.", "dominant_color_hex": "#4A4A4A", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 6, "mfr_sku": "EW15019.615", "dw_sku": "DWTH-830049", "pattern_name": "Fallingwater", "color_name": "Teal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 336.0, "price_trade": 168.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-c41yjk-c278r9/EW15019_615.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.751192+00:00", "created_at": "2026-02-24T20:09:11.935944+00:00", "updated_at": "2026-04-01T22:33:17.340362+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#4F737B", "ai_colors": [{"hex": "#4F737B", "name": "Steel Blue", "percentage": 45}, {"hex": "#93A3A8", "name": "Gray", "percentage": 30}, {"hex": "#6D8A91", "name": "Slate Gray", "percentage": 15}, {"hex": "#36545B", "name": "Dark Slate Gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Slate Gray", "Dark Slate Gray", "Contemporary", "Abstract", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured design with vertical brushstroke-like patterns. The color palette is a blend of steel blue and gray tones, creating a calming and sophisticated mood. It is suitable for various interior spaces, adding depth and visual interest to walls.", "dominant_color_hex": "#4F737B", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 5, "mfr_sku": "EW15018.225", "dw_sku": "DWTH-830043", "pattern_name": "Cubist", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 330.0, "price_trade": 165.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-aitcg0-3eripa/EW15018_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.523674+00:00", "created_at": "2026-02-24T20:09:11.935396+00:00", "updated_at": "2026-04-01T22:05:24.311429+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E5DDCB", "ai_colors": [{"hex": "#E5DDCB", "name": "Beige", "percentage": 55}, {"hex": "#C2B6A2", "name": "Tan", "percentage": 45}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Tan", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract geometric pattern with overlapping squares and rectangles in varying shades of beige and tan. The design evokes a modern and artistic mood, suitable for creating a sophisticated and visually interesting space. Recommended for use in living rooms, bedrooms, or office spaces seeking a contemporary touch.", "dominant_color_hex": "#E5DDCB", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 3, "mfr_sku": "EW15018.615", "dw_sku": "DWTH-830044", "pattern_name": "Cubist", "color_name": "Teal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 330.0, "price_trade": 165.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-dp0v3s-2jvfs3/EW15018_615.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.522173+00:00", "created_at": "2026-02-24T20:09:11.933911+00:00", "updated_at": "2026-04-01T22:33:11.134886+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#467887", "ai_colors": [{"hex": "#467887", "name": "Steel Blue", "percentage": 45}, {"hex": "#34545E", "name": "Dark Teal", "percentage": 30}, {"hex": "#6A929E", "name": "Grayish Blue", "percentage": 15}, {"hex": "#B2915A", "name": "Gold", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Dark Teal", "Blue", "Grayish Blue", "Gold", "Yellow", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract geometric pattern with overlapping squares and rectangles in shades of blue and teal. The design evokes a modern and artistic mood, perfect for adding a touch of sophistication to any space. Recommended for use in living rooms, bedrooms, or offices seeking a contemporary aesthetic.", "dominant_color_hex": "#467887", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 22, "mfr_sku": "EW15010.338", "dw_sku": "DWTH-830026", "pattern_name": "Solstice", "color_name": "Sienna", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "21 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 176.0, "price_trade": 88.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-e0pk60-f1t6hy/EW15010_338.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.007119+00:00", "created_at": "2026-02-24T20:09:11.946437+00:00", "updated_at": "2026-04-01T22:06:11.299137+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F3E6", "ai_colors": [{"hex": "#F5F3E6", "name": "Off-white", "percentage": 55}, {"hex": "#F29132", "name": "Orange", "percentage": 25}, {"hex": "#BDBDBD", "name": "Gray", "percentage": 15}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 5}], "ai_styles": ["Mid-century Modern"], "ai_patterns": ["Geometric"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Orange", "Gray", "Light Gray", "Mid-century Modern", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of orange diamonds connected by gray, textured lines. The mid-century modern style creates a retro yet sophisticated mood. It is suitable for adding a pop of color and visual interest to any residential or commercial space.", "dominant_color_hex": "#F5F3E6", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 58, "mfr_sku": "EW15020.928", "dw_sku": "DWTH-830058", "pattern_name": "Moro", "color_name": "Pebble", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 262.0, "price_trade": 131.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-3z6ktc-66tfk5/EW15020_928.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.460942+00:00", "created_at": "2026-02-24T20:09:11.9652+00:00", "updated_at": "2026-04-01T22:08:23.95883+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#C8BDAE", "ai_colors": [{"hex": "#C8BDAE", "name": "Taupe", "percentage": 45}, {"hex": "#8E8E8E", "name": "Gray", "percentage": 30}, {"hex": "#E5E1D5", "name": "Beige", "percentage": 15}, {"hex": "#D3C1A7", "name": "Tan", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Geometric"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Gray", "Beige", "Tan", "Contemporary", "Minimalist", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of nested rectangles in neutral tones. The design evokes a sense of modern simplicity and understated elegance. Ideal for creating a sophisticated and calming atmosphere in any interior space.", "dominant_color_hex": "#C8BDAE", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 176, "mfr_sku": "EW15013.106", "dw_sku": "DWTH-830034", "pattern_name": "Patina", "color_name": "Marble", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-2q8z0o-fenost/EW15013_106.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.710567+00:00", "created_at": "2026-02-24T20:09:13.638383+00:00", "updated_at": "2026-04-01T22:10:25.016995+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2E7D1", "ai_colors": [{"hex": "#F2E7D1", "name": "Pale Beige", "percentage": 60}, {"hex": "#E3D9C3", "name": "Light Beige", "percentage": 30}, {"hex": "#F8F5EC", "name": "Off White", "percentage": 10}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured"], "ai_background_color": "Pale Beige", "ai_tags": ["Pale Beige", "Light Beige", "Off White", "White", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle textured pattern in pale beige tones. Its classic and understated style lends a sense of warmth and sophistication. Ideal for creating a serene and inviting atmosphere in residential spaces.", "dominant_color_hex": "#F2E7D1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 87, "mfr_sku": "EW15013.680", "dw_sku": "DWTH-830037", "pattern_name": "Patina", "color_name": "Indigo", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 69.9, "price_trade": 34.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/as/r587fk3q8sjrnn7crqczv4xs/EW15013_680.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.715446+00:00", "created_at": "2026-02-24T20:09:11.980084+00:00", "updated_at": "2026-04-01T22:10:08.786564+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#878999", "ai_colors": [{"hex": "#878999", "name": "Gray", "percentage": 45}, {"hex": "#B0B3B8", "name": "Light Gray", "percentage": 30}, {"hex": "#F0F1F2", "name": "Off-white", "percentage": 15}, {"hex": "#B1B09E", "name": "Taupe", "percentage": 10}], "ai_styles": ["Contemporary", "Textured"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Gray", "ai_tags": ["Gray", "Light Gray", "Off-white", "Taupe", "Brown", "Contemporary", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured pattern in a palette of grays and off-whites. The contemporary style and subtle design create a calming and sophisticated mood. Recommended for use in residential or commercial spaces seeking a modern and understated aesthetic.", "dominant_color_hex": "#878999", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 27, "mfr_sku": "EW15024.850", "dw_sku": "DWTH-830072", "pattern_name": "Renzo", "color_name": "Bronze", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-9bpy4w-9xks75/EW15024_850.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.214206+00:00", "created_at": "2026-02-24T20:09:11.948673+00:00", "updated_at": "2026-04-01T22:34:11.818872+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#B2A794", "ai_colors": [{"hex": "#B2A794", "name": "Taupe", "percentage": 45}, {"hex": "#594F3D", "name": "Dark Brown", "percentage": 30}, {"hex": "#8C8577", "name": "Gray", "percentage": 15}, {"hex": "#D1C7B5", "name": "Beige", "percentage": 10}], "ai_styles": ["Contemporary", "Traditional"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Dark Brown", "Gray", "Beige", "Contemporary", "Traditional", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured pattern in shades of taupe, brown, and gray. The design evokes a sense of understated elegance and sophistication. Ideal for creating a warm and inviting atmosphere in residential or commercial spaces.", "dominant_color_hex": "#B2A794", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 9, "mfr_sku": "EW15018.705", "dw_sku": "DWTH-830046", "pattern_name": "Cubist", "color_name": "Mineral", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 330.0, "price_trade": 165.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-fqsypc-b8mkh7/EW15018_705.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.753654+00:00", "created_at": "2026-02-24T20:09:11.938025+00:00", "updated_at": "2026-04-01T22:05:31.897125+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D3D1C9", "ai_colors": [{"hex": "#D3D1C9", "name": "Pale Grey", "percentage": 45}, {"hex": "#A3A199", "name": "Grey", "percentage": 30}, {"hex": "#C1BFB7", "name": "Light Grey", "percentage": 15}, {"hex": "#E5E3DB", "name": "Off White", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Pale Grey", "ai_tags": ["Pale Grey", "Grey", "Light Grey", "Off White", "White", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract geometric pattern with overlapping squares and rectangles. The neutral color palette creates a calming and sophisticated mood. Recommended for use in modern living rooms, bedrooms, or office spaces.", "dominant_color_hex": "#D3D1C9", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 66, "mfr_sku": "EW15007.125", "dw_sku": "DWTH-830021", "pattern_name": "Frosted Bark", "color_name": "Champagne", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 63.9, "price_trade": 31.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-9d52ew-alsi8p/EW15007_125.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.469744+00:00", "created_at": "2026-02-24T20:09:11.969318+00:00", "updated_at": "2026-04-01T22:08:59.064866+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2F0E3", "ai_colors": [{"hex": "#F2F0E3", "name": "Pale Beige", "percentage": 55}, {"hex": "#A09B8A", "name": "Taupe", "percentage": 30}, {"hex": "#D1D0C5", "name": "Light Gray", "percentage": 10}, {"hex": "#736F62", "name": "Dark Taupe", "percentage": 5}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Stripe"], "ai_background_color": "Pale Beige", "ai_tags": ["Pale Beige", "Taupe", "Brown", "Light Gray", "Dark Taupe", "Contemporary", "Textured", "Stripe", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle vertical stripe pattern with a textured effect. The neutral color palette and understated design create a calming and sophisticated mood. It is suitable for a variety of spaces, including living rooms, bedrooms, and offices.", "dominant_color_hex": "#F2F0E3", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 42, "mfr_sku": "EW15006.125", "dw_sku": "DWTH-830019", "pattern_name": "Raindrops", "color_name": "Champagne", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "14 in", "repeat_h": "10 in", "material": "Non Woven - 100%", "price_retail": 41.9, "price_trade": 20.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-czjurc-5mg3od/EW15006_125.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.225304+00:00", "created_at": "2026-02-24T20:09:11.956722+00:00", "updated_at": "2026-04-01T22:07:14.062738+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#FFFDD0", "ai_colors": [{"hex": "#FFFDD0", "name": "Cream", "percentage": 55}, {"hex": "#E0C898", "name": "Beige", "percentage": 45}], "ai_styles": ["Traditional"], "ai_patterns": ["Abstract"], "ai_background_color": "Cream", "ai_tags": ["Cream", "White", "Beige", "Traditional", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features delicate, beaded strands in a flowing, abstract pattern. The neutral color palette evokes a sense of understated elegance and timelessness. Ideal for creating a serene and sophisticated atmosphere in bedrooms, living rooms, or dining areas.", "dominant_color_hex": "#FFFDD0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 54, "mfr_sku": "EW15020.705", "dw_sku": "DWTH-830056", "pattern_name": "Moro", "color_name": "Mineral", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 262.0, "price_trade": 131.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-8van3k-de6wbj/EW15020_705.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.458892+00:00", "created_at": "2026-02-24T20:09:11.962976+00:00", "updated_at": "2026-04-01T22:08:03.904165+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2F0E7", "ai_colors": [{"hex": "#F2F0E7", "name": "Pale Beige", "percentage": 45}, {"hex": "#C4CBB3", "name": "Light Gray-green", "percentage": 30}, {"hex": "#D0D8D5", "name": "Light Blue-gray", "percentage": 15}, {"hex": "#E0DED1", "name": "Gray-beige", "percentage": 10}], "ai_styles": ["Mid-century Modern"], "ai_patterns": ["Geometric"], "ai_background_color": "Pale Beige", "ai_tags": ["Pale Beige", "Light Gray-green", "Light Blue-gray", "Gray-beige", "Mid-century Modern", "Geometric", "Paper", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of nested rectangles in muted, earthy tones. The design evokes a Mid-Century Modern aesthetic with its clean lines and simple shapes. It is recommended for residential use in living rooms, bedrooms, or hallways to add a touch of retro sophistication.", "dominant_color_hex": "#F2F0E7", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 38, "mfr_sku": "EW15022.680", "dw_sku": "DWTH-830060", "pattern_name": "Ventris", "color_name": "Indigo", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-7ksr2g-f1jw0a/EW15022_680.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.222007+00:00", "created_at": "2026-02-24T20:09:11.954183+00:00", "updated_at": "2026-04-01T22:06:59.642056+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#99A2A5", "ai_colors": [{"hex": "#99A2A5", "name": "Gray", "percentage": 55}, {"hex": "#5F8299", "name": "Steel Blue", "percentage": 45}], "ai_styles": ["Contemporary"], "ai_patterns": ["Stripe", "Abstract"], "ai_background_color": "Gray", "ai_tags": ["Gray", "Steel Blue", "Contemporary", "Stripe", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract stripe pattern in steel blue against a gray background. The contemporary style creates a calming and sophisticated mood. Recommended for residential use in bedrooms, living rooms, or hallways.", "dominant_color_hex": "#99A2A5", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 36, "mfr_sku": "EW15030.106", "dw_sku": "DWTH-830093", "pattern_name": "Stelvio", "color_name": "Marble", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/j545j7b7bj8ct4vq6h973r9/EW15030_106.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.221178+00:00", "created_at": "2026-02-24T20:09:11.953269+00:00", "updated_at": "2026-04-01T22:06:52.594719+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F7F5EF", "ai_colors": [{"hex": "#F7F5EF", "name": "Off-white", "percentage": 55}, {"hex": "#E0D5B7", "name": "Beige", "percentage": 45}], "ai_styles": ["Contemporary"], "ai_patterns": ["Geometric"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Beige", "Contemporary", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of rounded zig-zag lines in a soft beige hue against an off-white background. The contemporary style creates a calming and sophisticated mood. It is recommended for residential use in living rooms, bedrooms, or hallways.", "dominant_color_hex": "#F7F5EF", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 34, "mfr_sku": "EW15027.106", "dw_sku": "DWTH-830081", "pattern_name": "Zanzibar", "color_name": "Marble", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "31 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/mccwtfg6v6ts99pbkbbkr5t/EW15027_106.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.21993+00:00", "created_at": "2026-02-24T20:09:11.952233+00:00", "updated_at": "2026-04-01T22:06:42.605217+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Pale Beige", "percentage": 55}, {"hex": "#D3C7A9", "name": "Beige", "percentage": 45}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract"], "ai_background_color": "Pale Beige", "ai_tags": ["Pale Beige", "Beige", "Contemporary", "Abstract", "Non-woven"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features an abstract geometric pattern of irregular rectangles in a soft beige palette. The minimalist design evokes a sense of calm and understated elegance. Ideal for creating a serene and modern atmosphere in any interior space.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 16, "mfr_sku": "EW15032.640", "dw_sku": "DWTH-830105", "pattern_name": "Cordoba", "color_name": "Denim", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/rpm7vb9sckxrhng2hfhw79s/EW15032_640.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.004586+00:00", "created_at": "2026-02-24T20:09:11.943517+00:00", "updated_at": "2026-04-01T22:05:49.216403+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Beige", "percentage": 55}, {"hex": "#8CAACB", "name": "Light Blue", "percentage": 30}, {"hex": "#34547A", "name": "Navy Blue", "percentage": 15}], "ai_styles": ["Coastal", "Abstract"], "ai_patterns": ["Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Blue", "Navy Blue", "Blue", "Coastal", "Abstract", "Non-woven"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of vertical brushstrokes in varying shades of blue against a beige background. The design evokes a relaxed, coastal style with a touch of modern flair. Ideal for adding a subtle yet stylish texture to living rooms, bedrooms, or any space seeking a calming ambiance.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 15, "mfr_sku": "EW15019.225", "dw_sku": "DWTH-830048", "pattern_name": "Fallingwater", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 336.0, "price_trade": 168.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-1ufcqg-dzewmp/EW15019_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.003497+00:00", "created_at": "2026-02-24T20:09:11.94294+00:00", "updated_at": "2026-04-01T22:05:42.142149+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F2E7D6", "ai_colors": [{"hex": "#F2E7D6", "name": "Beige", "percentage": 45}, {"hex": "#E5D9C5", "name": "Light Beige", "percentage": 30}, {"hex": "#D7C9B4", "name": "Tan", "percentage": 15}, {"hex": "#C9BAA1", "name": "Pale Brown", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Tan", "Pale Brown", "Contemporary", "Minimalist", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle abstract pattern with a textured effect. The neutral color palette creates a calming and sophisticated mood. It is suitable for a variety of residential and commercial applications.", "dominant_color_hex": "#F2E7D6", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 2, "mfr_sku": "EW15018.680", "dw_sku": "DWTH-830045", "pattern_name": "Cubist", "color_name": "Indigo", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 330.0, "price_trade": 165.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-7dss2w-3nbmmv/EW15018_680.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.52126+00:00", "created_at": "2026-02-24T20:09:11.932992+00:00", "updated_at": "2026-04-01T22:05:16.055727+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#466375", "ai_colors": [{"hex": "#466375", "name": "Steel Blue", "percentage": 45}, {"hex": "#30414D", "name": "Charcoal Gray", "percentage": 30}, {"hex": "#7291A3", "name": "Light Steel Blue", "percentage": 15}, {"hex": "#B1945D", "name": "Gold", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Charcoal Gray", "Light Steel Blue", "Gold", "Yellow", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract geometric pattern with overlapping squares and rectangles in shades of blue and gray, accented by subtle gold details. The design evokes a modern and artistic mood, suitable for creating a sophisticated and contemporary space. Recommended for use in living rooms, bedrooms, or office spaces seeking a touch of understated elegance.", "dominant_color_hex": "#466375", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 186, "mfr_sku": "EW15012.850", "dw_sku": "DWTH-830031", "pattern_name": "Glimmer", "color_name": "Bronze", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 59.9, "price_trade": 29.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-2vi2w0-4lhp1m/EW15012_850.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.719237+00:00", "created_at": "2026-02-24T20:09:13.643724+00:00", "updated_at": "2026-04-01T22:36:20.522166+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E3D3B3", "ai_colors": [{"hex": "#E3D3B3", "name": "Beige", "percentage": 60}, {"hex": "#F2EDE3", "name": "Light Beige", "percentage": 40}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured", "Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Traditional", "Textured", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle geometric pattern with a textured effect, creating a sophisticated and understated look. The neutral beige tones evoke a sense of calm and timelessness, making it suitable for various interior styles. Recommended for living rooms, bedrooms, or any space where a touch of refined elegance is desired.", "dominant_color_hex": "#E3D3B3", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 86, "mfr_sku": "EW15027.225", "dw_sku": "DWTH-830082", "pattern_name": "Zanzibar", "color_name": "Parchment", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "31 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/tpvpfctw92983hcwtjjm4n7/EW15027_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.713817+00:00", "created_at": "2026-02-24T20:09:11.979586+00:00", "updated_at": "2026-04-01T22:10:04.571178+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#BDB199", "ai_colors": [{"hex": "#BDB199", "name": "Taupe", "percentage": 55}, {"hex": "#F2E7D6", "name": "Beige", "percentage": 45}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Taupe", "ai_tags": ["Taupe", "Brown", "Beige", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a modern abstract pattern of geometric shapes in beige against a taupe background. The neutral color palette and simple design create a calming and sophisticated mood. It is suitable for various applications, including residential and commercial spaces.", "dominant_color_hex": "#BDB199", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 79, "mfr_sku": "EW15011.140", "dw_sku": "DWTH-830028", "pattern_name": "Stratum", "color_name": "Stone", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Paper - 100%", "price_retail": 49.9, "price_trade": 24.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-fcu1rk-bhz247/EW15011_140.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.487177+00:00", "created_at": "2026-02-24T20:09:11.975566+00:00", "updated_at": "2026-04-01T22:35:40.385418+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#D2B48C", "name": "Tan", "percentage": 30}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 15}, {"hex": "#808080", "name": "Gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Tan", "Light Gray", "Gray", "Contemporary", "Textured", "Abstract", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured pattern with horizontal striations. Its neutral color palette and subtle design create a calming and sophisticated mood. Recommended for use in living rooms, bedrooms, or offices seeking a modern and understated aesthetic.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 71, "mfr_sku": "EW15028.773", "dw_sku": "DWTH-830089", "pattern_name": "Lombok", "color_name": "Eucalyptus", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "22 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/fw686h55r6jnzt8bnj6q59j/EW15028_773.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.473617+00:00", "created_at": "2026-02-24T20:09:11.971748+00:00", "updated_at": "2026-04-01T22:09:15.503593+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#98A99B", "ai_colors": [{"hex": "#98A99B", "name": "Seafoam Green", "percentage": 65}, {"hex": "#F0F3E6", "name": "Off-white", "percentage": 35}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "Seafoam Green", "ai_tags": ["Seafoam Green", "Off-white", "Contemporary", "Abstract", "Geometric", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of layered squares and spirals in off-white against a seafoam green background. The design offers a contemporary and abstract aesthetic, creating a visually interesting texture. Ideal for adding a modern touch to living rooms, bedrooms, or office spaces.", "dominant_color_hex": "#98A99B", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 70, "mfr_sku": "EW15011.104", "dw_sku": "DWTH-830027", "pattern_name": "Stratum", "color_name": "Ivory", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Paper - 100%", "price_retail": 51.9, "price_trade": 25.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-d63pi0-eqgjng/EW15011_104.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.472582+00:00", "created_at": "2026-02-24T20:09:11.971312+00:00", "updated_at": "2026-04-01T22:35:14.189852+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "White", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F3E8", "ai_colors": [{"hex": "#F5F3E8", "name": "Off-white", "percentage": 55}, {"hex": "#E0D3B8", "name": "Beige", "percentage": 30}, {"hex": "#D3C5A3", "name": "Light Beige", "percentage": 10}, {"hex": "#C7B794", "name": "Sand", "percentage": 5}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Beige", "Light Beige", "Sand", "Contemporary", "Minimalist", "Abstract", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of horizontal brushstrokes in varying shades of beige and off-white. The design evokes a sense of subtle texture and understated elegance. Recommended for creating a calming and sophisticated atmosphere in residential or commercial spaces.", "dominant_color_hex": "#F5F3E8", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 49, "mfr_sku": "EW15032.773", "dw_sku": "DWTH-830107", "pattern_name": "Cordoba", "color_name": "Eucalyptus", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/wcngtp9tn9pxtpqxgzhbvmg/EW15032_773.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.456052+00:00", "created_at": "2026-02-24T20:09:11.960834+00:00", "updated_at": "2026-04-01T22:07:39.869696+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#A8B19E", "ai_colors": [{"hex": "#A8B19E", "name": "Sage Green", "percentage": 55}, {"hex": "#E5E1D0", "name": "Ecru", "percentage": 30}, {"hex": "#918372", "name": "Taupe", "percentage": 15}], "ai_styles": ["Contemporary", "Scandinavian"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Sage Green", "ai_tags": ["Sage Green", "Green", "Ecru", "Taupe", "Brown", "Contemporary", "Scandinavian", "Abstract", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of vertical brushstrokes in ecru and taupe against a sage green background. The design evokes a sense of understated elegance and modern simplicity. Ideal for creating a calming and sophisticated atmosphere in residential or commercial spaces.", "dominant_color_hex": "#A8B19E", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 29, "mfr_sku": "EW15025.104", "dw_sku": "DWTH-830074", "pattern_name": "Painted Stripe", "color_name": "Ivory", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-v76ew-d5jdzk/EW15025_104.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.216547+00:00", "created_at": "2026-02-24T20:09:11.949722+00:00", "updated_at": "2026-04-01T22:34:18.289091+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "White", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 50}, {"hex": "#F0E68C", "name": "Light Beige", "percentage": 25}, {"hex": "#EEE8AA", "name": "Pale Gold", "percentage": 15}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 10}], "ai_styles": ["Traditional"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Pale Gold", "Yellow", "Light Gray", "Traditional", "Stripe", "Textured", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle stripe pattern with a textured effect. Its neutral color palette evokes a sense of calm and understated elegance. Ideal for creating a serene and inviting atmosphere in any residential space.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 188, "mfr_sku": "EW15004.790", "dw_sku": "DWTH-830012", "pattern_name": "Afetta Stripe", "color_name": "Celery", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "8 in", "repeat_h": null, "material": "Paper - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-c53bg8-823mpt/EW15004_790.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.963186+00:00", "created_at": "2026-02-24T20:09:13.858071+00:00", "updated_at": "2026-04-01T22:10:39.279684+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#EEE0A8", "ai_colors": [{"hex": "#EEE0A8", "name": "Pale Yellow", "percentage": 65}, {"hex": "#A3997A", "name": "Taupe", "percentage": 35}], "ai_styles": ["Traditional"], "ai_patterns": ["Stripe"], "ai_background_color": "Pale Yellow", "ai_tags": ["Pale Yellow", "Taupe", "Brown", "Traditional", "Stripe", "Paper", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a classic stripe pattern in pale yellow and taupe. The design evokes a sense of understated elegance and traditional style. It is well-suited for residential spaces, adding a touch of sophistication to living rooms, bedrooms, or hallways.", "dominant_color_hex": "#EEE0A8", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 132, "mfr_sku": "EW15002.960", "dw_sku": "DWTH-830011", "pattern_name": "Muse", "color_name": "Black/Gold", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "10 in", "repeat_h": "20 in", "material": "Non Woven - 100%", "price_retail": 43.9, "price_trade": 21.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-f45gog-alxn2o/EW15002_960.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.2243+00:00", "created_at": "2026-02-24T20:09:13.111823+00:00", "updated_at": "2026-04-01T22:10:21.433053+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#C19A6B", "ai_colors": [{"hex": "#C19A6B", "name": "Tan", "percentage": 65}, {"hex": "#000000", "name": "Black", "percentage": 35}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured"], "ai_background_color": "Tan", "ai_tags": ["Tan", "Black", "Traditional", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a dense, textured pattern of black specks against a tan background. The overall effect is subtle and sophisticated, lending a touch of understated elegance. Ideal for creating a warm and inviting atmosphere in any room.", "dominant_color_hex": "#C19A6B", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 59, "mfr_sku": "EW15032.106", "dw_sku": "DWTH-830101", "pattern_name": "Cordoba", "color_name": "Marble", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/2svqjk2bqvxwrpb43qwb8jt/EW15032_106.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.461461+00:00", "created_at": "2026-02-24T20:09:11.965761+00:00", "updated_at": "2026-04-01T22:08:30.280029+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F0E1", "ai_colors": [{"hex": "#F5F0E1", "name": "Beige", "percentage": 50}, {"hex": "#B8A98F", "name": "Taupe", "percentage": 25}, {"hex": "#D3CBB4", "name": "Sand", "percentage": 15}, {"hex": "#9E917A", "name": "Khaki", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Taupe", "Brown", "Sand", "Khaki", "Contemporary", "Abstract", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a modern abstract pattern of vertical brushstrokes in varying shades of beige and taupe. The textured effect adds depth and visual interest, creating a sophisticated yet understated look. Ideal for residential spaces seeking a touch of contemporary elegance.", "dominant_color_hex": "#F5F0E1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 47, "mfr_sku": "EW15032.425", "dw_sku": "DWTH-830104", "pattern_name": "Cordoba", "color_name": "Dusk", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 298.0, "price_trade": 149.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/9js8tx2zmzts2fv9tb8n3338/EW15032_425.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.45261+00:00", "created_at": "2026-02-24T20:09:11.959697+00:00", "updated_at": "2026-04-01T22:34:40.749191+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2B48C", "ai_colors": [{"hex": "#D2B48C", "name": "Beige", "percentage": 45}, {"hex": "#F5F5DC", "name": "Cream", "percentage": 30}, {"hex": "#8B8682", "name": "Taupe", "percentage": 15}, {"hex": "#E5D7B2", "name": "Light Beige", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Cream", "White", "Taupe", "Brown", "Light Beige", "Contemporary", "Abstract", "Non-woven"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of vertical brushstrokes in cream and taupe against a beige background. The design evokes a modern and artistic style. Recommended for adding a touch of understated elegance to any interior space.", "dominant_color_hex": "#D2B48C", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 30, "mfr_sku": "EW15022.985", "dw_sku": "DWTH-830063", "pattern_name": "Ventris", "color_name": "Charcoal/Ivory", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q6qr33-akw9z4-7ymgj2/ew15022_985.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.217261+00:00", "created_at": "2026-02-24T20:09:11.950177+00:00", "updated_at": "2026-04-01T22:06:25.787364+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#C2C4C2", "ai_colors": [{"hex": "#C2C4C2", "name": "Gray", "percentage": 55}, {"hex": "#8E908E", "name": "Dark Gray", "percentage": 45}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Textured", "Stripe"], "ai_background_color": "Gray", "ai_tags": ["Gray", "Dark Gray", "Contemporary", "Minimalist", "Textured", "Stripe", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle vertical stripe pattern with a textured effect. Its neutral color palette and minimalist design create a calming and sophisticated atmosphere. Ideal for adding depth and visual interest to any interior space, from residential to commercial settings.", "dominant_color_hex": "#C2C4C2", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 28, "mfr_sku": "EW15024.680", "dw_sku": "DWTH-830071", "pattern_name": "Renzo", "color_name": "Indigo", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-47c3y0-8swpv7/EW15024_680.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.215767+00:00", "created_at": "2026-02-24T20:09:11.949158+00:00", "updated_at": "2026-04-01T22:06:21.929688+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#46707D", "ai_colors": [{"hex": "#46707D", "name": "Teal", "percentage": 45}, {"hex": "#BDB59F", "name": "Taupe", "percentage": 30}, {"hex": "#5D8EA0", "name": "Steel Blue", "percentage": 15}, {"hex": "#37545E", "name": "Dark Teal", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Textured", "Stripe"], "ai_background_color": "Taupe", "ai_tags": ["Teal", "Blue", "Taupe", "Brown", "Steel Blue", "Gray", "Dark Teal", "Contemporary", "Abstract", "Textured", "Stripe", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a textured stripe pattern in shades of teal and taupe. The contemporary style creates a calming and sophisticated mood. Recommended for use in residential or commercial spaces seeking a modern and subtle design.", "dominant_color_hex": "#46707D", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 4, "mfr_sku": "EW15025.680", "dw_sku": "DWTH-830077", "pattern_name": "Painted Stripe", "color_name": "Indigo", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-8pazzc-8cy6jy/EW15025_680.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.522951+00:00", "created_at": "2026-02-24T20:09:11.934708+00:00", "updated_at": "2026-04-01T22:05:20.904133+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#466977", "ai_colors": [{"hex": "#466977", "name": "Steel Blue", "percentage": 45}, {"hex": "#595F63", "name": "Charcoal Gray", "percentage": 30}, {"hex": "#3A525C", "name": "Dark Teal", "percentage": 15}, {"hex": "#B39B5C", "name": "Gold", "percentage": 10}], "ai_styles": ["Contemporary", "Industrial"], "ai_patterns": ["Stripe", "Abstract"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Charcoal Gray", "Dark Teal", "Blue", "Gold", "Yellow", "Contemporary", "Industrial", "Stripe", "Abstract", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle vertical stripe pattern with an abstract, textured effect. The color palette evokes a modern, industrial aesthetic with its blend of blues and grays. Ideal for adding depth and visual interest to contemporary interiors.", "dominant_color_hex": "#466977", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 187, "mfr_sku": "EW15002.130", "dw_sku": "DWTH-830008", "pattern_name": "Muse", "color_name": "Sesame", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 49.9, "price_trade": 24.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-gh3ibk-436way/EW15002_130.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.719883+00:00", "created_at": "2026-02-24T20:09:13.644193+00:00", "updated_at": "2026-04-01T22:10:35.81465+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 45}, {"hex": "#C3B091", "name": "Khaki", "percentage": 30}, {"hex": "#D3D3D3", "name": "Light Gray", "percentage": 15}, {"hex": "#D2B48C", "name": "Tan", "percentage": 10}], "ai_styles": ["Traditional", "Contemporary"], "ai_patterns": ["Textured", "Abstract"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Khaki", "Light Gray", "Tan", "Traditional", "Contemporary", "Textured", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured abstract pattern. The neutral color palette creates a calming and sophisticated mood. Recommended for use in residential and commercial spaces seeking a touch of understated elegance.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 62, "mfr_sku": "EW15000.780", "dw_sku": "DWTH-830001", "pattern_name": "Woodgrain", "color_name": "Silver Birch", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 41.9, "price_trade": 20.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvv-elnhdc-8ajj8h/EW15000_780.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.464067+00:00", "created_at": "2026-02-24T20:09:11.967515+00:00", "updated_at": "2026-04-01T22:08:41.602027+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Faux Wood", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0D8C0", "ai_colors": [{"hex": "#E0D8C0", "name": "Beige", "percentage": 45}, {"hex": "#F5F5DC", "name": "Light Beige", "percentage": 30}, {"hex": "#D2B48C", "name": "Tan", "percentage": 15}, {"hex": "#C2B280", "name": "Sand", "percentage": 10}], "ai_styles": ["Farmhouse", "Scandinavian"], "ai_patterns": ["Wood", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Tan", "Sand", "Farmhouse", "Scandinavian", "Wood", "Textured", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a realistic wood plank design with a subtle textured effect. The neutral color palette and rustic charm evoke a sense of warmth and comfort. Ideal for creating a cozy and inviting atmosphere in living rooms, bedrooms, or studies.", "dominant_color_hex": "#E0D8C0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 48, "mfr_sku": "EW15022.850", "dw_sku": "DWTH-830061", "pattern_name": "Ventris", "color_name": "Charcoal/Bronze", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-7a8oyw-hr0jp/EW15022_850.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.453363+00:00", "created_at": "2026-02-24T20:09:11.960287+00:00", "updated_at": "2026-04-01T22:07:33.050016+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2B48C", "ai_colors": [{"hex": "#D2B48C", "name": "Tan", "percentage": 60}, {"hex": "#4A3F35", "name": "Dark Brown", "percentage": 40}], "ai_styles": ["Contemporary"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Tan", "ai_tags": ["Tan", "Dark Brown", "Contemporary", "Stripe", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a vertical stripe pattern with a textured effect. The design evokes a modern and sophisticated style. It is suitable for adding depth and visual interest to residential and commercial spaces.", "dominant_color_hex": "#D2B48C", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 43, "mfr_sku": "EW15028.225", "dw_sku": "DWTH-830086", "pattern_name": "Lombok", "color_name": "Parchment", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "22 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/899rtsw8wmjk37vrj958bp4v/EW15028_225.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.225904+00:00", "created_at": "2026-02-24T20:09:11.95728+00:00", "updated_at": "2026-04-01T22:07:22.372702+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0D5C0", "ai_colors": [{"hex": "#E0D5C0", "name": "Beige", "percentage": 65}, {"hex": "#F5F3ED", "name": "Off-white", "percentage": 35}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Off-white", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of squares with abstract, swirling and linear designs in off-white against a beige textured background. The contemporary style adds a touch of modern sophistication to any space. Recommended for living rooms, bedrooms, or accent walls.", "dominant_color_hex": "#E0D5C0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 41, "mfr_sku": "EW15001.780", "dw_sku": "DWTH-830004", "pattern_name": "Botanica", "color_name": "Silver Birch", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": "20 in", "material": "Non Woven - 100%", "price_retail": 43.9, "price_trade": 21.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-7jygsg-2vjx1q/EW15001_780.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.22472+00:00", "created_at": "2026-02-24T20:09:11.955905+00:00", "updated_at": "2026-04-01T22:07:10.628242+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F3E6", "ai_colors": [{"hex": "#F5F3E6", "name": "Cream", "percentage": 65}, {"hex": "#B39B77", "name": "Taupe", "percentage": 35}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral", "Botanical"], "ai_background_color": "Cream", "ai_tags": ["Cream", "White", "Taupe", "Brown", "Traditional", "Floral", "Botanical", "Paper", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a delicate floral pattern in a soft taupe hue against a cream background. The traditional style evokes a sense of timeless elegance and sophistication. It is recommended for residential use in living rooms, bedrooms, or dining rooms.", "dominant_color_hex": "#F5F3E6", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 23, "mfr_sku": "EW15001.880", "dw_sku": "DWTH-830005", "pattern_name": "Botanica", "color_name": "Antique Gold", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": "20 in", "material": "Non Woven - 100%", "price_retail": 156.0, "price_trade": 78.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-7sq2o8-f52qan/EW15001_880.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.007475+00:00", "created_at": "2026-02-24T20:09:11.946916+00:00", "updated_at": "2026-04-01T22:06:14.780845+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Yellow/Gold", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#736039", "ai_colors": [{"hex": "#736039", "name": "Umber", "percentage": 70}, {"hex": "#D0D0D0", "name": "Silver", "percentage": 30}], "ai_styles": ["Traditional"], "ai_patterns": ["Floral", "Botanical"], "ai_background_color": "Umber", "ai_tags": ["Umber", "Silver", "Gray", "Traditional", "Floral", "Botanical", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a delicate floral pattern in silver against an umber background. The traditional style evokes a sense of timeless elegance and sophistication. It is suitable for residential and commercial spaces seeking a touch of classic charm.", "dominant_color_hex": "#736039", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 18, "mfr_sku": "EW15002.125", "dw_sku": "DWTH-830007", "pattern_name": "Muse", "color_name": "Champagne", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 75.9, "price_trade": 37.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-bxckq8-2usprg/EW15002_125.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.005575+00:00", "created_at": "2026-02-24T20:09:11.944624+00:00", "updated_at": "2026-04-01T22:05:56.187671+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 60}, {"hex": "#D2B48C", "name": "Tan", "percentage": 40}], "ai_styles": ["Traditional"], "ai_patterns": ["Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Tan", "Traditional", "Textured", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured pattern in neutral beige and tan tones. Its classic design evokes a sense of understated elegance and warmth. Ideal for creating a cozy and inviting atmosphere in living rooms, bedrooms, or hallways.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 60, "mfr_sku": "EW15029.695", "dw_sku": "DWTH-830092", "pattern_name": "Santa Fe", "color_name": "Ink", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/6m5tpf9gn8nkw6q97w87bxnt/EW15029_695.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.461885+00:00", "created_at": "2026-02-24T20:09:11.966394+00:00", "updated_at": "2026-04-01T22:08:37.964424+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#4682B4", "ai_colors": [{"hex": "#4682B4", "name": "Steel Blue", "percentage": 45}, {"hex": "#F5F5DC", "name": "Beige", "percentage": 30}, {"hex": "#808080", "name": "Gray", "percentage": 15}, {"hex": "#ADD8E6", "name": "Light Blue", "percentage": 10}], "ai_styles": ["Contemporary", "Scandinavian"], "ai_patterns": ["Chevron", "Ikat"], "ai_background_color": "Beige", "ai_tags": ["Steel Blue", "Gray", "Beige", "Light Blue", "Contemporary", "Scandinavian", "Chevron", "Ikat", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a bold chevron pattern with an ikat-inspired texture. The blend of steel blue, beige, and gray creates a modern and sophisticated look. Ideal for adding a touch of contemporary style to any residential space.", "dominant_color_hex": "#4682B4", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 57, "mfr_sku": "EW15027.640", "dw_sku": "DWTH-830083", "pattern_name": "Zanzibar", "color_name": "Denim", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "31 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/v3sr578k8f7wj3sb654785js/EW15027_640.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.460229+00:00", "created_at": "2026-02-24T20:09:11.964595+00:00", "updated_at": "2026-04-01T22:08:20.246165+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#6D828E", "ai_colors": [{"hex": "#6D828E", "name": "Steel Blue", "percentage": 55}, {"hex": "#F2EFE4", "name": "Beige", "percentage": 45}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Beige", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a pattern of irregular, rounded rectangles in a soft beige hue against a steel blue background. The design evokes a sense of modern simplicity and understated elegance. Recommended for creating a calming and sophisticated atmosphere in residential or commercial spaces.", "dominant_color_hex": "#6D828E", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 53, "mfr_sku": "EW15029.106", "dw_sku": "DWTH-830090", "pattern_name": "Santa Fe", "color_name": "Marble", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "26 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/czwhr3c5c4w88f7rqg3n7cvr/EW15029_106.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.458424+00:00", "created_at": "2026-02-24T20:09:11.962589+00:00", "updated_at": "2026-04-01T22:08:00.413683+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F3EB", "ai_colors": [{"hex": "#F5F3EB", "name": "Off-white", "percentage": 45}, {"hex": "#C4B8A5", "name": "Taupe", "percentage": 30}, {"hex": "#E0D9C9", "name": "Beige", "percentage": 15}, {"hex": "#A69B8A", "name": "Light Brown", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Chevron", "Geometric", "Textured"], "ai_background_color": "Off-white", "ai_tags": ["Off-white", "Taupe", "Brown", "Beige", "Light Brown", "Contemporary", "Chevron", "Geometric", "Textured", "Grasscloth", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a bold chevron pattern with a textured, grasscloth-like appearance. The neutral color palette lends a contemporary and sophisticated mood. It is suitable for a variety of spaces, from residential interiors to commercial environments.", "dominant_color_hex": "#F5F3EB", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 51, "mfr_sku": "EW15023.926", "dw_sku": "DWTH-830067", "pattern_name": "Hakan", "color_name": "Soft Grey", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 248.0, "price_trade": 124.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-3b0dnk-50bmzf/EW15023_926.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.457368+00:00", "created_at": "2026-02-24T20:09:11.961732+00:00", "updated_at": "2026-04-01T22:07:50.886774+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E0DED5", "ai_colors": [{"hex": "#E0DED5", "name": "Light Gray", "percentage": 60}, {"hex": "#C8C5BC", "name": "Pale Gray", "percentage": 40}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Solid"], "ai_background_color": "Light Gray", "ai_tags": ["Light Gray", "Pale Gray", "Contemporary", "Textured", "Solid", "Vinyl", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, textured solid pattern in light gray. Its contemporary style offers a clean and versatile aesthetic. Recommended for use in residential or commercial spaces seeking a minimalist and sophisticated touch.", "dominant_color_hex": "#E0DED5", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 45, "mfr_sku": "EW15023.225", "dw_sku": "DWTH-830064", "pattern_name": "Hakan", "color_name": "Parchment", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 248.0, "price_trade": 124.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-g850r4-62lhf2/EW15023_225.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.445802+00:00", "created_at": "2026-02-24T20:09:11.958321+00:00", "updated_at": "2026-04-01T22:07:25.935809+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Beige/Neutral", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F5F5DC", "ai_colors": [{"hex": "#F5F5DC", "name": "Beige", "percentage": 60}, {"hex": "#FAF9F6", "name": "Light Beige", "percentage": 40}], "ai_styles": ["Minimalist", "Scandinavian"], "ai_patterns": ["Solid", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Light Beige", "Minimalist", "Scandinavian", "Solid", "Textured", "Vinyl"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle, solid texture in a light beige tone. Its minimalist style evokes a sense of calm and simplicity, making it ideal for creating a serene atmosphere. Recommended for use in residential or commercial spaces seeking a clean and understated aesthetic.", "dominant_color_hex": "#F5F5DC", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 39, "mfr_sku": "EW15024.928", "dw_sku": "DWTH-830073", "pattern_name": "Renzo", "color_name": "Pebble", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "25 in", "repeat_h": "20 in", "material": "Paper - 100%", "price_retail": 199.0, "price_trade": 99.5, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-3llf8w-4qxdb9/EW15024_928.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.22259+00:00", "created_at": "2026-02-24T20:09:11.95462+00:00", "updated_at": "2026-04-01T22:07:03.354488+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#A69B7F", "ai_colors": [{"hex": "#A69B7F", "name": "Taupe", "percentage": 45}, {"hex": "#8E948F", "name": "Gray", "percentage": 30}, {"hex": "#F2F2F2", "name": "Off-white", "percentage": 15}, {"hex": "#D1D1D1", "name": "Light Gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Stripe", "Abstract"], "ai_background_color": "Off-white", "ai_tags": ["Taupe", "Brown", "Gray", "Off-white", "Light Gray", "Contemporary", "Textured", "Stripe", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a textured stripe pattern in taupe and gray tones. The contemporary style creates a calming and sophisticated mood. It is suitable for residential and commercial spaces, adding a touch of modern elegance.", "dominant_color_hex": "#A69B7F", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 21, "mfr_sku": "EW15025.615", "dw_sku": "DWTH-830076", "pattern_name": "Painted Stripe", "color_name": "Teal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Paper - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qw0-7nvl1c-c7cxvt/ew15025_615_2_1.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.00674+00:00", "created_at": "2026-02-24T20:09:11.946003+00:00", "updated_at": "2026-04-01T22:33:49.392377+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#3F6858", "ai_colors": [{"hex": "#3F6858", "name": "Sea Green", "percentage": 45}, {"hex": "#59644D", "name": "Olive Drab", "percentage": 30}, {"hex": "#A8A8A8", "name": "Gray", "percentage": 15}, {"hex": "#353B2F", "name": "Dark Olive Green", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Stripe", "Textured"], "ai_background_color": "Sea Green", "ai_tags": ["Sea Green", "Olive Drab", "Green", "Gray", "Dark Olive Green", "Contemporary", "Minimalist", "Stripe", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a vertical stripe pattern with a textured effect, creating a subtle yet sophisticated visual interest. The muted color palette evokes a sense of calm and tranquility, making it ideal for creating a serene atmosphere. Recommended for use in living rooms, bedrooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#3F6858", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 85, "mfr_sku": "EW15028.640", "dw_sku": "DWTH-830088", "pattern_name": "Lombok", "color_name": "Denim", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "22 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/3hc6v89fs9vqjkvrn64h4g6/EW15028_640.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.712902+00:00", "created_at": "2026-02-24T20:09:11.979072+00:00", "updated_at": "2026-04-01T22:09:57.7189+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Blue", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#46737E", "ai_colors": [{"hex": "#46737E", "name": "Steel Blue", "percentage": 65}, {"hex": "#E0DDC7", "name": "Beige", "percentage": 35}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "Steel Blue", "ai_tags": ["Steel Blue", "Gray", "Beige", "Contemporary", "Abstract", "Geometric", "Non-woven"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric pattern of layered squares and spirals in beige against a steel blue background. The design evokes a modern and abstract style, creating a visually interesting texture. Recommended for use in residential or commercial spaces seeking a contemporary and artistic touch.", "dominant_color_hex": "#46737E", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 81, "mfr_sku": "EW15000.935", "dw_sku": "DWTH-830003", "pattern_name": "Woodgrain", "color_name": "Pewter", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 43.9, "price_trade": 21.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvw-4con9s-cinhsh/EW15000_935.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.488644+00:00", "created_at": "2026-02-24T20:09:11.976989+00:00", "updated_at": "2026-04-01T22:35:47.040834+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Faux Wood", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D2B48C", "ai_colors": [{"hex": "#D2B48C", "name": "Tan", "percentage": 45}, {"hex": "#4A3F35", "name": "Dark Brown", "percentage": 30}, {"hex": "#8B4513", "name": "Brown", "percentage": 15}, {"hex": "#A98D68", "name": "Dark Tan", "percentage": 10}], "ai_styles": ["Farmhouse", "Traditional"], "ai_patterns": ["Wood", "Textured"], "ai_background_color": "Tan", "ai_tags": ["Tan", "Dark Brown", "Brown", "Dark Tan", "Farmhouse", "Traditional", "Wood", "Textured", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a realistic wood grain pattern, adding a touch of rustic charm to any space. The design evokes a sense of warmth and comfort, perfect for creating a cozy atmosphere. Ideal for living rooms, bedrooms, or accent walls, this wallcovering brings the beauty of nature indoors.", "dominant_color_hex": "#D2B48C", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 75, "mfr_sku": "EW15008.140", "dw_sku": "DWTH-830023", "pattern_name": "Alchemy", "color_name": "Stone", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Paper - 100%", "price_retail": 49.9, "price_trade": 24.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-50h7ow-9zob3/EW15008_140.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.477936+00:00", "created_at": "2026-02-24T20:09:11.973647+00:00", "updated_at": "2026-04-01T22:35:27.457982+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#E5D8C1", "ai_colors": [{"hex": "#E5D8C1", "name": "Beige", "percentage": 45}, {"hex": "#D1C0A4", "name": "Tan", "percentage": 30}, {"hex": "#B5A38A", "name": "Taupe", "percentage": 15}, {"hex": "#DCDDD5", "name": "Light Gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Tan", "Taupe", "Brown", "Light Gray", "Contemporary", "Abstract", "Textured", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern with a textured effect, creating a modern and sophisticated look. The neutral color palette adds a touch of elegance and versatility to any space. Recommended for use in living rooms, bedrooms, or offices seeking a contemporary aesthetic.", "dominant_color_hex": "#E5D8C1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 64, "mfr_sku": "EW15031.323", "dw_sku": "DWTH-830099", "pattern_name": "Horizon", "color_name": "Sunset", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "27\"", "length": null, "repeat_v": "27 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 278.0, "price_trade": 139.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/jbws6tjtrm3hphnrh2cgwr/EW15031_323.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.466233+00:00", "created_at": "2026-02-24T20:09:11.968404+00:00", "updated_at": "2026-04-01T22:08:55.374444+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#698B8F", "ai_colors": [{"hex": "#698B8F", "name": "Steel Blue", "percentage": 45}, {"hex": "#C19A6B", "name": "Tan", "percentage": 30}, {"hex": "#A38B74", "name": "Taupe", "percentage": 15}, {"hex": "#D5CDB4", "name": "Beige", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Stripe", "Abstract"], "ai_background_color": "Off-white", "ai_tags": ["Steel Blue", "Gray", "Tan", "Taupe", "Brown", "Beige", "Contemporary", "Stripe", "Abstract", "Off-white", "Vinyl", "Animal", "Insects"], "width_inches": 27.0, "on_shopify": false, "repeat_classification": "pattern", "ai_description": "This wallcovering features a horizontal stripe pattern with an abstract, watercolor-like effect. The color palette is calming and sophisticated, creating a serene and modern atmosphere. Ideal for bedrooms, living rooms, or any space where a touch of understated elegance is desired.", "dominant_color_hex": "#698B8F", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 44, "mfr_sku": "EW15006.725", "dw_sku": "DWTH-830020", "pattern_name": "Raindrops", "color_name": "Aqua", "collection": "Threads Spring II", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "14 in", "repeat_h": "10 in", "material": "Non Woven - 100%", "price_retail": 170.0, "price_trade": 85.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-96m6e8-d0xlok/EW15006_725.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.226435+00:00", "created_at": "2026-02-24T20:09:11.957776+00:00", "updated_at": "2026-04-01T22:34:31.026841+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#BDBDA0", "ai_colors": [{"hex": "#BDBDA0", "name": "Pale Olive", "percentage": 65}, {"hex": "#F5F3E5", "name": "Off-white", "percentage": 35}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract"], "ai_background_color": "Pale Olive", "ai_tags": ["Pale Olive", "Green", "Off-white", "Contemporary", "Abstract", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a delicate pattern of wavy lines adorned with small, evenly spaced beads. The design evokes a sense of understated elegance and modern simplicity. Ideal for creating a serene and sophisticated atmosphere in living rooms, bedrooms, or hallways.", "dominant_color_hex": "#BDBDA0", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 25, "mfr_sku": "EW15030.425", "dw_sku": "DWTH-830096", "pattern_name": "Stelvio", "color_name": "Dusk", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/6h24ts8v9wm8ks9jn2zptvm/EW15030_425.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.00877+00:00", "created_at": "2026-02-24T20:09:11.947791+00:00", "updated_at": "2026-04-01T22:33:58.686875+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#795548", "ai_colors": [{"hex": "#795548", "name": "Umber", "percentage": 65}, {"hex": "#E0C9A6", "name": "Beige", "percentage": 35}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract"], "ai_background_color": "Umber", "ai_tags": ["Umber", "Beige", "Contemporary", "Abstract", "Vinyl"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract geometric pattern of meandering lines. The neutral color palette and simple design create a calming and modern aesthetic. Ideal for adding subtle visual interest to any room, from living spaces to offices.", "dominant_color_hex": "#795548", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 1, "mfr_sku": "EW15018.985", "dw_sku": "DWTH-830047", "pattern_name": "Cubist", "color_name": "Charcoal", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 330.0, "price_trade": 165.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-b90848-gesw9n/EW15018_985.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.518858+00:00", "created_at": "2026-02-24T20:09:11.929798+00:00", "updated_at": "2026-04-01T22:33:04.978729+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Black", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#808080", "ai_colors": [{"hex": "#808080", "name": "Gray", "percentage": 45}, {"hex": "#363636", "name": "Charcoal Gray", "percentage": 30}, {"hex": "#555555", "name": "Dark Gray", "percentage": 15}, {"hex": "#D4A017", "name": "Gold", "percentage": 10}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Geometric", "Abstract"], "ai_background_color": "Gray", "ai_tags": ["Gray", "Charcoal Gray", "Dark Gray", "Gold", "Yellow", "Contemporary", "Abstract", "Geometric", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a geometric abstract pattern with squares and rectangles in shades of gray and charcoal. The design evokes a contemporary and artistic mood. It is suitable for adding a touch of modern sophistication to offices, hospitality spaces, healthcare facilities, and residential interiors.", "dominant_color_hex": "#808080", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 182, "mfr_sku": "EW15009.910", "dw_sku": "DWTH-830025", "pattern_name": "Artisan Stripe", "color_name": "Dove Grey", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "24 in", "repeat_h": null, "material": "Paper - 100%", "price_retail": 39.9, "price_trade": 19.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-95n0yo-bu801l/EW15009_910.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.716259+00:00", "created_at": "2026-02-24T20:09:13.641701+00:00", "updated_at": "2026-04-01T22:10:28.837924+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "Stripe", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#F0E9D6", "ai_colors": [{"hex": "#F0E9D6", "name": "Beige", "percentage": 45}, {"hex": "#F5F3EC", "name": "Off-white", "percentage": 30}, {"hex": "#E5DDC8", "name": "Light Beige", "percentage": 15}, {"hex": "#D9D1BE", "name": "Pale Beige", "percentage": 10}], "ai_styles": ["Contemporary", "Minimalist"], "ai_patterns": ["Abstract", "Stripe"], "ai_background_color": "Beige", "ai_tags": ["Beige", "Off-white", "Light Beige", "Pale Beige", "Contemporary", "Minimalist", "Abstract", "Stripe", "Non-woven", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract stripe pattern in neutral beige and off-white tones. Its minimalist style creates a calming and sophisticated mood. Recommended for residential and commercial spaces seeking a subtle yet modern aesthetic.", "dominant_color_hex": "#F0E9D6", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
+{"id": 82, "mfr_sku": "EW15012.910", "dw_sku": "DWTH-830032", "pattern_name": "Glimmer", "color_name": "Dove Grey", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": null, "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 63.9, "price_trade": 31.95, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvx-e1gi2o-cpwsq8/EW15012_910.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.704778+00:00", "created_at": "2026-02-24T20:09:11.977563+00:00", "updated_at": "2026-04-01T22:09:44.160165+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "Grey", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D3D3D3", "ai_colors": [{"hex": "#D3D3D3", "name": "Light Gray", "percentage": 65}, {"hex": "#FFFFFF", "name": "White", "percentage": 35}], "ai_styles": ["Contemporary"], "ai_patterns": ["Textured", "Geometric"], "ai_background_color": "Light Gray", "ai_tags": ["Light Gray", "White", "Contemporary", "Textured", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a subtle geometric grid pattern with a textured effect. The neutral color palette and understated design create a calming and sophisticated mood. Recommended for use in living rooms, bedrooms, or offices seeking a modern and refined aesthetic.", "dominant_color_hex": "#D3D3D3", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 76, "mfr_sku": "EW15011.338", "dw_sku": "DWTH-830029", "pattern_name": "Stratum", "color_name": "Sienna", "collection": "Variation", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 196.0, "price_trade": 98.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvy-1rxnkg-g7tuja/EW15011_338.jpg", "in_stock": false, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.478937+00:00", "created_at": "2026-02-24T20:09:11.974162+00:00", "updated_at": "2026-04-01T22:09:26.692443+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D97221", "ai_colors": [{"hex": "#D97221", "name": "Burnt Orange", "percentage": 45}, {"hex": "#734217", "name": "Brown", "percentage": 30}, {"hex": "#F5E7B9", "name": "Light Beige", "percentage": 15}, {"hex": "#FFFFFF", "name": "White", "percentage": 10}], "ai_styles": ["Mid-century Modern", "Abstract"], "ai_patterns": ["Abstract", "Stripe"], "ai_background_color": "Light Beige", "ai_tags": ["Burnt Orange", "Orange", "Brown", "Light Beige", "White", "Mid-century Modern", "Abstract", "Stripe", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract pattern of horizontal stripes in warm, earthy tones. The Mid-Century Modern style is both bold and sophisticated. Ideal for adding a touch of retro flair to any residential or commercial space.", "dominant_color_hex": "#D97221", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 20, "mfr_sku": "EW15030.773", "dw_sku": "DWTH-830097", "pattern_name": "Stelvio", "color_name": "Eucalyptus", "collection": "Faraway Wallpaper", "product_type": "Wallcovering", "width": "20\"", "length": null, "repeat_v": "20 in", "repeat_h": null, "material": "Non Woven - 100%", "price_retail": 284.0, "price_trade": 142.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/vh975bg62vbcgjrw7qskfjbm/EW15030_773.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:54.006351+00:00", "created_at": "2026-02-24T20:09:11.945594+00:00", "updated_at": "2026-04-01T22:06:07.663512+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#989B8D", "ai_colors": [{"hex": "#989B8D", "name": "Sage Green", "percentage": 65}, {"hex": "#F2EFDF", "name": "Beige", "percentage": 35}], "ai_styles": ["Contemporary", "Abstract"], "ai_patterns": ["Abstract", "Geometric"], "ai_background_color": "Sage Green", "ai_tags": ["Sage Green", "Green", "Beige", "Contemporary", "Abstract", "Geometric", "Vinyl", "Animal", "Insects"], "width_inches": 20.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features a modern abstract geometric pattern with flowing lines. The neutral color palette creates a calming and sophisticated mood. Recommended for use in living rooms, bedrooms, or any space seeking a touch of contemporary elegance.", "dominant_color_hex": "#989B8D", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Non Woven - 100%"}
+{"id": 11, "mfr_sku": "EW15019.705", "dw_sku": "DWTH-830050", "pattern_name": "Fallingwater", "color_name": "Mineral", "collection": "Vinyl Wallpaper Collection I", "product_type": "Wallcovering", "width": "26\"", "length": null, "repeat_v": "30 in", "repeat_h": "26 in", "material": "Paper - 100%", "price_retail": 336.0, "price_trade": 168.0, "image_url": "https://cdn.brandfolder.io/UT8SLOWQ/at/q45qvz-42k0q8-59v7rm/EW15019_705.jpg", "in_stock": true, "discontinued": false, "shopify_product_id": null, "last_scraped": "2026-02-25T03:27:53.754704+00:00", "created_at": "2026-02-24T20:09:11.939964+00:00", "updated_at": "2026-04-01T22:05:35.289134+00:00", "fire_rating": "", "finish": "", "application": "", "match_type": "", "coverage": "", "features": "", "all_images": "", "design": "", "rooms": "", "color_primary": "", "color_secondary": "", "us_distributor": "", "showroom_locations": "", "about_vendor": "", "color_hex": "#D8D7D1", "ai_colors": [{"hex": "#D8D7D1", "name": "Pale Gray", "percentage": 45}, {"hex": "#BDBDB5", "name": "Light Gray", "percentage": 30}, {"hex": "#A2A9A2", "name": "Gray-green", "percentage": 15}, {"hex": "#93A2A0", "name": "Light Blue-gray", "percentage": 10}], "ai_styles": ["Contemporary"], "ai_patterns": ["Abstract", "Textured"], "ai_background_color": "Pale Gray", "ai_tags": ["Pale Gray", "Light Gray", "Gray-green", "Light Blue-gray", "Contemporary", "Abstract", "Textured", "Non-woven", "Animal", "Insects"], "width_inches": 26.0, "on_shopify": false, "repeat_classification": "unknown", "ai_description": "This wallcovering features an abstract, textured design with vertical striations. The color palette is a blend of pale grays and subtle gray-greens, creating a calming and sophisticated mood. It is suitable for residential and commercial spaces seeking a modern and understated aesthetic.", "dominant_color_hex": "#D8D7D1", "image_rejected": false, "image_rejection_reason": null, "tariff_pct": null, "tariff_amount_per_roll": null, "tariff_amount_per_yard": null, "tariff_updated_at": null, "line": "Paper - 100%"}
diff --git a/vendors/scalamandre/viewer/fieldmap.json b/vendors/scalamandre/viewer/fieldmap.json
new file mode 100644
index 0000000..b6598b9
--- /dev/null
+++ b/vendors/scalamandre/viewer/fieldmap.json
@@ -0,0 +1,6 @@
+{
+ "title": "Scalamandre",
+ "samples_only": true,
+ "vendor_code": "scalamandre",
+ "subdomain": "scalamandre"
+}
diff --git a/vendors/scalamandre/viewer/public/buybutton.js b/vendors/scalamandre/viewer/public/buybutton.js
new file mode 100644
index 0000000..f479e9a
--- /dev/null
+++ b/vendors/scalamandre/viewer/public/buybutton.js
@@ -0,0 +1,70 @@
+/* Shopify sample checkout for the DW vendor microsites.
+ *
+ * These vendor lines are OFF Shopify (no per-product Shopify variant), so "Request
+ * Sample" cannot add a per-product variant. Instead it uses ONE generic "Memo Sample"
+ * Shopify product/variant and adds it to a real Shopify cart once per requested swatch,
+ * carrying each swatch's pattern/color/SKU/vendor as line-item custom properties, then
+ * opens Shopify's secure hosted checkout. The order line-items tell fulfillment which
+ * swatches to pull.
+ *
+ * Config is injected by the server at /config.js as window.DWV_CFG = {
+ * domain: '<store>.myshopify.com', storefrontToken: '<token>', sampleVariantId: '<gid or numeric>'
+ * }. Until storefrontToken + sampleVariantId are set, this falls back to the no-payment
+ * JSONL sample-request endpoint (POST /api/sample-request) so the button always works.
+ */
+(function () {
+ var CFG = window.DWV_CFG || {};
+ var ready = CFG.storefrontToken && CFG.sampleVariantId && CFG.domain;
+ var client = null, checkoutId = null;
+
+ function loadSDK(cb) {
+ if (window.ShopifyBuy && window.ShopifyBuy.buildClient) return cb();
+ var s = document.createElement('script');
+ s.src = 'https://sdks.shopifycdn.com/js-buy-sdk/latest/index.umd.min.js';
+ s.onload = cb; s.onerror = function () { ready = false; cb(); };
+ document.head.appendChild(s);
+ }
+
+ function ensureClient(cb) {
+ if (client) return cb();
+ loadSDK(function () {
+ if (!window.ShopifyBuy || !ready) { ready = false; return cb(); }
+ client = window.ShopifyBuy.buildClient({ domain: CFG.domain, storefrontAccessToken: CFG.storefrontToken });
+ client.checkout.create().then(function (co) { checkoutId = co.id; cb(); }).catch(function () { ready = false; cb(); });
+ });
+ }
+
+ // items: [{sku, mfr_sku, pattern_name, color_name, line}] -> Shopify checkout
+ function shopifyCheckout(items, contact) {
+ return new Promise(function (resolve, reject) {
+ ensureClient(function () {
+ if (!ready || !client || !checkoutId) return reject(new Error('shopify-unavailable'));
+ var lines = items.slice(0, 250).map(function (it) {
+ return {
+ variantId: CFG.sampleVariantId,
+ quantity: 1,
+ customAttributes: [
+ { key: 'Pattern', value: String(it.pattern_name || it.sku || '') },
+ { key: 'Color', value: String(it.color_name || '') },
+ { key: 'SKU', value: String(it.mfr_sku || it.sku || '') },
+ { key: 'Line', value: String(it.line || '') }
+ ]
+ };
+ });
+ var attrs = [];
+ if (contact && contact.name) attrs.push({ key: 'Requested by', value: contact.name });
+ var p = client.checkout.addLineItems(checkoutId, lines);
+ p.then(function (co) {
+ if (attrs.length) return client.checkout.updateAttributes(checkoutId, { customAttributes: attrs }).then(function () { return co; });
+ return co;
+ }).then(function (co) { window.location.href = co.webUrl; resolve(co); }).catch(reject);
+ });
+ });
+ }
+
+ // Expose for the viewer's sample modal. Returns true if Shopify path is wired.
+ window.DWV_SAMPLE = {
+ available: function () { return !!ready; },
+ checkout: shopifyCheckout
+ };
+})();
diff --git a/vendors/scalamandre/viewer/public/index.html b/vendors/scalamandre/viewer/public/index.html
new file mode 100644
index 0000000..ce0d82b
--- /dev/null
+++ b/vendors/scalamandre/viewer/public/index.html
@@ -0,0 +1,414 @@
+<!doctype html>
+<html lang="en">
+<head>
+<meta charset="utf-8">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="robots" content="noindex, nofollow">
+<title>Trade Lines</title>
+<style>
+ :root{
+ --cols: 5; /* density-driven grid columns */
+ --ink:#1c1a17; --muted:#6f6a62; --line:#e7e2da; --bg:#faf8f4; --card:#fff;
+ --accent:#7a6a52; --accent2:#3c5a4a;
+ }
+ *{box-sizing:border-box}
+ html,body{margin:0}
+ body{font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
+ a{color:inherit}
+ header.top{padding:22px 24px 12px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:30}
+ .brand{font-size:24px;letter-spacing:.04em;font-weight:600}
+ .brand small{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-top:3px}
+ .count{color:var(--muted);font-size:13px;margin-left:auto}
+ .toprow{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap}
+ /* controls bar */
+ .controls{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:12px 24px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:73px;z-index:20}
+ .controls label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);display:flex;flex-direction:column;gap:4px}
+ select,input[type=search],input[type=text],input[type=email],textarea{font:inherit;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink)}
+ input[type=range]{width:120px}
+ .grow{flex:1;min-width:180px}
+ .density{display:flex;flex-direction:column;gap:4px}
+ .cartbtn{margin-left:auto;background:var(--ink);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-weight:600;cursor:pointer;letter-spacing:.02em}
+ .cartbtn .n{display:inline-block;background:var(--accent2);border-radius:20px;padding:1px 8px;margin-left:6px;font-size:12px}
+ /* active-filter chips bar */
+ .activebar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 24px;border-bottom:1px solid var(--line);background:#fcfbf8}
+ .activebar.empty{display:none}
+ .achip{display:inline-flex;align-items:center;gap:6px;background:var(--ink);color:#fff;border-radius:20px;padding:4px 6px 4px 11px;font-size:12.5px;line-height:1}
+ .achip .k{opacity:.6;text-transform:uppercase;letter-spacing:.06em;font-size:10px}
+ .achip .x{border:none;background:rgba(255,255,255,.2);color:#fff;border-radius:50%;width:18px;height:18px;cursor:pointer;font-size:13px;line-height:1;padding:0}
+ .clearall{margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 12px;cursor:pointer;font-size:12.5px}
+ /* layout */
+ .wrap{display:flex;align-items:flex-start}
+ aside{width:248px;flex:0 0 248px;padding:18px 16px 60px;border-right:1px solid var(--line);position:sticky;top:135px;max-height:calc(100vh - 135px);overflow:auto}
+ aside h3{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:18px 0 8px}
+ aside h3:first-child{margin-top:0}
+ /* facet CHIPS (toggle, multi-select) */
+ .chips{display:flex;flex-wrap:wrap;gap:6px}
+ .chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:18px;padding:4px 10px;font-size:12.5px;cursor:pointer;user-select:none}
+ .chip .cc{color:var(--muted);font-size:10.5px}
+ .chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
+ .chip.on .cc{color:rgba(255,255,255,.7)}
+ .chip.zero{opacity:.38;cursor:default;pointer-events:none}
+ .chip .swatch{width:11px;height:11px;border-radius:50%;border:1px solid rgba(0,0,0,.2);flex:0 0 auto}
+ .facet-search{width:100%;margin-bottom:8px;padding:5px 8px;font-size:13px}
+ .facet-scroll{max-height:230px;overflow:auto;padding-right:4px}
+ .clearbtn{margin-top:14px;width:100%;padding:8px;border:1px solid var(--line);background:#fff;border-radius:7px;cursor:pointer;font-size:13px}
+ main{flex:1;padding:18px 24px 80px;min-width:0}
+ .grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:14px}
+ /* MINIMAL image-forward cards: image + hex dot(s) only; detail on hover/focus */
+ .card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
+ .card .imgwrap{aspect-ratio:1/1;background:#f1ede6;overflow:hidden;position:relative}
+ .card img{width:100%;height:100%;object-fit:cover;display:block}
+ .card .dots{position:absolute;left:8px;bottom:8px;display:flex;gap:4px;z-index:2}
+ .card .dot{width:14px;height:14px;border-radius:50%;border:1px solid rgba(255,255,255,.85);box-shadow:0 0 0 1px rgba(0,0,0,.18)}
+ /* reveal overlay (hover or .open via click) */
+ .reveal{position:absolute;inset:auto 0 0 0;background:linear-gradient(to top,rgba(20,18,15,.92),rgba(20,18,15,.78) 60%,rgba(20,18,15,0));color:#fff;padding:30px 11px 11px;transform:translateY(101%);transition:transform .18s ease;display:flex;flex-direction:column;gap:3px}
+ .card:hover .reveal,.card.open .reveal,.card:focus-within .reveal{transform:translateY(0)}
+ .reveal .ptitle{font-weight:600;font-size:13.5px;line-height:1.25}
+ .reveal .rmeta{font-size:11.5px;color:rgba(255,255,255,.82)}
+ .reveal .badge{display:inline-block;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.16);border-radius:20px;padding:2px 7px;align-self:flex-start;margin-bottom:1px}
+ .reqbtn{margin-top:6px;border:1px solid #fff;background:transparent;color:#fff;border-radius:7px;padding:6px;font-size:12px;font-weight:600;cursor:pointer}
+ .reqbtn.in{background:var(--accent2);border-color:var(--accent2)}
+ #sentinel{height:60px}
+ .status{text-align:center;color:var(--muted);padding:24px;font-size:13px}
+ /* modal */
+ .overlay{position:fixed;inset:0;background:rgba(28,26,23,.45);display:none;align-items:flex-start;justify-content:center;z-index:50;padding:40px 16px;overflow:auto}
+ .overlay.open{display:flex}
+ .modal{background:#fff;border-radius:12px;max-width:560px;width:100%;padding:22px 24px 26px}
+ .modal h2{margin:0 0 4px;font-size:20px}
+ .modal p.sub{margin:0 0 16px;color:var(--muted);font-size:13px}
+ .cartlist{max-height:230px;overflow:auto;border:1px solid var(--line);border-radius:8px;margin-bottom:16px}
+ .citem{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--line);font-size:13px}
+ .citem:last-child{border-bottom:none}
+ .citem img{width:42px;height:42px;object-fit:cover;border-radius:6px;background:#eee}
+ .citem .x{margin-left:auto;border:none;background:none;color:var(--muted);cursor:pointer;font-size:18px}
+ .field{display:flex;flex-direction:column;gap:4px;margin-bottom:11px}
+ .field label{font-size:12px;color:var(--muted)}
+ .row2{display:flex;gap:11px}.row2 .field{flex:1}
+ .submit{width:100%;background:var(--ink);color:#fff;border:none;border-radius:8px;padding:12px;font-weight:600;font-size:15px;cursor:pointer;margin-top:4px}
+ .submit:disabled{opacity:.5;cursor:default}
+ .closex{float:right;border:none;background:none;font-size:22px;cursor:pointer;color:var(--muted);line-height:1}
+ .ok{background:#eef5ef;border:1px solid #cfe3d4;color:#2c5d3c;padding:12px;border-radius:8px;font-size:14px}
+ @media(max-width:820px){aside{display:none}.controls{top:auto;position:static}}
+</style>
+</head>
+<body>
+<header class="top">
+ <div class="toprow">
+ <div class="brand" id="brand">Trade Lines<small>Designer Wallcoverings</small></div>
+ <div class="count" id="count">loading…</div>
+ </div>
+</header>
+
+<div class="controls">
+ <label class="grow">Search
+ <input type="search" id="q" placeholder="pattern, color, SKU, collection…" autocomplete="off">
+ </label>
+ <label>Sort
+ <select id="sort">
+ <option value="newest">Newest</option>
+ <option value="family">Color Family</option>
+ <option value="style">Style</option>
+ <option value="pattern">Pattern A→Z</option>
+ <option value="color_name">Color name A→Z</option>
+ <option value="collection">Collection A→Z</option>
+ <option value="line">Line</option>
+ <option value="product_type">Product Type</option>
+ <option value="material">Material</option>
+ <option value="light">Light → Dark</option>
+ <option value="dark">Dark → Light</option>
+ <option value="hue">Color Wheel (hue)</option>
+ <option value="sku">SKU A→Z</option>
+ </select>
+ </label>
+ <label class="density">Density
+ <input type="range" id="density" min="2" max="8" step="1" value="5">
+ </label>
+ <button class="cartbtn" id="cartbtn">Request Samples<span class="n" id="cartn">0</span></button>
+</div>
+
+<!-- active-filter chips -->
+<div class="activebar empty" id="activebar"></div>
+
+<div class="wrap">
+ <aside id="facets"></aside>
+ <main>
+ <div class="grid" id="grid"></div>
+ <div id="sentinel"></div>
+ <div class="status" id="status"></div>
+ </main>
+</div>
+
+<!-- sample request modal -->
+<div class="overlay" id="overlay">
+ <div class="modal">
+ <button class="closex" id="closex">×</button>
+ <h2>Request Samples</h2>
+ <p class="sub">No payment — we’ll mail trade samples of the items below.</p>
+ <div id="formArea">
+ <div class="cartlist" id="cartlist"></div>
+ <form id="reqform">
+ <div class="row2">
+ <div class="field"><label>Name *</label><input type="text" name="name" required></div>
+ <div class="field"><label>Email *</label><input type="email" name="email" required></div>
+ </div>
+ <div class="row2">
+ <div class="field"><label>Company / Studio</label><input type="text" name="company"></div>
+ <div class="field"><label>Phone</label><input type="text" name="phone"></div>
+ </div>
+ <div class="field"><label>Shipping address</label><textarea name="address" rows="2"></textarea></div>
+ <div class="field"><label>Notes</label><textarea name="notes" rows="2" placeholder="Optional"></textarea></div>
+ <button class="submit" id="submitbtn" type="submit">Submit sample request</button>
+ </form>
+ </div>
+ <div id="doneArea" style="display:none"></div>
+ </div>
+</div>
+
+<script>
+// per-vendor localStorage namespace (set after /api/config so two microsites don't collide)
+let NS = 'dwvm';
+const LS = {
+ get:(k,d)=>{try{const v=localStorage.getItem(NS+'.'+k);return v==null?d:JSON.parse(v);}catch{return d;}},
+ set:(k,v)=>{try{localStorage.setItem(NS+'.'+k,JSON.stringify(v));}catch{}}
+};
+const $ = (s)=>document.querySelector(s);
+const grid=$('#grid'), statusEl=$('#status'), countEl=$('#count');
+
+// approximate swatch color per family (for the chip dot)
+const FAMILY_SWATCH = {
+ 'Red':'#c0392b','Orange/Brown':'#b5651d','Yellow':'#e1c340','Green':'#4a7c3f','Teal':'#2a9d8f',
+ 'Blue':'#3a6ea5','Purple':'#7e57c2','Pink':'#e08aa8','Neutral/Beige':'#d8cbb3','Black':'#222',
+ 'Grey':'#9a9a9a','White':'#f4f4f0'
+};
+// pretty labels for the active-chip key
+const FACET_LABEL = {family:'Color',style:'Style',material_bucket:'Material',enriched:'Status',line:'Line',product_type:'Type',collection:'Collection'};
+
+// ---- persisted UI state ----
+let sort, density, cart, active;
+let offset=0, total=0, loading=false, done=false;
+const LIMIT=60;
+
+function qs(){
+ const p=new URLSearchParams();
+ p.set('sort',sort); p.set('offset',offset); p.set('limit',LIMIT);
+ const q=$('#q').value.trim(); if(q) p.set('q',q);
+ for(const k of Object.keys(active)){ if(active[k] && active[k].length) p.set(k, active[k].join('|')); }
+ return p.toString();
+}
+function reset(){ offset=0; total=0; done=false; grid.innerHTML=''; statusEl.textContent=''; renderActive(); load(); }
+
+async function load(){
+ if(loading||done) return;
+ loading=true; statusEl.textContent='loading…';
+ try{
+ const r=await fetch('/api/skus?'+qs());
+ const d=await r.json();
+ total=d.total;
+ for(const row of d.rows) grid.appendChild(card(row));
+ offset += d.rows.length;
+ if(offset>=total || d.rows.length===0) done=true;
+ countEl.textContent = total.toLocaleString()+' of '+d.all.toLocaleString()+' products';
+ statusEl.textContent = done ? (total? 'End of results — '+total.toLocaleString()+' shown' : 'No products match your filters.') : '';
+ }catch(e){ statusEl.textContent='Error loading products.'; }
+ loading=false;
+}
+
+function inCart(sku){ return cart.some(c=>c.sku===sku); }
+function esc(s){ return String(s==null?'':s).replace(/[&<>"]/g,c=>({'&':'&','<':'<','>':'>','"':'"'}[c])); }
+
+// MINIMAL card: image + hex dot(s) only; everything else in hover/click reveal
+function card(row){
+ const el=document.createElement('div'); el.className='card'; el.tabIndex=0;
+ const img = row.image ? `<img loading="lazy" src="${row.image}" alt="${esc(row.pattern_name)}" onerror="this.style.opacity=.25">` : '';
+ let dots='';
+ if(row.color_hex) dots += `<span class="dot" style="background:${row.color_hex}" title="${row.color_hex}"></span>`;
+ if(!row.color_hex && row.family) dots += `<span class="dot" style="background:${FAMILY_SWATCH[row.family]||'#bbb'}" title="${esc(row.family)}"></span>`;
+ const lineBadge = row.line ? `<span class="badge">${esc(row.line)}</span>` : '';
+ el.innerHTML = `
+ <div class="imgwrap">
+ ${img}
+ <div class="dots">${dots}</div>
+ <div class="reveal">
+ ${lineBadge}
+ <div class="ptitle">${esc(row.pattern_name)}</div>
+ <div class="rmeta">${esc(row.color_name||'—')}${row.family?' · '+esc(row.family):''}</div>
+ ${row.collection?`<div class="rmeta">${esc(row.collection)}</div>`:''}
+ <button class="reqbtn ${inCart(row.sku)?'in':''}" data-sku="${esc(row.sku)}">${inCart(row.sku)?'✓ In sample request':'Request Sample'}</button>
+ </div>
+ </div>`;
+ // click anywhere on card (not the button) toggles the reveal open (touch/click reveal)
+ el.addEventListener('click',(e)=>{ if(e.target.closest('.reqbtn')) return; el.classList.toggle('open'); });
+ el.querySelector('.reqbtn').addEventListener('click',(e)=>{e.stopPropagation();toggleCart(row, e.currentTarget);});
+ return el;
+}
+
+// ---- cart ----
+function toggleCart(row, btn){
+ if(inCart(row.sku)){ cart=cart.filter(c=>c.sku!==row.sku); }
+ else cart.push({sku:row.sku,mfr_sku:row.mfr_sku,pattern_name:row.pattern_name,color_name:row.color_name,line:row.line,image:row.image});
+ LS.set('cart',cart);
+ if(btn){ btn.classList.toggle('in',inCart(row.sku)); btn.textContent=inCart(row.sku)?'✓ In sample request':'Request Sample'; }
+ $('#cartn').textContent=cart.length;
+}
+
+// ---- active-filter chip bar (removable) ----
+function renderActive(){
+ const bar=$('#activebar'); bar.innerHTML='';
+ let any=false;
+ for(const k of Object.keys(active)){
+ for(const v of (active[k]||[])){
+ any=true;
+ const c=document.createElement('span'); c.className='achip';
+ const label = k==='enriched' ? (v==='enriched'?'Enriched':'Unenriched') : v;
+ c.innerHTML=`<span class="k">${esc(FACET_LABEL[k]||k)}</span><span>${esc(label)}</span><button class="x" title="remove">×</button>`;
+ c.querySelector('.x').addEventListener('click',()=>{ active[k]=active[k].filter(x=>x!==v); if(!active[k].length) delete active[k]; LS.set('filters',active); loadFacets(); reset(); });
+ bar.appendChild(c);
+ }
+ }
+ if(any){
+ const clr=document.createElement('button'); clr.className='clearall'; clr.textContent='Clear all';
+ clr.addEventListener('click',()=>{active={};LS.set('filters',active);loadFacets();reset();});
+ bar.appendChild(clr);
+ bar.classList.remove('empty');
+ } else bar.classList.add('empty');
+}
+
+function toggleFacet(key,value){
+ active[key]=active[key]||[];
+ if(active[key].includes(value)) active[key]=active[key].filter(v=>v!==value);
+ else active[key].push(value);
+ if(!active[key].length) delete active[key];
+ LS.set('filters',active); loadFacets(); reset();
+}
+
+// ---- facets as CHIPS ----
+async function loadFacets(){
+ const r=await fetch('/api/facets'); const d=await r.json();
+ const f=d.facets;
+ const meta=[
+ ['family','Color Family',f.family,false,true],
+ ['style','Style',f.style,false,false],
+ ['material_bucket','Material',f.material_bucket,false,false],
+ ['enriched','Enrichment',f.enriched,false,false],
+ ['line','Line',f.line,false,false],
+ ['product_type','Product Type',f.product_type,false,false],
+ ['collection','Collection',f.collection,true,false],
+ ];
+ const root=$('#facets'); root.innerHTML='';
+ for(const [key,title,vals,searchable,swatch] of meta){
+ if(!vals || !vals.length) continue;
+ const h=document.createElement('h3'); h.textContent=title; root.appendChild(h);
+ let search=null;
+ if(searchable){
+ search=document.createElement('input'); search.type='text'; search.className='facet-search'; search.placeholder='Filter '+title.toLowerCase()+'…';
+ root.appendChild(search);
+ }
+ const box=document.createElement('div'); box.className=searchable?'chips facet-scroll':'chips';
+ for(const {value,count} of vals){
+ const on=(active[key]||[]).includes(value);
+ const chip=document.createElement('span');
+ chip.className='chip'+(on?' on':'')+(count===0&&!on?' zero':'');
+ chip.dataset.v=value.toLowerCase();
+ const label = key==='enriched' ? (value==='enriched'?'Enriched':'Unenriched') : value;
+ const sw = swatch ? `<span class="swatch" style="background:${FAMILY_SWATCH[value]||'#bbb'}"></span>` : '';
+ chip.innerHTML=`${sw}<span>${esc(label)}</span><span class="cc">${count}</span>`;
+ if(!(count===0&&!on)) chip.addEventListener('click',()=>toggleFacet(key,value));
+ box.appendChild(chip);
+ }
+ root.appendChild(box);
+ if(search) search.addEventListener('input',()=>{const t=search.value.toLowerCase();box.querySelectorAll('.chip').forEach(l=>l.style.display=l.dataset.v.includes(t)?'':'none');});
+ }
+ const clear=document.createElement('button'); clear.className='clearbtn'; clear.textContent='Clear all filters';
+ clear.addEventListener('click',()=>{active={};LS.set('filters',active);loadFacets();reset();});
+ root.appendChild(clear);
+}
+
+// ---- controls ----
+$('#sort').addEventListener('change',e=>{sort=e.target.value;LS.set('sort',sort);reset();});
+$('#density').addEventListener('input',e=>{density=+e.target.value;LS.set('density',density);document.documentElement.style.setProperty('--cols',density);});
+let qt; $('#q').addEventListener('input',()=>{clearTimeout(qt);qt=setTimeout(reset,250);});
+
+// ---- infinite scroll ----
+new IntersectionObserver((ents)=>{ if(ents[0].isIntersecting) load(); },{rootMargin:'600px'}).observe($('#sentinel'));
+
+// ---- sample modal ----
+const overlay=$('#overlay');
+function openCart(){
+ renderCartList();
+ $('#formArea').style.display = cart.length? '' : 'none';
+ $('#doneArea').style.display='none'; $('#doneArea').innerHTML='';
+ overlay.classList.add('open');
+}
+function closeCart(){ overlay.classList.remove('open'); }
+$('#cartbtn').addEventListener('click',openCart);
+$('#closex').addEventListener('click',closeCart);
+overlay.addEventListener('click',e=>{if(e.target===overlay)closeCart();});
+
+function renderCartList(){
+ const list=$('#cartlist');
+ if(!cart.length){ list.innerHTML='<div class="status">No items yet. Click “Request Sample” on a product.</div>'; return; }
+ list.innerHTML='';
+ cart.forEach(it=>{
+ const row=document.createElement('div'); row.className='citem';
+ row.innerHTML=`${it.image?`<img src="${it.image}">`:''}
+ <div><strong>${esc(it.pattern_name||it.sku)}</strong><br><span style="color:#6f6a62">${esc(it.color_name||'')} ${it.line?'· '+esc(it.line):''}</span></div>
+ <button class="x" title="remove">×</button>`;
+ row.querySelector('.x').addEventListener('click',()=>{cart=cart.filter(c=>c.sku!==it.sku);LS.set('cart',cart);$('#cartn').textContent=cart.length;document.querySelectorAll('.reqbtn').forEach(b=>{if(b.dataset.sku===it.sku){b.classList.remove('in');b.textContent='Request Sample';}});openCart();});
+ list.appendChild(row);
+ });
+}
+
+$('#reqform').addEventListener('submit',async e=>{
+ e.preventDefault();
+ if(!cart.length) return;
+ const fd=new FormData(e.target);
+ const payload={items:cart};
+ for(const [k,v] of fd.entries()) payload[k]=v;
+ const btn=$('#submitbtn'); btn.disabled=true; btn.textContent='Submitting…';
+ // Shopify checkout path (real sample order) when wired; else no-payment request below.
+ if(window.DWV_SAMPLE && window.DWV_SAMPLE.available()){
+ try{ btn.textContent='Opening secure checkout…'; await window.DWV_SAMPLE.checkout(cart,{name:payload.name,email:payload.email}); return; }
+ catch(err){ /* fall through to the no-payment request flow */ }
+ }
+ try{
+ const r=await fetch('/api/sample-request',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify(payload)});
+ const d=await r.json();
+ if(d.ok){
+ cart=[]; LS.set('cart',cart); $('#cartn').textContent=0;
+ document.querySelectorAll('.reqbtn.in').forEach(b=>{b.classList.remove('in');b.textContent='Request Sample';});
+ $('#formArea').style.display='none';
+ $('#doneArea').style.display='';
+ $('#doneArea').innerHTML=`<div class="ok">Thank you, ${esc(payload.name)} — your request for ${d.count} sample${d.count===1?'':'s'} was received. We’ll be in touch at ${esc(payload.email)}.</div>`;
+ } else { btn.disabled=false; btn.textContent='Submit sample request'; alert(d.error||'Could not submit.'); }
+ }catch(err){ btn.disabled=false; btn.textContent='Submit sample request'; alert('Network error.'); }
+});
+
+// ---- boot: read /api/config for title + per-vendor namespace, then hydrate state ----
+(async function boot(){
+ try{
+ const cfg=await (await fetch('/api/config')).json();
+ if(cfg.title){
+ document.title = cfg.title;
+ $('#brand').innerHTML = esc(cfg.title)+'<small>Designer Wallcoverings</small>';
+ NS = 'dwvm.'+cfg.title.replace(/[^a-z0-9]+/gi,'_').toLowerCase();
+ }
+ window.DWV_CFG = cfg.shopify || {};
+ if(window.DWV_CFG.storefrontToken && window.DWV_CFG.sampleVariantId){
+ await new Promise(res=>{const s=document.createElement('script');s.src='/buybutton.js';s.onload=res;s.onerror=res;document.head.appendChild(s);});
+ }
+ }catch{}
+ sort = LS.get('sort','newest');
+ density = LS.get('density',5);
+ cart = LS.get('cart',[]);
+ active = LS.get('filters',{});
+ $('#sort').value=sort;
+ $('#density').value=density;
+ document.documentElement.style.setProperty('--cols',density);
+ $('#cartn').textContent=cart.length;
+ renderActive();
+ loadFacets();
+ load();
+})();
+</script>
+</body>
+</html>
diff --git a/vendors/scalamandre/viewer/server.js b/vendors/scalamandre/viewer/server.js
new file mode 100644
index 0000000..9904dbf
--- /dev/null
+++ b/vendors/scalamandre/viewer/server.js
@@ -0,0 +1,417 @@
+#!/usr/bin/env node
+/**
+ * DW Vendor Microsite — generalized catalog viewer (LOCAL, read-only browse + sample-order).
+ *
+ * Generalized from ~/Projects/cowtan-lines/viewer/server.js. The engine is
+ * vendor-agnostic: buildRows / sorters / facets / the /api/sample-request flow are
+ * uniform across every vendor's catalog schema (the staging JSONL is already
+ * normalized to the canonical cowtan shape by lib/export-catalog.sh).
+ *
+ * What is vendor-specific (read from argv / env / fieldmap.json):
+ * - JSONL source path : argv[3] || env VENDOR_JSONL || ../staging/cowtan.jsonl
+ * - banner / page title : env VENDOR_TITLE || fieldmap.title || 'Vendor Trade Lines'
+ * - samples-only policy : fieldmap.samples_only (no prices/checkout when true)
+ *
+ * These lines are intentionally OFF Shopify — the ONLY purchase action is a no-payment
+ * sample request. No prices are sold, no Shopify links, no checkout.
+ *
+ * Zero dependencies. Images are live vendor CDN URLs, used as-is (never upscaled).
+ * node server.js [port] [jsonl] [fieldmap]
+ * port default 0 = OS-assigned free port
+ * jsonl default env VENDOR_JSONL || ../staging/cowtan.jsonl
+ * fieldmap default env VENDOR_FIELDMAP || ./fieldmap.json (optional)
+ */
+const http = require('http');
+const fs = require('fs');
+const path = require('path');
+
+const PORT = parseInt(process.argv[2] || '0', 10);
+const DIR = path.join(__dirname, '..', '..', '..', 'staging'); // repo/vendors/<v>/viewer -> repo/staging
+const SRC = process.argv[3] || process.env.VENDOR_JSONL || path.join(__dirname, '..', 'staging', 'cowtan.jsonl');
+const FIELDMAP_PATH = process.argv[4] || process.env.VENDOR_FIELDMAP || path.join(__dirname, 'fieldmap.json');
+const PUBLIC = path.join(__dirname, 'public');
+const DATA = path.join(__dirname, 'data');
+const REQUESTS = path.join(DATA, 'sample-requests.jsonl');
+
+let FIELDMAP = {};
+try { if (fs.existsSync(FIELDMAP_PATH)) FIELDMAP = JSON.parse(fs.readFileSync(FIELDMAP_PATH, 'utf8')); } catch { FIELDMAP = {}; }
+const TITLE = process.env.VENDOR_TITLE || FIELDMAP.title || 'Vendor Trade Lines';
+const SAMPLES_ONLY = FIELDMAP.samples_only !== false; // default true (samples-only / no checkout)
+
+const readJsonl = (f) => (fs.existsSync(f)
+ ? fs.readFileSync(f, 'utf8').trim().split('\n').filter(Boolean).map((l) => { try { return JSON.parse(l); } catch { return null; } }).filter(Boolean)
+ : []);
+
+const num = (v) => { if (v == null) return null; const m = String(v).match(/[\d.]+/); return m ? parseFloat(m[0]) : null; };
+
+// perceived luminance 0..255 from #rrggbb
+function lum(hex) {
+ if (!hex || hex[0] !== '#' || hex.length !== 7) return null;
+ const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
+ return 0.2126 * r + 0.7152 * g + 0.0722 * b;
+}
+// hue 0..360 from #rrggbb (for color-wheel sort)
+function hue(hex) {
+ if (!hex || hex[0] !== '#' || hex.length !== 7) return null;
+ let r = parseInt(hex.slice(1, 3), 16) / 255, g = parseInt(hex.slice(3, 5), 16) / 255, b = parseInt(hex.slice(5, 7), 16) / 255;
+ const mx = Math.max(r, g, b), mn = Math.min(r, g, b), d = mx - mn;
+ if (d === 0) return -1; // grayscale -> sort to end
+ let h;
+ if (mx === r) h = ((g - b) / d) % 6;
+ else if (mx === g) h = (b - r) / d + 2;
+ else h = (r - g) / d + 4;
+ h *= 60; if (h < 0) h += 360;
+ return h;
+}
+
+// ---- ENHANCED bucketing (Steve's spec) ------------------------------------
+// Full HSL from #rrggbb -> {h:0..360, s:0..1, l:0..1} or null.
+function hsl(hex) {
+ if (!hex || hex[0] !== '#' || hex.length !== 7) return null;
+ let r = parseInt(hex.slice(1, 3), 16) / 255, g = parseInt(hex.slice(3, 5), 16) / 255, b = parseInt(hex.slice(5, 7), 16) / 255;
+ if ([r, g, b].some((v) => Number.isNaN(v))) return null;
+ const mx = Math.max(r, g, b), mn = Math.min(r, g, b), d = mx - mn;
+ const l = (mx + mn) / 2;
+ let s = 0, h = 0;
+ if (d !== 0) {
+ s = l > 0.5 ? d / (2 - mx - mn) : d / (mx + mn);
+ if (mx === r) h = ((g - b) / d) % 6;
+ else if (mx === g) h = (b - r) / d + 2;
+ else h = (r - g) / d + 4;
+ h *= 60; if (h < 0) h += 360;
+ }
+ return { h, s, l };
+}
+
+// Canonical color families (order = display order; 0-count still listed by facets()).
+const COLOR_FAMILIES = ['Red', 'Orange/Brown', 'Yellow', 'Green', 'Teal', 'Blue', 'Purple', 'Pink', 'Neutral/Beige', 'Black', 'Grey', 'White'];
+// ai_colors hint words -> family (fallback when hex absent/ambiguous).
+const AI_COLOR_TO_FAMILY = {
+ red: 'Red', crimson: 'Red', scarlet: 'Red', burgundy: 'Red', maroon: 'Red', wine: 'Red',
+ orange: 'Orange/Brown', terracotta: 'Orange/Brown', rust: 'Orange/Brown', brown: 'Orange/Brown', tan: 'Orange/Brown', camel: 'Orange/Brown', copper: 'Orange/Brown', bronze: 'Orange/Brown', amber: 'Orange/Brown', coffee: 'Orange/Brown', chocolate: 'Orange/Brown',
+ yellow: 'Yellow', gold: 'Yellow', mustard: 'Yellow', ochre: 'Yellow',
+ green: 'Green', olive: 'Green', sage: 'Green', lime: 'Green', emerald: 'Green', forest: 'Green', moss: 'Green',
+ teal: 'Teal', turquoise: 'Teal', aqua: 'Teal', cyan: 'Teal',
+ blue: 'Blue', navy: 'Blue', indigo: 'Blue', cobalt: 'Blue', azure: 'Blue', denim: 'Blue',
+ purple: 'Purple', violet: 'Purple', lavender: 'Purple', plum: 'Purple', mauve: 'Purple', lilac: 'Purple',
+ pink: 'Pink', rose: 'Pink', blush: 'Pink', fuchsia: 'Pink', magenta: 'Pink', coral: 'Pink', salmon: 'Pink',
+ beige: 'Neutral/Beige', cream: 'Neutral/Beige', ivory: 'Neutral/Beige', taupe: 'Neutral/Beige', sand: 'Neutral/Beige', linen: 'Neutral/Beige', natural: 'Neutral/Beige', oatmeal: 'Neutral/Beige', greige: 'Neutral/Beige', stone: 'Neutral/Beige',
+ black: 'Black', charcoal: 'Black', ebony: 'Black', onyx: 'Black',
+ grey: 'Grey', gray: 'Grey', silver: 'Grey', slate: 'Grey', pewter: 'Grey', smoke: 'Grey',
+ white: 'White', chalk: 'White', alabaster: 'White', snow: 'White',
+};
+// hue-degrees -> chromatic family bucket.
+function familyFromHue(h) {
+ if (h < 15 || h >= 345) return 'Red';
+ if (h < 45) return 'Orange/Brown';
+ if (h < 70) return 'Yellow';
+ if (h < 160) return 'Green';
+ if (h < 195) return 'Teal';
+ if (h < 255) return 'Blue';
+ if (h < 290) return 'Purple';
+ if (h < 345) return 'Pink';
+ return 'Red';
+}
+// Derive the color family for a row. hex first (HSL), ai_colors as fallback hint.
+function colorFamily(hex, aiColors) {
+ const c = hsl(hex);
+ if (c) {
+ // low-saturation -> achromatic by luminance
+ if (c.s < 0.12) {
+ if (c.l < 0.18) return 'Black';
+ if (c.l > 0.88) return 'White';
+ if (c.l > 0.70) return 'Neutral/Beige';
+ return 'Grey';
+ }
+ // low-ish sat + warm hue + mid/high lum -> beige rather than a vivid family
+ if (c.s < 0.22 && c.l > 0.62 && (c.h < 70 || c.h >= 330)) return 'Neutral/Beige';
+ return familyFromHue(c.h);
+ }
+ // hex missing/invalid -> ai_colors hint (first matchable word)
+ if (Array.isArray(aiColors)) {
+ for (const w of aiColors) {
+ const key = String(w || '').trim().toLowerCase();
+ if (AI_COLOR_TO_FAMILY[key]) return AI_COLOR_TO_FAMILY[key];
+ // partial: "dark green" -> green
+ for (const word of key.split(/[^a-z]+/)) if (AI_COLOR_TO_FAMILY[word]) return AI_COLOR_TO_FAMILY[word];
+ }
+ }
+ return null;
+}
+
+// Canonical styles (display order). Derived from ai_styles + ai_patterns keywords.
+const STYLE_BUCKETS = ['Floral', 'Botanical', 'Damask', 'Toile', 'Stripe', 'Geometric', 'Plaid/Check', 'Trellis', 'Animal/Fauna', 'Scenic/Mural', 'Abstract', 'Texture/Plain', 'Metallic', 'Traditional', 'Modern'];
+const STYLE_KEYWORDS = [
+ ['Floral', ['floral', 'flower', 'rose', 'peony', 'bloom', 'blossom', 'chintz']],
+ ['Botanical', ['botanical', 'leaf', 'leaves', 'fern', 'palm', 'foliage', 'tree', 'vine', 'garden', 'jungle', 'tropical']],
+ ['Damask', ['damask', 'medallion', 'ogee']],
+ ['Toile', ['toile']],
+ ['Stripe', ['stripe', 'striped', 'pinstripe', 'ticking']],
+ ['Plaid/Check', ['plaid', 'check', 'tartan', 'gingham', 'houndstooth', 'windowpane']],
+ ['Trellis', ['trellis', 'lattice', 'fretwork']],
+ ['Geometric', ['geometric', 'chevron', 'herringbone', 'diamond', 'hexagon', 'grid', 'dot', 'polka', 'moroccan', 'fret', 'greek key', 'op art']],
+ ['Animal/Fauna', ['animal', 'bird', 'butterfly', 'fauna', 'leopard', 'zebra', 'tiger', 'peacock', 'fish', 'insect', 'skin', 'hide']],
+ ['Scenic/Mural', ['scenic', 'mural', 'landscape', 'panoramic', 'chinoiserie', 'view', 'cityscape', 'map']],
+ ['Metallic', ['metallic', 'foil', 'mica', 'gilt', 'gilded', 'shimmer', 'glitter']],
+ ['Texture/Plain', ['texture', 'textured', 'plain', 'solid', 'grasscloth', 'linen', 'woven', 'weave', 'sisal', 'cork', 'faux', 'concrete', 'stucco', 'plaster', 'leather', 'suede', 'tweed']],
+ ['Abstract', ['abstract', 'organic', 'watercolor', 'marble', 'painterly', 'brushstroke', 'ombre', 'tie dye', 'splatter']],
+ ['Traditional', ['traditional', 'classic', 'heritage', 'colonial', 'victorian']],
+ ['Modern', ['modern', 'contemporary', 'minimal', 'mid-century', 'midcentury', 'scandinavian']],
+];
+// First matching style bucket from the row's ai_styles + ai_patterns words.
+function styleBucket(aiStyles, aiPatterns) {
+ const words = [];
+ for (const arr of [aiStyles, aiPatterns]) if (Array.isArray(arr)) for (const w of arr) words.push(String(w || '').toLowerCase());
+ const blob = ' ' + words.join(' ') + ' ';
+ for (const [bucket, kws] of STYLE_KEYWORDS) for (const kw of kws) if (blob.includes(kw)) return bucket;
+ return null;
+}
+
+// Material buckets from material / product_type strings.
+const MATERIAL_BUCKETS = ['Non-woven', 'Paper', 'Vinyl', 'Grasscloth', 'Fabric/Textile', 'Cork', 'Mylar/Metallic', 'Leather/Suede', 'Mural', 'Other'];
+const MATERIAL_KEYWORDS = [
+ ['Non-woven', ['non-woven', 'nonwoven', 'non woven']],
+ ['Grasscloth', ['grasscloth', 'grass cloth', 'sisal', 'jute', 'hemp', 'raffia', 'arrowroot', 'seagrass']],
+ ['Vinyl', ['vinyl', 'pvc', 'type ii', 'type 2', 'commercial']],
+ ['Cork', ['cork']],
+ ['Mylar/Metallic', ['mylar', 'metallic', 'foil', 'mica']],
+ ['Leather/Suede', ['leather', 'suede', 'ultrasuede', 'hide']],
+ ['Mural', ['mural', 'panel', 'panoramic']],
+ ['Fabric/Textile', ['fabric', 'textile', 'linen', 'silk', 'cotton', 'wool', 'velvet', 'woven', 'weave']],
+ ['Paper', ['paper', 'wallpaper', 'wallcovering', 'pulp']],
+];
+function materialBucket(material, ptype) {
+ const blob = ' ' + (String(material || '') + ' ' + String(ptype || '')).toLowerCase() + ' ';
+ if (blob.trim() === '') return null;
+ for (const [bucket, kws] of MATERIAL_KEYWORDS) for (const kw of kws) if (blob.includes(kw)) return bucket;
+ return null;
+}
+
+function buildRows() {
+ const rows = [];
+ let i = 0;
+ for (const r of readJsonl(SRC)) {
+ let images = [];
+ if (Array.isArray(r.all_images)) images = r.all_images;
+ else if (typeof r.all_images === 'string' && r.all_images.trim()) { try { images = JSON.parse(r.all_images); } catch { images = []; } }
+ if (!images.length && r.image_url) images = [r.image_url];
+ const ptype = (r.product_type || '').replace(/^./, (c) => c.toUpperCase()); // normalize casing
+ const parseArr = (v) => Array.isArray(v) ? v : (typeof v === 'string' && v.trim() ? (() => { try { return JSON.parse(v); } catch { return []; } })() : []);
+ const aiColors = parseArr(r.ai_colors), aiStyles = parseArr(r.ai_styles), aiPatterns = parseArr(r.ai_patterns);
+ const enriched = (aiColors.length > 0 || aiStyles.length > 0); // ai_colors OR ai_styles non-empty
+ rows.push({
+ idx: i++,
+ sku: r.dw_sku || r.mfr_sku || String(i),
+ mfr_sku: r.mfr_sku || null,
+ pattern_name: r.pattern_name || r.mfr_sku || '(untitled)',
+ color_name: r.color_name || null,
+ collection: r.collection || null,
+ product_type: ptype || null,
+ material: r.material || null,
+ width: r.width || null,
+ repeat_v: r.repeat_v || null,
+ repeat_h: r.repeat_h || null,
+ color_primary: r.color_primary || null,
+ color_hex: r.color_hex || null,
+ ai_colors: aiColors,
+ ai_styles: aiStyles,
+ ai_patterns: aiPatterns,
+ repeat_classification: r.repeat_classification || null,
+ finish: r.finish || null,
+ application: r.application || null,
+ coverage: r.coverage || null,
+ fire_rating: r.fire_rating || null,
+ line: r.line || r.material || null,
+ image: r.image_url || images[0] || null,
+ images,
+ image_count: images.length,
+ // ENHANCED buckets (server-side)
+ family: colorFamily(r.color_hex, aiColors),
+ style: styleBucket(aiStyles, aiPatterns),
+ material_bucket: materialBucket(r.material, ptype),
+ enriched,
+ _lum: lum(r.color_hex),
+ _hue: hue(r.color_hex),
+ });
+ }
+ return rows;
+}
+
+let ROWS = buildRows();
+fs.watchFile(SRC, { interval: 5000 }, () => { ROWS = buildRows(); });
+
+const cmpStr = (a, b) => String(a == null ? '' : a).localeCompare(String(b == null ? '' : b), undefined, { sensitivity: 'base' });
+const nullsLast = (v) => (v == null ? Infinity : v);
+
+const sorters = {
+ newest: null, // natural staged order
+ pattern: (a, b) => cmpStr(a.pattern_name, b.pattern_name),
+ color_name: (a, b) => cmpStr(a.color_name, b.color_name),
+ collection: (a, b) => cmpStr(a.collection, b.collection) || cmpStr(a.pattern_name, b.pattern_name),
+ line: (a, b) => cmpStr(a.line, b.line) || cmpStr(a.pattern_name, b.pattern_name),
+ product_type: (a, b) => cmpStr(a.product_type, b.product_type) || cmpStr(a.pattern_name, b.pattern_name),
+ material: (a, b) => cmpStr(a.material, b.material) || cmpStr(a.pattern_name, b.pattern_name),
+ // light -> dark: brightest first; missing-hex always sort last
+ light: (a, b) => { const la = a._lum == null ? -1 : a._lum, lb = b._lum == null ? -1 : b._lum; return lb - la; },
+ // dark -> light: darkest first; missing-hex always sort last
+ dark: (a, b) => { const la = a._lum == null ? 999 : a._lum, lb = b._lum == null ? 999 : b._lum; return la - lb; },
+ hue: (a, b) => {
+ // grayscale (-1) and null sort to the very end
+ const ha = a._hue == null || a._hue < 0 ? 9999 : a._hue;
+ const hb = b._hue == null || b._hue < 0 ? 9999 : b._hue;
+ return ha - hb;
+ },
+ sku: (a, b) => cmpStr(a.mfr_sku || a.sku, b.mfr_sku || b.sku),
+ // group by canonical color family (display order), nulls last, then by hue within
+ family: (a, b) => {
+ const ia = a.family == null ? 999 : COLOR_FAMILIES.indexOf(a.family);
+ const ib = b.family == null ? 999 : COLOR_FAMILIES.indexOf(b.family);
+ if (ia !== ib) return ia - ib;
+ const ha = a._hue == null || a._hue < 0 ? 9999 : a._hue, hb = b._hue == null || b._hue < 0 ? 9999 : b._hue;
+ return ha - hb;
+ },
+ // group by canonical style (display order), nulls last, then pattern name
+ style: (a, b) => {
+ const ia = a.style == null ? 999 : STYLE_BUCKETS.indexOf(a.style);
+ const ib = b.style == null ? 999 : STYLE_BUCKETS.indexOf(b.style);
+ return ia - ib || cmpStr(a.pattern_name, b.pattern_name);
+ },
+};
+
+function facets() {
+ // ENHANCED facets: color-family / style / material (bucketed) REPLACE raw color_primary
+ // as the color facet. Plus enriched, line, product_type, collection.
+ const fam = {}, sty = {}, mat = {};
+ const f = { line: {}, product_type: {}, collection: {} };
+ let enrichedN = 0, unenrichedN = 0;
+ for (const r of ROWS) {
+ const bump = (o, v) => { if (v == null || v === '') return; o[v] = (o[v] || 0) + 1; };
+ bump(fam, r.family);
+ bump(sty, r.style);
+ bump(mat, r.material_bucket);
+ bump(f.line, r.line);
+ bump(f.product_type, r.product_type);
+ bump(f.collection, r.collection);
+ if (r.enriched) enrichedN++; else unenrichedN++;
+ }
+ // canonical-ordered facets: every value listed even at count 0 (UI greys 0s)
+ const ordered = (canon, counts) => canon.map((value) => ({ value, count: counts[value] || 0 }));
+ // count-desc for free-form facets; collection alpha (searchable)
+ const byCount = (counts) => Object.entries(counts).sort((a, b) => b[1] - a[1]).map(([value, count]) => ({ value, count }));
+ const byAlpha = (counts) => Object.entries(counts).sort((a, b) => a[0].localeCompare(b[0])).map(([value, count]) => ({ value, count }));
+ return {
+ family: ordered(COLOR_FAMILIES, fam),
+ style: ordered(STYLE_BUCKETS, sty),
+ material_bucket: ordered(MATERIAL_BUCKETS, mat),
+ enriched: [
+ { value: 'enriched', count: enrichedN },
+ { value: 'unenriched', count: unenrichedN },
+ ],
+ line: byCount(f.line),
+ product_type: byCount(f.product_type),
+ collection: byAlpha(f.collection),
+ };
+}
+
+const json = (res, code, obj) => { res.writeHead(code, { 'Content-Type': 'application/json' }); res.end(JSON.stringify(obj)); };
+
+const server = http.createServer((req, res) => {
+ const u = new URL(req.url, 'http://localhost');
+
+ if (u.pathname === '/api/config') {
+ return json(res, 200, { title: TITLE, samples_only: SAMPLES_ONLY, total: ROWS.length,
+ shopify: {
+ domain: process.env.SHOPIFY_STORE_DOMAIN || 'designer-laboratory-sandbox.myshopify.com',
+ storefrontToken: process.env.SHOPIFY_STOREFRONT_TOKEN || '',
+ sampleVariantId: process.env.SHOPIFY_SAMPLE_VARIANT_ID || ''
+ } });
+ }
+
+ if (u.pathname === '/api/facets') {
+ return json(res, 200, { total: ROWS.length, facets: facets() });
+ }
+
+ if (u.pathname === '/api/skus') {
+ const q = (u.searchParams.get('q') || '').trim().toLowerCase();
+ const sort = u.searchParams.get('sort') || 'newest';
+ const offset = parseInt(u.searchParams.get('offset') || '0', 10);
+ const limit = Math.min(parseInt(u.searchParams.get('limit') || '60', 10), 200);
+ // multi-select facets: pipe-separated ('|'). Buckets + free-form + enriched.
+ const sel = (k) => { const v = u.searchParams.get(k); return v ? v.split('|').filter(Boolean) : []; };
+ const fFam = sel('family'), fStyle = sel('style'), fMat = sel('material_bucket');
+ const fEnr = sel('enriched'); // 'enriched' | 'unenriched' (multi tolerated -> OR)
+ const fLine = sel('line'), fType = sel('product_type'), fColl = sel('collection');
+
+ let rows = ROWS;
+ const inAny = (arr, val) => arr.length === 0 || arr.includes(val == null ? '' : val);
+ const enrMatch = (r) => {
+ if (!fEnr.length) return true;
+ const wantE = fEnr.includes('enriched'), wantU = fEnr.includes('unenriched');
+ return (wantE && r.enriched) || (wantU && !r.enriched);
+ };
+ rows = rows.filter((r) =>
+ inAny(fFam, r.family) && inAny(fStyle, r.style) && inAny(fMat, r.material_bucket) &&
+ inAny(fLine, r.line) && inAny(fType, r.product_type) && inAny(fColl, r.collection) && enrMatch(r));
+ if (q) {
+ rows = rows.filter((r) => (
+ (r.pattern_name || '') + ' ' + (r.color_name || '') + ' ' + (r.mfr_sku || '') + ' ' +
+ (r.sku || '') + ' ' + (r.collection || '')).toLowerCase().includes(q));
+ }
+ if (sorters[sort]) rows = [...rows].sort(sorters[sort]);
+ const page = rows.slice(offset, offset + limit);
+ return json(res, 200, { total: rows.length, all: ROWS.length, offset, limit, rows: page });
+ }
+
+ if (u.pathname === '/api/sample-request' && req.method === 'POST') {
+ let body = '';
+ req.on('data', (c) => { body += c; if (body.length > 1e6) req.destroy(); });
+ req.on('end', () => {
+ let p; try { p = JSON.parse(body || '{}'); } catch { return json(res, 400, { ok: false, error: 'bad json' }); }
+ const name = (p.name || '').toString().trim();
+ const email = (p.email || '').toString().trim();
+ const items = Array.isArray(p.items) ? p.items.slice(0, 200) : [];
+ if (!name || !email || !/.+@.+\..+/.test(email) || !items.length) {
+ return json(res, 400, { ok: false, error: 'name, valid email, and at least one item are required' });
+ }
+ const rec = {
+ ts: new Date().toISOString(),
+ vendor: TITLE,
+ name, email,
+ company: (p.company || '').toString().trim() || null,
+ phone: (p.phone || '').toString().trim() || null,
+ address: (p.address || '').toString().trim() || null,
+ notes: (p.notes || '').toString().trim() || null,
+ items: items.map((it) => ({
+ sku: (it.sku || '').toString(),
+ mfr_sku: (it.mfr_sku || '').toString() || null,
+ pattern_name: (it.pattern_name || '').toString() || null,
+ color_name: (it.color_name || '').toString() || null,
+ line: (it.line || '').toString() || null,
+ })),
+ ua: (req.headers['user-agent'] || '').slice(0, 200),
+ };
+ try {
+ fs.mkdirSync(DATA, { recursive: true });
+ fs.appendFileSync(REQUESTS, JSON.stringify(rec) + '\n');
+ } catch (e) {
+ return json(res, 500, { ok: false, error: 'could not save request' });
+ }
+ return json(res, 200, { ok: true, count: rec.items.length });
+ });
+ return;
+ }
+
+ // static
+ let pth = u.pathname === '/' ? '/index.html' : u.pathname;
+ const file = path.join(PUBLIC, path.normalize(pth).replace(/^(\.\.[/\\])+/, ''));
+ if (!file.startsWith(PUBLIC) || !fs.existsSync(file) || fs.statSync(file).isDirectory()) { res.writeHead(404); return res.end('not found'); }
+ const ext = path.extname(file);
+ const mime = { '.html': 'text/html; charset=utf-8', '.js': 'text/javascript', '.css': 'text/css', '.svg': 'image/svg+xml', '.png': 'image/png', '.jpg': 'image/jpeg', '.ico': 'image/x-icon' }[ext] || 'text/plain';
+ res.writeHead(200, { 'Content-Type': mime });
+ res.end(fs.readFileSync(file));
+});
+
+server.listen(PORT, () => {
+ const addr = server.address();
+ console.log(`${TITLE} viewer -> http://localhost:${addr.port} (${ROWS.length} products${SAMPLES_ONLY ? ', samples-only' : ''})`);
+});
← 78b05ac build surface_stick (Surface Stick) -> BUILT, port 10071, 6
·
back to Dw Vendor Microsites
·
build threads (Threads) -> BUILT, port 10073, 107 skus, img 17bda23 →