summaryrefslogtreecommitdiff
path: root/vendor/github.com/boombuler/barcode/qr/unicode.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2025-04-07 16:14:41 +0200
committerLibravatar GitHub <noreply@github.com>2025-04-07 16:14:41 +0200
commit365b5753419238bb96bc3f9b744d380ff20cbafc (patch)
tree6b8e8b605c4cddeb6e3bc0f574ffbc856657e56c /vendor/github.com/boombuler/barcode/qr/unicode.go
parent[bugfix] Don't assume `"manuallyApprovesFollowers": true` if not set (#3978) (diff)
downloadgotosocial-365b5753419238bb96bc3f9b744d380ff20cbafc.tar.xz
[feature] add TOTP two-factor authentication (2FA) (#3960)
* [feature] add TOTP two-factor authentication (2FA) * use byteutil.S2B to avoid allocations when comparing + generating password hashes * don't bother with string conversion for consts * use io.ReadFull * use MustGenerateSecret for backup codes * rename util functions
Diffstat (limited to 'vendor/github.com/boombuler/barcode/qr/unicode.go')
-rw-r--r--vendor/github.com/boombuler/barcode/qr/unicode.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/vendor/github.com/boombuler/barcode/qr/unicode.go b/vendor/github.com/boombuler/barcode/qr/unicode.go
new file mode 100644
index 000000000..a9135ab6d
--- /dev/null
+++ b/vendor/github.com/boombuler/barcode/qr/unicode.go
@@ -0,0 +1,27 @@
+package qr
+
+import (
+ "errors"
+
+ "github.com/boombuler/barcode/utils"
+)
+
+func encodeUnicode(content string, ecl ErrorCorrectionLevel) (*utils.BitList, *versionInfo, error) {
+ data := []byte(content)
+
+ vi := findSmallestVersionInfo(ecl, byteMode, len(data)*8)
+ if vi == nil {
+ return nil, nil, errors.New("To much data to encode")
+ }
+
+ // It's not correct to add the unicode bytes to the result directly but most readers can't handle the
+ // required ECI header...
+ res := new(utils.BitList)
+ res.AddBits(int(byteMode), 4)
+ res.AddBits(len(content), vi.charCountBits(byteMode))
+ for _, b := range data {
+ res.AddByte(b)
+ }
+ addPaddingAndTerminator(res, vi)
+ return res, vi, nil
+}