SwiftUI Elements
-
A SwiftUI wrapper around
VGSTextFieldproviding secure data collection with a declarative builder-style API.Overview:
VGSTextFieldRepresentablelets you embed the UIKitVGSTextFieldinside SwiftUI while configuring appearance, behavior, and callbacks in a chainable, value-type friendly manner.Features:
- Chainable modifiers (
font,placeholder,border, etc.). - Live state & editing event callbacks (
onEditingEvent,onStateChange). - Optional accessory view and secure text entry.
Security:
- No sensitive text is exposed through published properties; retrieval and submission handled internally.
- Avoid storing raw values outside SDK-managed flows.
Clearing Input:
- Use
clearTextTrigger(_:)binding to programmatically clear the field from SwiftUI state.
Example:
See moreVGSTextFieldRepresentable(configuration: config) .placeholder("Cardholder name") .font(.preferredFont(forTextStyle: .body)) .border(color: .gray, lineWidth: 1) .onStateChange { state in print(state.isValid) }Declaration
Swift
@MainActor public struct VGSTextFieldRepresentable : UIViewRepresentable, VGSTextFieldRepresentableProtocol, VGSTextFieldRepresentableCallbacksProtocol - Chainable modifiers (
-
A SwiftUI wrapper for
VGSCardTextFieldenabling secure card number entry with real-time brand detection & adaptive formatting.Features:
- Brand icon customization (size, position, accessibility).
- Chainable UI modifiers for font, placeholder, border, etc.
- Editing & state callbacks exposing
VGSCardState(BIN, last4, brand).
Security:
- PAN is sensitive.
- Tokenize using
VGSCollectmethods for safe vault storage.
Declaration
Swift
@MainActor public struct VGSCardTextFieldRepresentable : UIViewRepresentable, VGSCardTextFieldRepresentableProtocol, VGSTextFieldRepresentableCallbacksProtocol -
A SwiftUI wrapper for
VGSExpDateTextFieldcollecting card expiration date (MM / YY or MM / YYYY) with a picker, supporting brand-aware formatting.Features:
- Configurable month & year display formats.
- Chainable UI configuration & secure entry toggle.
- State & editing callbacks for validation monitoring.
Security:
- Expiration date treated as sensitive until tokenized; avoid persisting raw values.
- Picker prevents selection of past months in current year.
Declaration
Swift
@MainActor public struct VGSExpDateTextFieldRepresentable : UIViewRepresentable, VGSExpDateTextFieldRepresentableProtocol, VGSTextFieldRepresentableCallbacksProtocol -
A SwiftUI wrapper for
VGSDateTextFieldenabling secure date collection (day/month/year) with picker UI.Features:
- Chainable configuration similar to base representable.
- Custom month label formatting via
monthPickerFormat. - State & editing callbacks.
Security & Validation:
Date
Date selection constrained by configuration date ranges.- Returned
VGSTextFieldStatereflects validation status in callbacks.
Declaration
Swift
@MainActor public struct VGSDateTextFieldRepresentable : UIViewRepresentable, VGSDateTextFieldRepresentableProtocol, VGSTextFieldRepresentableCallbacksProtocol -
A SwiftUI wrapper for
VGSCVCTextFieldenabling secure collection of card security codes (CVC/CVV) with dynamic icon and brand-aware validation.Features:
- Chainable styling & behavior modifiers.
- Customizable CVC icon size, position, accessibility.
- State & editing callbacks for validation updates.
- Integrates with
VGSCardTextFieldfor dynamic length changes.
Security:
- CVC is especially sensitive; enable
isSecureTextEntryif you need obscured input. - Do not store raw CVC values in app.
Declaration
Swift
@MainActor public struct VGSCVCTextFieldRepresentable : UIViewRepresentable, VGSCVCTextFieldRepresentableProtocol, VGSTextFieldRepresentableCallbacksProtocol
-
See moreVGSTextFieldRepresentableediting events.Declaration
Swift
public enum VGSTextFieldEditingEvent<StateType>
View on GitHub
SwiftUI Elements Reference