All files / src/suppliers SupplierCarolinaChemical.ts

100% Statements 16/16
100% Branches 0/0
100% Functions 0/0
100% Lines 16/16

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 521x   1x                                         1x 1x 1x                     1x 1x   1x 1x   1x 1x   1x 1x   1x 1x 1x  
import { SupplierBaseWoocommerce } from './SupplierBaseWoocommerce';
 
/**
 * Supplier class for Carolina Chemical, a chemical supplier using the WooCommerce platform.
 * Implements product fetching and parsing functionality specific to Carolina Chemical's website.
 *
 * @example
 * ```typescript
 * const supplier = new SupplierCarolinaChemical();
 *
 * // Iterate over all products
 * for await (const product of supplier) {
 *   console.log(product.name, product.cas, product.price);
 * }
 *
 * // Search for specific products
 * const products = await supplier.search("acetone");
 * console.log(`Found ${products.length} products`);
 * ```
 *
 * @see https://www.carolinachemical.com/
 * @see https://carolinachemical.com/wp-json/wc/store/v1/products
 * @source
 */
export class SupplierCarolinaChemical extends SupplierBaseWoocommerce implements ISupplier {
  /**
   * The display name of the supplier.
   * Used for identifying the supplier in product listings and user interfaces.
   *
   * @example
   * ```typescript
   * const supplier = new SupplierCarolinaChemical();
   * console.log(`Products from ${supplier.supplierName}`);
   * // Output: "Products from Carolina Chemical"
   * ```
   * @source
   */
  public static readonly supplierName: string = 'Carolina Chemical';
 
  // The base URL for the supplier's website.
  public static readonly baseURL: string = 'https://carolinachemical.com';
 
  // Shipping scope for Carolina Chemical
  public static readonly shipping: ShippingRange = 'domestic';
 
  // The country code of the supplier.
  public static readonly country: CountryCode = 'US';
 
  // The payment methods accepted by the supplier.
  public static readonly paymentMethods: PaymentMethod[] = ['mastercard', 'visa'];
}