@adyen/adyen-web
Version:
[](https://www.npmjs.com/package/@adyen/adyen-web)
3 lines (2 loc) • 2.5 kB
JavaScript
import{createElement as e}from"../../../external/preact/dist/preact.js";import{useRef as o,useState as n,useMemo as r,useEffect as t}from"../../../external/preact/hooks/dist/hooks.js";import a from"../../internal/SecuredFields/SFP/SecuredFieldsProvider.js";import s from"../../internal/SecuredFields/binLookup/extensions.js";function i(i){const l=o(null),[u,p]=n({}),[c,m]=n({}),[y,h]=n({}),[S,C]=n(!1),[f,g]=n(null),[F,V]=n([]),[E,x]=n(""),B=r(()=>s(i,{sfp:l},{dualBrandSelectElements:F,setDualBrandSelectElements:V,setSelectedBrandValue:x,issuingCountryCode:f,setIssuingCountryCode:g}),[F,f]);return this.processBinLookupResponse=(e,o)=>{B.processBinLookup(e,o)},this.dualBrandingChangeHandler=B.handleDualBrandSelection,t(()=>(this.setFocusOn=l.current.setFocusOn,this.updateStyles=l.current.updateStyles,this.showValidation=l.current.showValidation,this.handleUnsupportedCard=l.current.handleUnsupportedCard,()=>{l.current.destroy()}),[]),t(()=>{const e=l.current.mapErrorsToValidationRuleResult(),o={...u,...e};if(i.onChange({data:y,valid:c,errors:o,isValid:S,selectedBrandValue:E}),Object.keys(o).length){const e=Object.entries(o).map(([e,o])=>({fieldType:e,...o||{error:"",rootNode:this.props.rootNode}}));this.props.onValidationError?.(e)}},[y,c,u,E]),e(a,{ref:l,...d(i),type:i.brand,componentType:i.type,onChange:e=>{h({...y,...e.data}),p({...u,...e.errors}),m({...c,...e.valid}),C(e.isSfpValid)},onSubmitAnalytics:i.onSubmitAnalytics,exposeExpiryDate:!1,disableIOSArrowKeys:null,render:()=>null})}i.defaultProps={onChange:()=>{},onError:()=>{},onValidationError:()=>{}};const d=e=>({autoFocus:e.autoFocus,brands:e.brands,brandsConfiguration:e.brandsConfiguration,clientKey:e.clientKey,forceCompat:e.forceCompat,i18n:e.i18n,implementationType:e.implementationType,keypadFix:e.keypadFix,legacyInputMode:e.legacyInputMode,loadingContext:e.loadingContext,minimumExpiryDate:e.minimumExpiryDate,onAdditionalSFConfig:e.onAdditionalSFConfig,onAdditionalSFRemoved:e.onAdditionalSFRemoved,onAllValid:e.onAllValid,onAutoComplete:e.onAutoComplete,onBinValue:e.onBinValue,onBrand:e.onBrand,onConfigSuccess:e.onConfigSuccess,handleKeyPress:e.handleKeyPress,onError:e.onError,onFieldValid:e.onFieldValid,onFocus:e.onFocus,onLoad:e.onLoad,rootNode:e.rootNode,showWarnings:e.showWarnings,styles:e.styles,trimTrailingSeparator:e.trimTrailingSeparator,resources:e.resources,maskSecurityCode:e.maskSecurityCode,placeholders:e.placeholders});export{i as default};
//# sourceMappingURL=CustomCardInput.js.map