Cardholder name

Learn how to customise the cardholder name component.

Styling

const cardHolderNameConfig: CardHolderNameComponentConfig = {
  autoCapitalise: boolean,
  defaultValue: string,
  showHintIcon: boolean,
  showTooltip: boolean,
  hintIconSrc: string,
  dynamicCardImageComponent: DynamicCardImageComponent,
  inputAttributes: InputAttributes,
  required: boolean,
  placeholder: string,
  componentStyles: {
    base: CSSProperties,
    valid: CSSProperties,
    invalid: CSSProperties,
    input: CSSProperties
  },
  inputStyles: {
    base: CSSProperties,
    valid: CSSProperties,
    invalid: CSSProperties
  },
  label: string,
  labelStyles: {
    base: CSSProperties,
    valid: CSSProperties,
    invalid: CSSProperties
  },
  labelPosition: string,
  invalidTextStyles: CSSProperties,
  invalidTextPosition: string,
  guideText: string,
  validations: {},
  invalidIconSrc: string,
  validIconSrc: string,
  displayValidIcon: boolean,
  displayInvalidIcon: boolean,
  tooltipAriaLabel: string,
  ariaLabel: string,
  displayRequiredIcon: boolean,
  allowToCopyPaste: boolean,
  validationOnBlur: boolean,
  validationOnChange: boolean,
  tabIndex: number
};

Property

Description

autoCapitalise
boolean

Whether to convert the input to uppercase automatically.

defaultValue
string

The initial value for the name field.

showHintIcon
boolean

Whether to display a hint icon.

showTooltip
boolean

Whether to display a tooltip on hint.

hintIconSrc
string

The URL to your custom hint icon.

dynamicCardImageComponent
DynamicCardImageComponent

Component to display dynamic card images. See Dynamic card image.

inputAttributes
InputAttributes

Additional HTML input attributes.

required
boolean

Whether the field is required for submission.

placeholder
string

The placeholder text to display when the field is empty.

componentStyles
ComponentStyles

Custom styling for the component.

componentStyles.base
CSSProperties

Base styling for the component.

componentStyles.valid
CSSProperties

Styling for the component when it's valid.

componentStyles.invalid
CSSProperties

Styling for the component when it's not valid.

componentStyles.input
CSSProperties

Styling for the input element.

inputStyles
StateStyles

Style for input field in various states.

label
string

The input label's text.

labelStyles
StateStyles

The label styling, based on the state.

labelPosition
string (enum)

The position of the label, relative to the input field.

Possible values:

  • above
  • below
  • left
  • right

invalidTextStyles
CSSProperties

Style for validation message text.

invalidTextPosition
string (enum)

The position of the invalid text message, relative to the input field.

Possible values:

  • above
  • below
  • left
  • right

guideText
string

The helper text to display below the input field.

validations
T

Validation rules to be applied to the input field.

invalidIconSrc
string

The URL for the icon shown on invalid input.

validIconSrc
string

The URL for the icon shown on valid input.

displayValidIcon
boolean

Whether to display a success icon. Defaults to true.

displayInvalidIcon
boolean

Whether to display an error icon. Defaults to true.

tooltipAriaLabel
string

The aria label for the tooltip.

ariaLabel
string

The aria label for the field component.

displayRequiredIcon
boolean

Whether to display a required icon. Defaults to true.

allowToCopyPaste
boolean

Whether to allow copy/paste in the input fields.

validationOnBlur
boolean

Whether to run validation when input loses focus.

validationOnChange
boolean

Whether to run validation as a value changes.

tabIndex
number

The tab index of the input element.

Callbacks

const cardCvcConfig: CardCvcComponentConfig = {
  onChange: (event: InputEvent) => void,
  onFocus: (event: FocusEvent) => void,
  onBlur: (event: FocusEvent) => void,
  onValidationPassed: (data: ValidationResult[]) => void,
  onValidationFailed: (data: ValidationResult[]) => void
};
CallbackDescription
onChange: (event: InputEvent) => voidEvent handler for when the input value changes.
onFocus: (event: FocusEvent) => voidEvent handler for when the input receives focus.
onBlur: (event: FocusEvent) => voidEvent handler for when the input loses focus.
onValidationPassed: (data: ValidationResult[]) => voidEvent handler for when all validations pass.
onValidationFailed: (data: ValidationResult[]) => voidEvent handler for when any validation fails.
ℹ️

For more information about callbacks, see Events.

Example

const cardHolderNameConfig: CardHolderNameComponentConfig = {
  label: "Cardholder name",
  placeholder: "John Smith",
  required: true,
  autoCapitalise: true,
  showHintIcon: true,
  showTooltip: true,
  validationOnBlur: true,
  inputStyles: {
    base: {
      border: "1px solid #ccc",
      padding: "12px",
      borderRadius: "4px",
      fontSize: "16px"
    },
    valid: {
      borderColor: "#28a745"
    },
    invalid: {
      borderColor: "#dc3545"
    }
  },
  labelStyles: {
    base: {
      fontWeight: "500",
      marginBottom: "8px"
    }
  },
  tabIndex: 4,
  onChange: (event) => {
    console.log("Cardholder name changed:", event.target.value);
  },
  onFocus: (event) => {
    console.log("Cardholder name focused");
  },
  onBlur: (event) => {
    console.log("Cardholder name blurred");
  },
  onValidationPassed: (data) => {
    console.log("Cardholder name valid");
  },
  onValidationFailed: (data) => {
    console.log("Cardholder name validation failed:", data);
  }
};