{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreie7mgo4r3x4xltnkmjpn64z7gicffr3ybtax2pgygqlb2vhmgeom4",
"uri": "at://did:plc:nfto3lv2rcs5s7h7digotzlu/app.bsky.feed.post/3mnnujo2puuw2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreig7saeenw6c3prrms24e2bpcmq7mskq26az4ajg73ufx33cf4gf2a"
},
"mimeType": "image/png",
"size": 32236
},
"path": "/packages/dart_dash_otp",
"publishedAt": "2026-06-07T00:03:21.953Z",
"site": "https://pub.dev",
"textContent": "Generate and verify TOTP and HOTP one-time passwords (RFC 6238 / RFC 4226) for 2FA and MFA, with otpauth:// URIs compatible with Google Authenticator. Changelog excerpt: Major rewrite. Contains breaking changes. ### Breaking changes - Dart SDK constraint bumped to `>=3.0.0 <4.0.0`. - `OTP.digits`, `OTP.secret`and `OTP.algorithm`are now `final`. - `TOTP.interval`is now a non-nullable `final int`; constructors validate that it is positive. - Generated `otpauth://`URLs now use the Google Authenticator `Issuer:Account`label format instead of just `Account`. - All query parameters in the generated URL are URL-encoded. - `Util.intToBytelist`'s `padding`parameter was[...]",
"title": "v2.0.0 of dart_dash_otp",
"updatedAt": "2026-06-06T23:00:54.239Z"
}