ChemPare Documentation - v0.0.0
    Preparing search index...
    • Type guard to validate if a value is a complete Product object. Checks for the presence and correct types of all required product fields. This is a stricter validation than isMinimalProduct as it ensures all required fields are present.

      Parameters

      • product: unknown

        The value to validate

      Returns product is Product

      Type predicate indicating if the value is a complete Product object

      const completeProduct = {
      title: "Sodium Chloride",
      price: 29.99,
      quantity: 500,
      uom: "g",
      supplier: "ChemSupplier",
      url: "/products/nacl",
      currencyCode: "USD",
      currencySymbol: "$",
      description: "High purity sodium chloride",
      cas: "7647-14-5"
      };

      if (isProduct(completeProduct)) {
      console.log('Valid complete product:', completeProduct.title);
      } else {
      console.log('Invalid product object');
      }

      // Example with missing required fields
      const partialProduct = {
      title: "Sodium Chloride",
      price: 29.99
      // Missing required fields
      };
      if (!isProduct(partialProduct)) {
      console.log('Invalid product - missing required fields');
      }