[object Object]

← back to All Designerwallcoverings

Mismatch chip: show DW number alongside Shopify + FileMaker mfr numbers

d3b82a533ff5178f133a02db5803c05c14d4351f · 2026-07-08 11:33:22 -0700 · Steve

Files touched

Diff

commit d3b82a533ff5178f133a02db5803c05c14d4351f
Author: Steve <steve@designerwallcoverings.com>
Date:   Wed Jul 8 11:33:22 2026 -0700

    Mismatch chip: show DW number alongside Shopify + FileMaker mfr numbers
---
 package-lock.json |  4 ++--
 public/index.html | 13 +++++++++++--
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index 1a3e125..70a22bc 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
 {
   "name": "all-designerwallcoverings",
-  "version": "1.1.0",
+  "version": "1.2.0",
   "lockfileVersion": 3,
   "requires": true,
   "packages": {
     "": {
       "name": "all-designerwallcoverings",
-      "version": "1.1.0",
+      "version": "1.2.0",
       "dependencies": {
         "@browserbasehq/sdk": "^2.15.0",
         "dotenv": "^17.4.2",
diff --git a/public/index.html b/public/index.html
index 59560dd..8cf53ae 100644
--- a/public/index.html
+++ b/public/index.html
@@ -98,8 +98,11 @@
   /* FileMaker source-of-truth: the FM mfr# shown next to Shopify's, + mismatch flag.
      "· FM 12345" in green when it agrees, amber + ⚠ + tinted row when it disagrees. */
   .mfrn .fmv { color:#7fc98a; }
-  .mfrn.mismatch { background:#2a1d0c; border-radius:4px; padding:1px 4px; margin-left:-4px; }
+  .mfrn.mismatch { background:#2a1d0c; border-radius:4px; padding:2px 5px; margin-left:-4px; display:flex; flex-wrap:wrap; gap:3px 8px; }
   .mfrn.mismatch .fmv { color:#e0b46a; }
+  .mfrn.mismatch .dwnum { color:var(--accent); }
+  .mfrn.mismatch .shopv { color:var(--txt); }
+  .mfrn.mismatch .dwnum b, .mfrn.mismatch .shopv b, .mfrn.mismatch .fmv b { color:var(--mut); font-weight:600; letter-spacing:.03em; margin-right:1px; }
   .mfrn .mmflag { color:#e0b46a; cursor:help; }
   .fmspec { margin-top:3px; font-size:calc(9.5px*var(--fs)); color:var(--mut); line-height:1.5; }
   .fmspec b { color:#8aa6c9; font-weight:600; letter-spacing:.02em; }
@@ -775,7 +778,13 @@ function mfrHTML(r) {
   const shop = r.mfr_number ? esc(r.mfr_number) : '—';
   if (r.fm_present && r.fm_mfr_number) {
     const mm = r.mfr_mismatch;
-    return `<div class="mfrn${mm ? ' mismatch' : ''}"><b>Mfr #</b> ${shop} <span class="fmv" title="what FileMaker Pro shows as the mfr number">· FM ${esc(r.fm_mfr_number)}</span>${mm ? ' <span class="mmflag" title="FileMaker and Shopify mfr numbers disagree — verify">⚠</span>' : ''}</div>`;
+    // On a mismatch, put all three identifiers on one line — DW SKU · Shopify mfr · FileMaker mfr —
+    // so the mfr numbers can be cross-referenced against the DW number without looking back up.
+    if (mm) {
+      const dwNum = esc(String(r.sku || '').replace(/-sample$/i, ''));
+      return `<div class="mfrn mismatch"><span class="dwnum" title="DW SKU number"><b>DW</b> ${dwNum}</span> <span class="shopv"><b>Shop</b> ${shop}</span> <span class="fmv" title="what FileMaker Pro shows as the mfr number"><b>FM</b> ${esc(r.fm_mfr_number)}</span> <span class="mmflag" title="FileMaker and Shopify mfr numbers disagree — verify">⚠</span></div>`;
+    }
+    return `<div class="mfrn"><b>Mfr #</b> ${shop} <span class="fmv" title="what FileMaker Pro shows as the mfr number">· FM ${esc(r.fm_mfr_number)}</span></div>`;
   }
   return r.mfr_number ? `<div class="mfrn"><b>Mfr #</b> ${shop}</div>` : '';
 }

← f088c73 chore: v1.1.0 → v1.2.0 (session close — feed + discontinued-  ·  back to All Designerwallcoverings  ·  List view: add Mfr # column with DW·Shop·FM mismatch breakou 25613cb →