Qualifiers API Examples
This page demonstrates usage of some of the qualifiers provided Quasar.
CustomerTagQualifier
Definition
typescript
declare class CustomerTagQualifier {
comparisonType: 'does' | 'does_not';
operationType: 'match_one' | 'contains_one' | 'starts_with' | 'ends_with';
tags: string[];
constructor(comparisonType: 'does' | 'does_not', operationType: 'match_one' | 'contains_one' | 'starts_with' | 'ends_with', tags: string[]);
qualifies(cart: any): boolean;
}
Usage
The CustomerTagQualifier
class is used to check if a customer's tags meet certain criteria.
Parameters:
comparisonType
: Specifies whether the tags should match ('does'
) or not match ('does_not'
).operationType
: Specifies the type of operation ('match_one'
,'contains_one'
,'starts_with'
,'ends_with'
).tags
: An array of tags to compare against.
Example:
javascript
const qualifier = new CustomerTagQualifier('does', 'match_one', ['VIP', 'LOYAL']);
const isQualified = qualifier.qualifies(cart);
CartAmountQualifier
Definition
typescript
declare class CartAmountQualifier extends QualifierBase {
amountLimit: number;
constructor(comparisonType: 'less_than' | 'less_than_or_equal' | 'greater_than' | 'greater_than_or_equal' | 'equal_to' | 'is' | 'is_not', amountLimit: number);
qualifies(cart: any): boolean;
}
Usage
The CartAmountQualifier
class is used to check if the total amount in the cart meets certain criteria.
Parameters:
comparisonType
: Specifies the type of comparison ('less_than'
,'less_than_or_equal'
,'greater_than'
,'greater_than_or_equal'
,'equal_to'
,'is'
,'is_not'
).amountLimit
: The amount to compare against.
Example:
javascript
const qualifier = new CartAmountQualifier('greater_than', 100);
const isQualified = qualifier.qualifies(cart);
TotalWeightQualifier
Definition
typescript
declare class TotalWeightQualifier extends QualifierBase {
weightLimit: number;
weightUnit: 'GRAMS' | 'LB' | 'POUNDS' | 'KG' | 'KILOGRAMS';
constructor(comparisonType: 'less_than' | 'less_than_or_equal' | 'greater_than' | 'greater_than_or_equal' | 'equal_to' | 'is' | 'is_not', weightLimit: number, weightUnit: string);
qualifies(cart: any): boolean;
}
Usage
The TotalWeightQualifier
class is used to check if the total weight of items in the cart meets certain criteria.
Parameters:
comparisonType
: Specifies the type of comparison ('less_than'
,'less_than_or_equal'
,'greater_than'
,'greater_than_or_equal'
,'equal_to'
,'is'
,'is_not'
).weightLimit
: The weight to compare against.weightUnit
: The unit of weight ('GRAMS'
,'LB'
,'POUNDS'
,'KG'
,'KILOGRAMS'
).
Example:
javascript
const qualifier = new TotalWeightQualifier('less_than', 10, 'KG');
const isQualified = qualifier.qualifies(cart);
CountryAndProvinceQualifier
Definition
typescript
declare class CountryAndProvinceQualifier {
comparisonType: 'is_one' | 'is_not_one';
validCountryAndProvinces: { [key: string]: string[] };
constructor(comparisonType: 'is_one' | 'is_not_one', validCountryAndProvinces: { [key: string]: string[] });
qualifies(cart: any): boolean;
}
Usage
The CountryAndProvinceQualifier
class is used to check if the delivery address's country and province meet certain criteria.
Parameters:
comparisonType
: Specifies whether the country and province should match ('is_one'
) or not match ('is_not_one'
).validCountryAndProvinces
: An object where keys are country codes and values are arrays of valid province codes.
Example:
javascript
const validRegions = { 'US': ['CA', 'NY'], 'CA': ['ON', 'BC'] };
const qualifier = new CountryAndProvinceQualifier('is_one', validRegions);
const isQualified = qualifier.qualifies(cart);
CountryCodeQualifier
Definition
typescript
declare class CountryCodeQualifier extends QualifierBase {
validCountryCodes: string[];
constructor(comparisonType: 'is_one' | 'is_not_one', validCountryCodes: string[]);
qualifies(cart: any): boolean;
}
Usage
The CountryCodeQualifier
class is used to check if the delivery address's country code meets certain criteria.
Parameters:
comparisonType
: Specifies whether the country code should match ('is_one'
) or not match ('is_not_one'
).validCountryCodes
: An array of valid country codes.
Example:
javascript
const qualifier = new CountryCodeQualifier('is_one', ['US', 'CA']);
const isQualified = qualifier.qualifies(cart);
ShippingAddress1Qualifier
Definition
typescript
declare class ShippingAddress1Qualifier extends QualifierBase {
address: string[];
constructor(comparisonType: 'contains' | 'not_contains' | 'is_one' | 'is_not_one', address: string | string[], checkCase?: boolean);
qualifies(cart: any): boolean;
}
Usage
The ShippingAddress1Qualifier
class is used to check if the first line of the shipping address meets certain criteria.
Parameters:
comparisonType
: Specifies the type of comparison ('contains'
,'not_contains'
,'is_one'
,'is_not_one'
).address
: A string or array of strings to compare against.checkCase
: Optional boolean to specify if the comparison should be case-sensitive.
Example:
javascript
const qualifier = new ShippingAddress1Qualifier('contains', '123 Main St', true);
const isQualified = qualifier.qualifies(cart);