ChemPal Documentation - v0.0.13-beta.5
    Preparing search index...
    • Type guard to validate if an object is a valid Searchanise item listing. Checks for the presence and correct types of all required properties including product details, pricing, and an array of valid Searchanise variants.

      Parameters

      • item: unknown

        The item object to validate

      Returns item is ItemListing

      Type predicate indicating if the object is a valid ItemListing

      // Valid item listing
      const validItem = {
      title: "Sodium Chloride",
      price: "29.99",
      link: "/products/nacl",
      product_id: "12345",
      product_code: "CHEM-001",
      quantity: "500g",
      vendor: "Chemical Supplier",
      original_product_id: "12345",
      list_price: "39.99",
      shopify_variants: [
      {
      sku: "CHEM-001-500G",
      price: "29.99",
      link: "/products/nacl?variant=1",
      variant_id: "1",
      quantity_total: "100",
      options: { Model: "500g" }
      }
      ]
      };

      if (isItemListing(validItem)) {
      console.log("Valid item listing:", validItem.title);
      console.log("Vendor:", validItem.vendor);
      }
      export function isItemListing(item: unknown): item is ItemListing {
      return itemListingSchema.safeParse(item).success;
      }