UNPKG

@revenuecat/purchases-ui-js

Version:

Web components for Paywalls. Powered by RevenueCat

27 lines (26 loc) 864 B
import { getContext, setContext } from "svelte"; import { writable } from "svelte/store"; const key = Symbol("inputValidation"); const initialSelectionsKey = Symbol("initialInputSelections"); export function createInputValidationContext(initiallySatisfied = true) { const isSatisfied = writable(initiallySatisfied); const updateSatisfaction = (satisfied) => { isSatisfied.set(satisfied); }; return { isSatisfied, updateSatisfaction, }; } export function setInputValidationContext(context) { setContext(key, context); } export function getInputValidationContext() { return getContext(key); } export function setInitialInputSelectionsContext(selections) { setContext(initialSelectionsKey, selections); } export function getInitialInputSelectionsContext() { return getContext(initialSelectionsKey) ?? {}; }