ChemPare Documentation - v0.0.0
    Preparing search index...
    • Type guard to validate if a value is a valid product variant. Checks for the presence and correct types of variant properties. A variant can be partial as it may inherit some properties from the parent product (such as uom, currency, URL, etc.).

      Parameters

      • variant: unknown

        The variant object to validate

      Returns variant is Partial<Variant>

      Type predicate indicating if the value is a valid partial Variant

      // Valid variant with all properties
      const completeVariant = {
      title: "Sodium Chloride 500g",
      price: 29.99,
      quantity: 500
      };
      if (isValidVariant(completeVariant)) {
      console.log('Valid complete variant:', completeVariant.title);
      }

      // Valid partial variant (inheriting some properties from parent)
      const partialVariant = {
      price: 39.99,
      quantity: 1000
      // title and other properties inherited from parent product
      };
      if (isValidVariant(partialVariant)) {
      console.log('Valid partial variant');
      }

      // Invalid variant (wrong types)
      const invalidVariant = {
      title: "Sodium Chloride",
      price: "29.99", // Should be number
      quantity: "500" // Should be number
      };
      if (!isValidVariant(invalidVariant)) {
      console.log('Invalid variant - wrong property types');
      }

      // Invalid variant (null/undefined)
      if (!isValidVariant(null)) {
      console.log('Invalid variant - null value');
      }