 
     /// The locale used for numeric presentation. (Defaults to current locale)
     public var locale = Locale.current
-    
+
     /// The font for the components of the picker. (Defaults to `Body`)
     public var font = UIFont.preferredFont(forTextStyle: .body)
 

        let unicodeScalers = componentsString.unicodeScalars
        let index = unicodeScalers.index(unicodeScalers.startIndex, offsetBy: component)
        let char = componentsString.unicodeScalars[index]
        
        guard CharacterSet.decimalDigits.contains(char) else {
            return String(char)
        }
        
        return String(row)
    }
    
    public func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
        let pickerLabel = view as? UILabel ?? UILabel()
        let title = self.pickerView(pickerView, titleForRow: row, forComponent: component)

        nf.maximumFractionDigits = fractionDigits
        nf.numberStyle = .decimal
        nf.usesGroupingSeparator = true

        let stringValue = nf.string(from: NSNumber(value: value))
        return stringValue ?? nf.string(from: 0)!
    }

    func updatePicker() {
        picker.reloadAllComponents()
        var index = 0

        for char in componentsString.characters {
            // Row is the numeric value of the digit string, or zero for separators
            let row = Int(String(char)) ?? 0
