Appearance
useSessionContext 
Definition 
Composable for session management. SessionContext contain all related data like user, currency, country, shippingMethod, paymentMethod etc.
Basic usage 
ts
const { 
 sessionContext,
 selectedShippingMethod,
 selectedPaymentMethod,
 currency,
 activeShippingAddress,
 activeBillingAddress,
 taxState,
 countryId,
 languageId,
 languageIdChain,
 userFromContext,
 setLanguage,
 setCountry,
 refreshSessionContext,
 setShippingMethod,
 setPaymentMethod,
 setCurrency,
 setActiveShippingAddress,
 setActiveBillingAddress 
} = useSessionContext(newContext);
Signature 
ts
export function useSessionContext(
  newContext?: SessionContext,
): UseSessionContextReturn 
Parameters 
| Name | Type | Description | 
|---|---|---|
| newContext | SessionContext | 
Return type 
See UseSessionContextReturn
ts
export type UseSessionContextReturn = {
  /**
   * Patches the context in order to use new language
   */
  setLanguage(language: Partial<Language>): Promise<void>;
  /**
   * Patches the context in order to use new countryId
   *
   * @param {string} countryId
   */
  setCountry(countryId: string): Promise<void>;
  /**
   * current context's language
   */
  sessionContext: ComputedRef<SessionContext | undefined>;
  /**
   * Fetches the session context and assigns the result to the `sessionContext` property
   */
  refreshSessionContext(): Promise<void>;
  /**
   * current context's language
   */
  selectedShippingMethod: ComputedRef<ShippingMethod | null>;
  /**
   * Patches the context in order to use new shipping method
   */
  setShippingMethod(shippingMethod: Partial<ShippingMethod>): Promise<void>;
  /**
   * current context's payment method
   */
  selectedPaymentMethod: ComputedRef<PaymentMethod | null>;
  /**
   * Patches the context in order to use new payment method
   */
  setPaymentMethod(paymentMethod: Partial<PaymentMethod>): Promise<void>;
  /**
   * current context's currency
   */
  currency: ComputedRef<Currency | null>;
  /**
   * Patches the context in order to use new currency
   */
  setCurrency(currency: Partial<Currency>): Promise<void>;
  /**
   * current context's shipping address
   */
  activeShippingAddress: ComputedRef<ShippingAddress | null>;
  /**
   * Patches the context in order to use new shipping address
   */
  setActiveShippingAddress(address: Partial<ShippingAddress>): Promise<void>;
  /**
   * current context's billing address
   */
  activeBillingAddress: ComputedRef<BillingAddress | null>;
  /**
   * current context's tax state
   */
  taxState: ComputedRef<string | null>;
  /**
   * Patches the context in order to use new billing address
   */
  setActiveBillingAddress(address: Partial<BillingAddress>): Promise<void>;
  /**
   * current context's country id
   */
  countryId: ComputedRef<string | undefined>;
  /**
   * current language id
   */
  languageId: ComputedRef<string | undefined>;
  /**
   * current language id chain
   */
  languageIdChain: ComputedRef<string>;
  /**
   * current context's customer object
   */
  userFromContext: ComputedRef<Customer | undefined>;
};
Properties 
| Name | Type | Description | 
|---|---|---|
| sessionContext | ComputedRef<SessionContext | undefined> | current context's language | 
| selectedShippingMethod | ComputedRef<ShippingMethod | null> | current context's language | 
| selectedPaymentMethod | ComputedRef<PaymentMethod | null> | current context's payment method | 
| currency | ComputedRef<Currency | null> | current context's currency | 
| activeShippingAddress | ComputedRef<ShippingAddress | null> | current context's shipping address | 
| activeBillingAddress | ComputedRef<BillingAddress | null> | current context's billing address | 
| taxState | ComputedRef<string | null> | current context's tax state | 
| countryId | ComputedRef<string | undefined> | current context's country id | 
| languageId | ComputedRef<string | undefined> | current language id | 
| languageIdChain | ComputedRef<string> | current language id chain | 
| userFromContext | ComputedRef<Customer | undefined> | current context's customer object | 
Methods 
| Name | Type | Description | 
|---|---|---|
| setLanguage | Promise<void> | Patches the context in order to use new language | 
| setCountry | Promise<void> | Patches the context in order to use new countryId | 
| refreshSessionContext | Promise<void> | Fetches the session context and assigns the result to the `sessionContext` property | 
| setShippingMethod | Promise<void> | Patches the context in order to use new shipping method | 
| setPaymentMethod | Promise<void> | Patches the context in order to use new payment method | 
| setCurrency | Promise<void> | Patches the context in order to use new currency | 
| setActiveShippingAddress | Promise<void> | Patches the context in order to use new shipping address | 
| setActiveBillingAddress | Promise<void> | Patches the context in order to use new billing address |