UNPKG

@beamimpact/web-sdk

Version:

The Beam SDK enables brands to connect with their customers over shared values, not transactional discounts, to build stronger loyalty. Our integration achieves this by allowing customers to (a) choose a nonprofit where the brand will donate part of their

69 lines (66 loc) 2.46 kB
import * as lit_html from 'lit-html'; import * as lit from 'lit'; import { LitElement, PropertyValues } from 'lit'; import * as lodash from 'lodash'; import { T as TNumericId } from '../chunks/types-CPxMwnoR.esm.js'; import { L as LANGUAGES } from '../chunks/types-DfRc36jU.esm.js'; import '../chunks/progress-bar-CveZ8E6Q.esm.js'; import './beam-partner-logos.js'; interface SubscriptionRequiredConfig { apiKey: string; subscriptionId: string; storeId: TNumericId; } declare class BeamSelectSubscriptionNonprofit extends LitElement { static tagName: string; baseUrl: string; apiKey?: SubscriptionRequiredConfig["apiKey"]; subscriptionId?: SubscriptionRequiredConfig["subscriptionId"]; storeId?: SubscriptionRequiredConfig["storeId"]; countryCode?: string; postalCode?: string; selectedNonprofitId?: TNumericId; lang: LANGUAGES; draftConfig: boolean; debug: boolean; private isMobile; get configLang(): LANGUAGES; private getChainNonprofits; private updateNonprofitIdForSubscription; private nonprofitListDataController; private subscriptionUpdateDataController; private localStorage; connectedCallback(): void; firstUpdated(_changedProperties: PropertyValues): Promise<void>; updated(previousPropertyValues: PropertyValues): Promise<void>; disconnectedCallback(): void; private restoreStateFromCache; /** * Factory for selection event handler * * Nonprofit selector implements radio-button semantics: * * If nothing is selected, tabbing into selector selects first card * * Arrow keys changes focus between cards, but doesn't select * * Enter/Space sets selection * * If a nonprofit is selected, arrow keys change focus AND selection * * Click sets selection * @param {number} id * @param {number} index * @param {{id: number}[]} nonprofits * @returns {(evt: Event) => void} */ private makeHandleSelect; get allowChange(): boolean; get allowSubmit(): boolean; handleSubmit: () => Promise<void>; evaluateBreakPoints: lodash.DebouncedFuncLeading<() => void>; get cssVariables(): any; static styles: lit.CSSResult[]; protected render(): "" | lit_html.TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { "beam-select-subscription-nonprofit": BeamSelectSubscriptionNonprofit; } } export { BeamSelectSubscriptionNonprofit };