VGSDateTokenizationConfiguration
@MainActor
public final class VGSDateTokenizationConfiguration : VGSConfiguration, VGSDateConfigurationProtocol, @preconcurrency VGSTextFieldTokenizationConfigurationProtocol, VGSFormatSerializableProtocol
extension VGSDateTokenizationConfiguration: @preconcurrency VGSTextFormatConvertable
VGSDateTokenizationConfiguration - configuration object for a date field tokenization.
Summary:
Specialized configuration for .date fields enabling Vault tokenization, optional date-picker input, and optional format serialization before submission.
Behavior:
- Forces
typeto.date. - Provides
tokenizationParametersconsumed by tokenization/alias APIs. - Supports optional date picker via
inputSource = .datePickerand year range customization (datePickerStartDate/datePickerEndDate). - Allows input/output date format conversion & serialization through
serializerscollection.
Usage:
let dateCfg = VGSDateTokenizationConfiguration(collector: collector, fieldName: "event_date")
dateCfg.inputSource = .datePicker
dateCfg.inputDateFormat = .mmddyyyy
dateCfg.outputDateFormat = .yyyymmdd
dateCfg.tokenizationParameters.format = VGSVaultAliasFormat.UUID.rawValue
dateField.configuration = dateCfg
Customization Notes:
- Set format conversion properties before assigning configuration to the field.
- Provide serializers when you need extra structured output (e.g. separate year/month fields) prior to tokenization.
- Adjust start/end picker dates via initializer optional parameters.
Security:
- Tokenization replaces raw date with an alias; never log raw date content if considered sensitive (e.g. birth dates).
- Do not persist raw input.
-
Initialization Date configuration initializer, if no
datePickerStartDateis provided, a default date will be used adding 100 years to the current date. Similar approach will be used ifdatePickerEndDateis not provided, it will be calculated removing 100 years from current date.Declaration
Swift
@MainActor public init(collector vgs: VGSCollect, fieldName: String, datePickerStartDate: VGSDate? = nil, datePickerEndDate: VGSDate? = nil)Parameters
vgsVGSCollectinstance.fieldNameassociated
fieldName.datePickerStartDateoptional
VGSDateinstance.datePickerEndDateoptional
VGSDateinstance.
-
Super initializer
Declaration
Swift
public override var type: FieldType { get set }
-
Declaration
Swift
@MainActor public var inputSource: VGSTextFieldInputSource -
Declaration
Swift
@MainActor public var inputDateFormat: VGSDateFormat? -
Declaration
Swift
@MainActor public var outputDateFormat: VGSDateFormat?
View on GitHub