← back to Dw Unbuyable Recovery Pilot
tk11124-dwve-velvet/probe2.mjs
19 lines
import { gql, getLocation } from '../../designerwallcoverings/scripts/lib/shopify.mjs';
// sibling sellable inventory detail
const sib = await gql(`{ products(first:1, query:"sku:DWVE-430760") { nodes {
title status
variants(first:10){ nodes { sku price inventoryPolicy inventoryItem { id tracked
inventoryLevels(first:5){ nodes { location{ id name } quantities(names:["on_hand","available"]){ name quantity } } } } } } } } }`);
console.log('SIBLING DWVE-430760 sellable inventory:');
for (const n of sib.products.nodes) for (const v of n.variants.nodes)
console.log(` ${v.sku} $${v.price} pol=${v.inventoryPolicy} tracked=${v.inventoryItem?.tracked} levels=${JSON.stringify(v.inventoryItem?.inventoryLevels?.nodes?.map(l=>({loc:l.location.name,id:l.location.id,q:l.quantities})))}`);
const loc = await getLocation();
console.log('getLocation() primary =', loc);
// unit_of_measure convention across the DWVE Velvet Walls line (any that are per-yard active)
const conv = await gql(`{ products(first:15, query:"tag:*Velvet* OR title:*Velvet Walls*") { nodes { title status metafield(namespace:"global",key:"unit_of_measure"){value} variants(first:3){nodes{sku price selectedOptions{value}}} } } }`);
console.log('\nunit_of_measure across Velvet Walls line:');
for (const n of conv.products.nodes) console.log(` [${n.status}] unit="${n.metafield?.value}" "${n.title}"`);
// sample variant policy/tracked on a target (429560) — confirm we won't disturb
const tgt = await gql(`{ product(id:"gid://shopify/Product/6621005643827"){ variants(first:5){nodes{ sku price inventoryPolicy inventoryItem{tracked}}}}}`);
console.log('\nTarget DWVE-429560 current variant(s):', JSON.stringify(tgt.product.variants.nodes));