fix: TOML parsing of fractional seconds (#59999)
fix a bug in which parsing the digits after the decimal point of a
(date-)time like "00:00:00.12" were interpreted as "12 milliseconds"
instead of "0.12 seconds". Now, the fractional part is correctly parsed
as a fraction of a second, then correctly converted to milliseconds. As
before, only the first three digits after the decimal point are
considered.
Closes #59997
---
With a local build of this PR, the example from the above issue now
evaluates to:
```julia
julia> t2 = TOML.parse("""time = 00:00:00.2""")
Dict{String, Any} with 1 entry:
"time" => 00:00:00.2
julia> millisecond(t2["time"])
200
```
(cherry picked from commit 906d64e6d3b5dd128fd43f59bec992d053d50d2f)