summaryrefslogtreecommitdiff
path: root/vendor/github.com/boombuler/barcode/utils/base1dcode.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/utils/base1dcode.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/utils/base1dcode.go')
-rw-r--r--vendor/github.com/boombuler/barcode/utils/base1dcode.go57
1 files changed, 57 insertions, 0 deletions
diff --git a/vendor/github.com/boombuler/barcode/utils/base1dcode.go b/vendor/github.com/boombuler/barcode/utils/base1dcode.go
new file mode 100644
index 000000000..a335c0c74
--- /dev/null
+++ b/vendor/github.com/boombuler/barcode/utils/base1dcode.go
@@ -0,0 +1,57 @@
+// Package utils contain some utilities which are needed to create barcodes
+package utils
+
+import (
+ "image"
+ "image/color"
+
+ "github.com/boombuler/barcode"
+)
+
+type base1DCode struct {
+ *BitList
+ kind string
+ content string
+}
+
+type base1DCodeIntCS struct {
+ base1DCode
+ checksum int
+}
+
+func (c *base1DCode) Content() string {
+ return c.content
+}
+
+func (c *base1DCode) Metadata() barcode.Metadata {
+ return barcode.Metadata{c.kind, 1}
+}
+
+func (c *base1DCode) ColorModel() color.Model {
+ return color.Gray16Model
+}
+
+func (c *base1DCode) Bounds() image.Rectangle {
+ return image.Rect(0, 0, c.Len(), 1)
+}
+
+func (c *base1DCode) At(x, y int) color.Color {
+ if c.GetBit(x) {
+ return color.Black
+ }
+ return color.White
+}
+
+func (c *base1DCodeIntCS) CheckSum() int {
+ return c.checksum
+}
+
+// New1DCodeIntCheckSum creates a new 1D barcode where the bars are represented by the bits in the bars BitList
+func New1DCodeIntCheckSum(codeKind, content string, bars *BitList, checksum int) barcode.BarcodeIntCS {
+ return &base1DCodeIntCS{base1DCode{bars, codeKind, content}, checksum}
+}
+
+// New1DCode creates a new 1D barcode where the bars are represented by the bits in the bars BitList
+func New1DCode(codeKind, content string, bars *BitList) barcode.Barcode {
+ return &base1DCode{bars, codeKind, content}
+}