UNPKG

@adyen/kyc-components

Version:

This guide assumes that you have already an account with Adyen. A legalEntity needs to be created, and you need to have a `legalEntityId` to instatiate a Component.

160 lines (159 loc) 6.08 kB
import type { ComponentChildren } from 'preact'; /** * Experiments which are returned from a call made to onboardingcomponents for feature flags and experiments (see `useToggles`). * Experiments are used to toggle behavior for A/B testing purposes. * Defined using the Experimentation Platform in BO. * * Naming convention: `${ExperimentName}_${TreatmentGroupNameOrControl}` ex. `BankingVerificationExperiment_Treatment1` or `BusinessSearchExperiment_control` */ export declare const ExperimentNames: { /** * OXP-7319: Experiment with Forced Manual Payout Flow */ readonly BankingPayoutFlow_ForcedManualVerification: "BankingPayoutFlow_ForcedManualVerification"; }; export declare const FeatureNames: { /** * */ readonly EnableAgeVerification: "EnableAgeVerification"; /** * Allows users to specify a 'Country of Governing Law' for UK companies * within Business Details Task */ readonly EnableCountryOfGoverningLawForUKCompanies: "EnableCountryOfGoverningLawForUKCompanies"; /** * */ readonly EnableDoingBusinessAsNameV4: "EnableDoingBusinessAsNameV4"; /** * */ readonly EnableFinancialInformationComponentV4: "EnableFinancialInformationComponentV4"; /** * Enables localization for Japan */ readonly EnableJapanLocalization: "EnableJapanLocalization"; /** * */ readonly EnableNationalitySGHK: "EnableNationalitySGHK"; /** * */ readonly EnableRegistrationAndTaxAbsentStatesV4: "EnableRegistrationAndTaxAbsentStatesV4"; /** * */ readonly ShowCustomerSupportV4: "ShowCustomerSupportV4"; /** * */ readonly StrictNameAndAddressValidationV4: "StrictNameAndAddressValidationV4"; /** * OXP-6596: Enable Bank Document Classification in HO */ readonly EnableBankDocumentClassification: "EnableBankDocumentClassification"; /** * OXP-6596: Enable Bank Document Classification in ShadowMode in HO */ readonly EnableBankDocumentClassificationShadowMode: "EnableBankDocumentClassificationShadowMode"; /** * OXP-7195: Enable business details rendering inside of a modal */ readonly EnableBusinessDetailsModal: "EnableBusinessDetailsModal"; /** * SOE-4062: Enable cross border payouts configuration for Bank Account task */ readonly EnableCrossBorderPayouts: "EnableCrossBorderPayouts"; /** * OXP-6032: Enable editing a single business line */ readonly EnableDeleteBusinessLines: "EnableDeleteBusinessLines"; /** * OXP-6799: Enable limit to a single business line */ readonly EnableLimitToSingleBusinessLine: "EnableLimitToSingleBusinessLine"; /** * Enable in-memory routing (wouter-preact memoryLocation) instead of state-based navigation. * When both EnableURLRouterForHostedOnboarding and EnableMemoryRouterForHostedOnboarding are on, memory router takes precedence. */ readonly EnableMemoryRouterForHostedOnboarding: "EnableMemoryRouterForHostedOnboarding"; /** * OXP-6032: Enable editing a single business line */ readonly EnableModifyBusinessLines: "EnableModifyBusinessLines"; /** * OXP-5392: UseMultiform in Soleprop and trust task */ readonly EnableMultiFormInTrustFlow: "EnableMultiFormInTrustFlow"; /** * OXP-5390: Enable payout details flow with multiform */ readonly EnablePayoutDetailsMultiForm: "EnablePayoutDetailsMultiForm"; /** * OXP-6357 Show revamped decision-maker task page */ readonly EnableRevampedDecisionMakersTaskPage: "EnableRevampedDecisionMakersTaskPage"; /** * Enable URL-based routing (wouter-preact) instead of state-based navigation */ readonly EnableURLRouterForHostedOnboarding: "EnableURLRouterForHostedOnboarding"; /** * Enable "Verify by Invite" flow for decision makers in Identity Verification */ readonly EnableVerifyByInvite: "EnableVerifyByInvite"; /** * Use the status calculated on the backend for the payout task. * If false, instead compute the status from capabilities and problems on the root LE. */ readonly UseTaskStatusApiForPayout: "UseTaskStatusApiForPayout"; /** * Enable validation change to allow 2 repeated characters string e.g. "aa", "iI" */ readonly EnableAllowTwoRepeatedCharactersInName: "EnableAllowTwoRepeatedCharactersInName"; /** OXP-6566: Create new payout intro screen */ readonly EnableBankAccountDetailsLandingPage: "EnableBankAccountDetailsLandingPage"; /** * OXP-7197: Enable unified company search */ readonly EnableUnifiedCompanySearch: "EnableUnifiedCompanySearch"; /** * Passed in from uo sdk, TODO: move to settings */ readonly EnableEInvoicingCodeField: "EnableEInvoicingCodeField"; readonly HidePayoutAccountTask: "HidePayoutAccountTask"; readonly ShowExtraTaxExemptionReasons: "ShowExtraTaxExemptionReasons"; /** * Old features */ readonly AllowMoreRolesForMainRootTrustee: "AllowMoreRolesForMainRootTrustee"; readonly EnablePhoneFieldScenario: "EnablePhoneFieldScenario"; readonly ShowUnsupportedEntityType: "ShowUnsupportedEntityType"; /** * OXP-6952: Consume new experiments endpoint inside SDK */ readonly EnableOnboardingTogglesEndpoint: "EnableOnboardingTogglesEndpoint"; }; export type ExperimentName = (typeof ExperimentNames)[keyof typeof ExperimentNames]; export type Experiments = { [key in ExperimentName]?: boolean; }; export type FeatureName = (typeof FeatureNames)[keyof typeof FeatureNames]; export type Features = { [key in FeatureName]?: boolean; }; export interface ToggleProps { children?: ComponentChildren; features: Features; refreshExperiments?: () => void; } export interface ToggleContextValue { features: Features; isFeatureEnabled(key: FeatureName): boolean; experiments: Experiments; isExperimentEnabled(key: ExperimentName): boolean; refreshExperiments?: () => void; }