Improve UI and switch to CGO sqlite driverUnverified
7c98e02 parent: 830e577 modified
go.mod +2 -8 | @@ -9,7 +9,7 @@ require ( | ||
| 9 | 9 | github.com/go-chi/chi/v5 v5.2.5 |
| 10 | 10 | github.com/go-chi/cors v1.2.2 |
| 11 | 11 | github.com/gorilla/websocket v1.5.3 |
| 12 | - modernc.org/sqlite v1.49.1 | |
| 12 | + github.com/mattn/go-sqlite3 v1.14.22 | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | require ( |
| @@ -51,7 +51,6 @@ require ( | ||
| 51 | 51 | github.com/daixiang0/gci v0.13.5 // indirect |
| 52 | 52 | github.com/davecgh/go-spew v1.1.1 // indirect |
| 53 | 53 | github.com/denis-tingaikin/go-header v0.5.0 // indirect |
| 54 | - github.com/dustin/go-humanize v1.0.1 // indirect | |
| 55 | 54 | github.com/earthboundkid/versioninfo/v2 v2.24.1 // indirect |
| 56 | 55 | github.com/ettle/strcase v0.2.0 // indirect |
| 57 | 56 | github.com/fatih/color v1.18.0 // indirect |
| @@ -83,7 +82,7 @@ require ( | ||
| 83 | 82 | github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed // indirect |
| 84 | 83 | github.com/google/go-cmp v0.7.0 // indirect |
| 85 | 84 | github.com/google/go-querystring v1.1.0 // indirect |
| 86 | - github.com/google/uuid v1.6.0 // indirect | |
| 85 | + github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e // indirect | |
| 87 | 86 | github.com/gordonklaus/ineffassign v0.1.0 // indirect |
| 88 | 87 | github.com/gostaticanalysis/analysisutil v0.7.1 // indirect |
| 89 | 88 | github.com/gostaticanalysis/comment v1.5.0 // indirect |
| @@ -126,7 +125,6 @@ require ( | ||
| 126 | 125 | github.com/moricho/tparallel v0.3.2 // indirect |
| 127 | 126 | github.com/mr-tron/base58 v1.2.0 // indirect |
| 128 | 127 | github.com/nakabonne/nestif v0.3.1 // indirect |
| 129 | - github.com/ncruces/go-strftime v1.0.0 // indirect | |
| 130 | 128 | github.com/nishanths/exhaustive v0.12.0 // indirect |
| 131 | 129 | github.com/nishanths/predeclared v0.2.2 // indirect |
| 132 | 130 | github.com/nunnatsa/ginkgolinter v0.19.1 // indirect |
| @@ -145,7 +143,6 @@ require ( | ||
| 145 | 143 | github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 // indirect |
| 146 | 144 | github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect |
| 147 | 145 | github.com/raeperd/recvcheck v0.2.0 // indirect |
| 148 | - github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect | |
| 149 | 146 | github.com/rivo/uniseg v0.4.7 // indirect |
| 150 | 147 | github.com/rogpeppe/go-internal v1.14.1 // indirect |
| 151 | 148 | github.com/ryancurrah/gomodguard v1.3.5 // indirect |
| @@ -208,9 +205,6 @@ require ( | ||
| 208 | 205 | gopkg.in/yaml.v2 v2.4.0 // indirect |
| 209 | 206 | gopkg.in/yaml.v3 v3.0.1 // indirect |
| 210 | 207 | honnef.co/go/tools v0.6.1 // indirect |
| 211 | - modernc.org/libc v1.72.0 // indirect | |
| 212 | - modernc.org/mathutil v1.7.1 // indirect | |
| 213 | - modernc.org/memory v1.11.0 // indirect | |
| 214 | 208 | mvdan.cc/gofumpt v0.7.0 // indirect |
| 215 | 209 | mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f // indirect |
| 216 | 210 | ) |
| @@ -9,7 +9,7 @@ require ( | |||
| 9 | github.com/go-chi/chi/v5 v5.2.5 | 9 | github.com/go-chi/chi/v5 v5.2.5 |
| 10 | github.com/go-chi/cors v1.2.2 | 10 | github.com/go-chi/cors v1.2.2 |
| 11 | github.com/gorilla/websocket v1.5.3 | 11 | github.com/gorilla/websocket v1.5.3 |
| 12 | - modernc.org/sqlite v1.49.1 | 12 | + github.com/mattn/go-sqlite3 v1.14.22 |
| 13 | ) | 13 | ) |
| 14 | 14 | ||
| 15 | require ( | 15 | require ( |
| @@ -51,7 +51,6 @@ require ( | |||
| 51 | github.com/daixiang0/gci v0.13.5 // indirect | 51 | github.com/daixiang0/gci v0.13.5 // indirect |
| 52 | github.com/davecgh/go-spew v1.1.1 // indirect | 52 | github.com/davecgh/go-spew v1.1.1 // indirect |
| 53 | github.com/denis-tingaikin/go-header v0.5.0 // indirect | 53 | github.com/denis-tingaikin/go-header v0.5.0 // indirect |
| 54 | - github.com/dustin/go-humanize v1.0.1 // indirect | ||
| 55 | github.com/earthboundkid/versioninfo/v2 v2.24.1 // indirect | 54 | github.com/earthboundkid/versioninfo/v2 v2.24.1 // indirect |
| 56 | github.com/ettle/strcase v0.2.0 // indirect | 55 | github.com/ettle/strcase v0.2.0 // indirect |
| 57 | github.com/fatih/color v1.18.0 // indirect | 56 | github.com/fatih/color v1.18.0 // indirect |
| @@ -83,7 +82,7 @@ require ( | |||
| 83 | github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed // indirect | 82 | github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed // indirect |
| 84 | github.com/google/go-cmp v0.7.0 // indirect | 83 | github.com/google/go-cmp v0.7.0 // indirect |
| 85 | github.com/google/go-querystring v1.1.0 // indirect | 84 | github.com/google/go-querystring v1.1.0 // indirect |
| 86 | - github.com/google/uuid v1.6.0 // indirect | 85 | + github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e // indirect |
| 87 | github.com/gordonklaus/ineffassign v0.1.0 // indirect | 86 | github.com/gordonklaus/ineffassign v0.1.0 // indirect |
| 88 | github.com/gostaticanalysis/analysisutil v0.7.1 // indirect | 87 | github.com/gostaticanalysis/analysisutil v0.7.1 // indirect |
| 89 | github.com/gostaticanalysis/comment v1.5.0 // indirect | 88 | github.com/gostaticanalysis/comment v1.5.0 // indirect |
| @@ -126,7 +125,6 @@ require ( | |||
| 126 | github.com/moricho/tparallel v0.3.2 // indirect | 125 | github.com/moricho/tparallel v0.3.2 // indirect |
| 127 | github.com/mr-tron/base58 v1.2.0 // indirect | 126 | github.com/mr-tron/base58 v1.2.0 // indirect |
| 128 | github.com/nakabonne/nestif v0.3.1 // indirect | 127 | github.com/nakabonne/nestif v0.3.1 // indirect |
| 129 | - github.com/ncruces/go-strftime v1.0.0 // indirect | ||
| 130 | github.com/nishanths/exhaustive v0.12.0 // indirect | 128 | github.com/nishanths/exhaustive v0.12.0 // indirect |
| 131 | github.com/nishanths/predeclared v0.2.2 // indirect | 129 | github.com/nishanths/predeclared v0.2.2 // indirect |
| 132 | github.com/nunnatsa/ginkgolinter v0.19.1 // indirect | 130 | github.com/nunnatsa/ginkgolinter v0.19.1 // indirect |
| @@ -145,7 +143,6 @@ require ( | |||
| 145 | github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 // indirect | 143 | github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 // indirect |
| 146 | github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect | 144 | github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect |
| 147 | github.com/raeperd/recvcheck v0.2.0 // indirect | 145 | github.com/raeperd/recvcheck v0.2.0 // indirect |
| 148 | - github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect | ||
| 149 | github.com/rivo/uniseg v0.4.7 // indirect | 146 | github.com/rivo/uniseg v0.4.7 // indirect |
| 150 | github.com/rogpeppe/go-internal v1.14.1 // indirect | 147 | github.com/rogpeppe/go-internal v1.14.1 // indirect |
| 151 | github.com/ryancurrah/gomodguard v1.3.5 // indirect | 148 | github.com/ryancurrah/gomodguard v1.3.5 // indirect |
| @@ -208,9 +205,6 @@ require ( | |||
| 208 | gopkg.in/yaml.v2 v2.4.0 // indirect | 205 | gopkg.in/yaml.v2 v2.4.0 // indirect |
| 209 | gopkg.in/yaml.v3 v3.0.1 // indirect | 206 | gopkg.in/yaml.v3 v3.0.1 // indirect |
| 210 | honnef.co/go/tools v0.6.1 // indirect | 207 | honnef.co/go/tools v0.6.1 // indirect |
| 211 | - modernc.org/libc v1.72.0 // indirect | ||
| 212 | - modernc.org/mathutil v1.7.1 // indirect | ||
| 213 | - modernc.org/memory v1.11.0 // indirect | ||
| 214 | mvdan.cc/gofumpt v0.7.0 // indirect | 208 | mvdan.cc/gofumpt v0.7.0 // indirect |
| 215 | mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f // indirect | 209 | mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f // indirect |
| 216 | ) | 210 | ) |
modified
go.sum +26 -37 | @@ -84,8 +84,6 @@ github.com/denis-tingaikin/go-header v0.5.0 h1:SRdnP5ZKvcO9KKRP1KJrhFR3RrlGuD+42 | ||
| 84 | 84 | github.com/denis-tingaikin/go-header v0.5.0/go.mod h1:mMenU5bWrok6Wl2UsZjy+1okegmwQ3UgWl4V1D8gjlY= |
| 85 | 85 | github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= |
| 86 | 86 | github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8= |
| 87 | -github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= | |
| 88 | -github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= | |
| 89 | 87 | github.com/earthboundkid/versioninfo/v2 v2.24.1 h1:SJTMHaoUx3GzjjnUO1QzP3ZXK6Ee/nbWyCm58eY3oUg= |
| 90 | 88 | github.com/earthboundkid/versioninfo/v2 v2.24.1/go.mod h1:VcWEooDEuyUJnMfbdTh0uFN4cfEIg+kHMuWB2CDCLjw= |
| 91 | 89 | github.com/ettle/strcase v0.2.0 h1:fGNiVF21fHXpX1niBgk0aROov1LagYsOwV/xqKDKR/Q= |
| @@ -143,7 +141,6 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= | ||
| 143 | 141 | github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= |
| 144 | 142 | github.com/gofrs/flock v0.12.1 h1:MTLVXXHf8ekldpJk3AKicLij9MdwOWkZ+a/jHHZby9E= |
| 145 | 143 | github.com/gofrs/flock v0.12.1/go.mod h1:9zxTsyu5xtJ9DK+1tFZyibEV7y3uwDxPPfbxeeHCoD0= |
| 146 | -github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= | |
| 147 | 144 | github.com/golang-jwt/jwt/v5 v5.2.2 h1:Rl4B7itRWVtYIHFrSNd7vhTiz9UpLdi6gZhZ3wEeDy8= |
| 148 | 145 | github.com/golang-jwt/jwt/v5 v5.2.2/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= |
| 149 | 146 | github.com/golangci/dupl v0.0.0-20250308024227-f665c8d69b32 h1:WUvBfQL6EW/40l6OmeSBYQJNSif4O11+bmWEz+C7FYw= |
| @@ -173,8 +170,6 @@ github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD | ||
| 173 | 170 | github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= |
| 174 | 171 | github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs= |
| 175 | 172 | github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= |
| 176 | -github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | |
| 177 | -github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | |
| 178 | 173 | github.com/gordonklaus/ineffassign v0.1.0 h1:y2Gd/9I7MdY1oEIt+n+rowjBNDcLQq3RsH5hwJd0f9s= |
| 179 | 174 | github.com/gordonklaus/ineffassign v0.1.0/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= |
| 180 | 175 | github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= |
| @@ -207,6 +202,8 @@ github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUq | ||
| 207 | 202 | github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= |
| 208 | 203 | github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= |
| 209 | 204 | github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= |
| 205 | +github.com/ipfs/go-cid v0.4.1 h1:A/T3qGvxi4kpKWWcPC/PgbvDA2bjVLO7n4UeVwnbs/s= | |
| 206 | +github.com/ipfs/go-cid v0.4.1/go.mod h1:uQHwDeX4c6CtyrFwdqyhpNcxVewur1M7l7fNU7LKwZk= | |
| 210 | 207 | github.com/jgautheron/goconst v1.7.1 h1:VpdAG7Ca7yvvJk5n8dMwQhfEZJh95kl/Hl9S1OI5Jkk= |
| 211 | 208 | github.com/jgautheron/goconst v1.7.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4= |
| 212 | 209 | github.com/jingyugao/rowserrcheck v1.1.1 h1:zibz55j/MJtLsjP1OF4bSdgXxwL1b+Vn7Tjzq7gFzUs= |
| @@ -221,6 +218,8 @@ github.com/kisielk/errcheck v1.9.0 h1:9xt1zI9EBfcYBvdU1nVrzMzzUPUtPKs9bVSIM3TAb3 | ||
| 221 | 218 | github.com/kisielk/errcheck v1.9.0/go.mod h1:kQxWMMVZgIkDq7U8xtG/n2juOjbLgZtedi0D+/VL/i8= |
| 222 | 219 | github.com/kkHAIKE/contextcheck v1.1.6 h1:7HIyRcnyzxL9Lz06NGhiKvenXq7Zw6Q0UQu/ttjfJCE= |
| 223 | 220 | github.com/kkHAIKE/contextcheck v1.1.6/go.mod h1:3dDbMRNBFaq8HFXWC1JyvDSPm43CmE6IuHam8Wr0rkg= |
| 221 | +github.com/klauspost/cpuid/v2 v2.2.7 h1:ZWSB3igEs+d0qvnxR/ZBzXVmxkgt8DdzP6m9pfuVLDM= | |
| 222 | +github.com/klauspost/cpuid/v2 v2.2.7/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= | |
| 224 | 223 | github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= |
| 225 | 224 | github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= |
| 226 | 225 | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= |
| @@ -262,10 +261,14 @@ github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D | ||
| 262 | 261 | github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= |
| 263 | 262 | github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= |
| 264 | 263 | github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= |
| 264 | +github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= | |
| 265 | +github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= | |
| 265 | 266 | github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= |
| 266 | 267 | github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= |
| 267 | 268 | github.com/mgechev/revive v1.7.0 h1:JyeQ4yO5K8aZhIKf5rec56u0376h8AlKNQEmjfkjKlY= |
| 268 | 269 | github.com/mgechev/revive v1.7.0/go.mod h1:qZnwcNhoguE58dfi96IJeSTPeZQejNeoMQLUZGi4SW4= |
| 270 | +github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM= | |
| 271 | +github.com/minio/sha256-simd v1.0.1/go.mod h1:Pz6AKMiUdngCLpeTL/RJY1M9rUuPMYujV5xJjtbRSN8= | |
| 269 | 272 | github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= |
| 270 | 273 | github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= |
| 271 | 274 | github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= |
| @@ -274,10 +277,18 @@ github.com/moricho/tparallel v0.3.2 h1:odr8aZVFA3NZrNybggMkYO3rgPRcqjeQUlBBFVxKH | ||
| 274 | 277 | github.com/moricho/tparallel v0.3.2/go.mod h1:OQ+K3b4Ln3l2TZveGCywybl68glfLEwFGqvnjok8b+U= |
| 275 | 278 | github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= |
| 276 | 279 | github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= |
| 280 | +github.com/multiformats/go-base32 v0.1.0 h1:pVx9xoSPqEIQG8o+UbAe7DNi51oej1NtK+aGkbLYxPE= | |
| 281 | +github.com/multiformats/go-base32 v0.1.0/go.mod h1:Kj3tFY6zNr+ABYMqeUNeGvkIC/UYgtWibDcT0rExnbI= | |
| 282 | +github.com/multiformats/go-base36 v0.2.0 h1:lFsAbNOGeKtuKozrtBsAkSVhv1p9D0/qedU9rQyccr0= | |
| 283 | +github.com/multiformats/go-base36 v0.2.0/go.mod h1:qvnKE++v+2MWCfePClUEjE78Z7P2a1UV0xHgWc0hkp4= | |
| 284 | +github.com/multiformats/go-multibase v0.2.0 h1:isdYCVLvksgWlMW9OZRYJEa9pZETFivncJHmHnnd87g= | |
| 285 | +github.com/multiformats/go-multibase v0.2.0/go.mod h1:bFBZX4lKCA/2lyOFSAoKH5SS6oPyjtnzK/XTFDPkNuk= | |
| 286 | +github.com/multiformats/go-multihash v0.2.3 h1:7Lyc8XfX/IY2jWb/gI7JP+o7JEq9hOa7BFvVU9RSh+U= | |
| 287 | +github.com/multiformats/go-multihash v0.2.3/go.mod h1:dXgKXCXjBzdscBLk9JkjINiEsCKRVch90MdaGiKsvSM= | |
| 288 | +github.com/multiformats/go-varint v0.0.7 h1:sWSGR+f/eu5ABZA2ZpYKBILXTTs9JWpdEM/nEGOHFS8= | |
| 289 | +github.com/multiformats/go-varint v0.0.7/go.mod h1:r8PUYw/fD/SjBCiKOoDlGF6QawOELpZAu9eioSos/OU= | |
| 277 | 290 | github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U= |
| 278 | 291 | github.com/nakabonne/nestif v0.3.1/go.mod h1:9EtoZochLn5iUprVDmDjqGKPofoUEBL8U4Ngq6aY7OE= |
| 279 | -github.com/ncruces/go-strftime v1.0.0 h1:HMFp8mLCTPp341M/ZnA4qaf7ZlsbTc+miZjCLOFAw7w= | |
| 280 | -github.com/ncruces/go-strftime v1.0.0/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= | |
| 281 | 292 | github.com/nishanths/exhaustive v0.12.0 h1:vIY9sALmw6T/yxiASewa4TQcFsVYZQQRUQJhKRf3Swg= |
| 282 | 293 | github.com/nishanths/exhaustive v0.12.0/go.mod h1:mEZ95wPIZW+x8kC4TgC+9YCUgiST7ecevsVDTgc2obs= |
| 283 | 294 | github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= |
| @@ -327,8 +338,6 @@ github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 h1:M8mH9eK4OUR4l | ||
| 327 | 338 | github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567/go.mod h1:DWNGW8A4Y+GyBgPuaQJuWiy0XYftx4Xm/y5Jqk9I6VQ= |
| 328 | 339 | github.com/raeperd/recvcheck v0.2.0 h1:GnU+NsbiCqdC2XX5+vMZzP+jAJC5fht7rcVTAhX74UI= |
| 329 | 340 | github.com/raeperd/recvcheck v0.2.0/go.mod h1:n04eYkwIR0JbgD73wT8wL4JjPC3wm0nFtzBnWNocnYU= |
| 330 | -github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= | |
| 331 | -github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= | |
| 332 | 341 | github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= |
| 333 | 342 | github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= |
| 334 | 343 | github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= |
| @@ -361,6 +370,8 @@ github.com/sonatard/noctx v0.1.0 h1:JjqOc2WN16ISWAjAk8M5ej0RfExEXtkEyExl2hLW+OM= | ||
| 361 | 370 | github.com/sonatard/noctx v0.1.0/go.mod h1:0RvBxqY8D4j9cTTTWE8ylt2vqj2EPI8fHmrxHdsaZ2c= |
| 362 | 371 | github.com/sourcegraph/go-diff v0.7.0 h1:9uLlrd5T46OXs5qpp8L/MTltk0zikUGi0sNNyCpA8G0= |
| 363 | 372 | github.com/sourcegraph/go-diff v0.7.0/go.mod h1:iBszgVvyxdc8SFZ7gm69go2KDdt3ag071iBaWPF6cjs= |
| 373 | +github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI= | |
| 374 | +github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= | |
| 364 | 375 | github.com/spf13/afero v1.12.0 h1:UcOPyRBYczmFn6yvphxkn9ZEOY65cpwGKb5mL36mrqs= |
| 365 | 376 | github.com/spf13/afero v1.12.0/go.mod h1:ZTlWwG4/ahT8W7T0WQ5uYmjI9duaLQGy3Q2OAl4sk/4= |
| 366 | 377 | github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= |
| @@ -419,6 +430,8 @@ github.com/uudashr/gocognit v1.2.0 h1:3BU9aMr1xbhPlvJLSydKwdLN3tEUUrzPSSM8S4hDYR | ||
| 419 | 430 | github.com/uudashr/gocognit v1.2.0/go.mod h1:k/DdKPI6XBZO1q7HgoV2juESI2/Ofj9AcHPZhBBdrTU= |
| 420 | 431 | github.com/uudashr/iface v1.3.1 h1:bA51vmVx1UIhiIsQFSNq6GZ6VPTk3WNMZgRiCe9R29U= |
| 421 | 432 | github.com/uudashr/iface v1.3.1/go.mod h1:4QvspiRd3JLPAEXBQ9AiZpLbJlrWWgRChOKDJEuQTdg= |
| 433 | +github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e h1:28X54ciEwwUxyHn9yrZfl5ojgF4CBNLWX7LR0rvBkf4= | |
| 434 | +github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e/go.mod h1:pM99HXyEbSQHcosHc0iW7YFmwnscr+t9Te4ibko05so= | |
| 422 | 435 | github.com/xen0n/gosmopolitan v1.2.2 h1:/p2KTnMzwRexIW8GlKawsTWOxn7UHA+jCMF/V8HHtvU= |
| 423 | 436 | github.com/xen0n/gosmopolitan v1.2.2/go.mod h1:7XX7Mj61uLYrj0qmeN0zi7XDon9JRAEhYQqAPLVNTeg= |
| 424 | 437 | github.com/yagipy/maintidx v1.0.0 h1:h5NvIsCz+nRDapQ0exNv4aJ0yXSI0420omVANTv3GJM= |
| @@ -582,6 +595,8 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T | ||
| 582 | 595 | golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= |
| 583 | 596 | golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= |
| 584 | 597 | golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= |
| 598 | +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= | |
| 599 | +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= | |
| 585 | 600 | google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM= |
| 586 | 601 | google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= |
| 587 | 602 | gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= |
| @@ -597,34 +612,8 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | ||
| 597 | 612 | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= |
| 598 | 613 | honnef.co/go/tools v0.6.1 h1:R094WgE8K4JirYjBaOpz/AvTyUu/3wbmAoskKN/pxTI= |
| 599 | 614 | honnef.co/go/tools v0.6.1/go.mod h1:3puzxxljPCe8RGJX7BIy1plGbxEOZni5mR2aXe3/uk4= |
| 600 | -modernc.org/cc/v4 v4.27.3 h1:uNCgn37E5U09mTv1XgskEVUJ8ADKpmFMPxzGJ0TSo+U= | |
| 601 | -modernc.org/cc/v4 v4.27.3/go.mod h1:3YjcbCqhoTTHPycJDRl2WZKKFj0nwcOIPBfEZK0Hdk8= | |
| 602 | -modernc.org/ccgo/v4 v4.32.4 h1:L5OB8rpEX4ZsXEQwGozRfJyJSFHbbNVOoQ59DU9/KuU= | |
| 603 | -modernc.org/ccgo/v4 v4.32.4/go.mod h1:lY7f+fiTDHfcv6YlRgSkxYfhs+UvOEEzj49jAn2TOx0= | |
| 604 | -modernc.org/fileutil v1.4.0 h1:j6ZzNTftVS054gi281TyLjHPp6CPHr2KCxEXjEbD6SM= | |
| 605 | -modernc.org/fileutil v1.4.0/go.mod h1:EqdKFDxiByqxLk8ozOxObDSfcVOv/54xDs/DUHdvCUU= | |
| 606 | -modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI= | |
| 607 | -modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito= | |
| 608 | -modernc.org/gc/v3 v3.1.2 h1:ZtDCnhonXSZexk/AYsegNRV1lJGgaNZJuKjJSWKyEqo= | |
| 609 | -modernc.org/gc/v3 v3.1.2/go.mod h1:HFK/6AGESC7Ex+EZJhJ2Gni6cTaYpSMmU/cT9RmlfYY= | |
| 610 | -modernc.org/goabi0 v0.2.0 h1:HvEowk7LxcPd0eq6mVOAEMai46V+i7Jrj13t4AzuNks= | |
| 611 | -modernc.org/goabi0 v0.2.0/go.mod h1:CEFRnnJhKvWT1c1JTI3Avm+tgOWbkOu5oPA8eH8LnMI= | |
| 612 | -modernc.org/libc v1.72.0 h1:IEu559v9a0XWjw0DPoVKtXpO2qt5NVLAnFaBbjq+n8c= | |
| 613 | -modernc.org/libc v1.72.0/go.mod h1:tTU8DL8A+XLVkEY3x5E/tO7s2Q/q42EtnNWda/L5QhQ= | |
| 614 | -modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU= | |
| 615 | -modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg= | |
| 616 | -modernc.org/memory v1.11.0 h1:o4QC8aMQzmcwCK3t3Ux/ZHmwFPzE6hf2Y5LbkRs+hbI= | |
| 617 | -modernc.org/memory v1.11.0/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw= | |
| 618 | -modernc.org/opt v0.1.4 h1:2kNGMRiUjrp4LcaPuLY2PzUfqM/w9N23quVwhKt5Qm8= | |
| 619 | -modernc.org/opt v0.1.4/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns= | |
| 620 | -modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w= | |
| 621 | -modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE= | |
| 622 | -modernc.org/sqlite v1.49.1 h1:dYGHTKcX1sJ+EQDnUzvz4TJ5GbuvhNJa8Fg6ElGx73U= | |
| 623 | -modernc.org/sqlite v1.49.1/go.mod h1:m0w8xhwYUVY3H6pSDwc3gkJ/irZT/0YEXwBlhaxQEew= | |
| 624 | -modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0= | |
| 625 | -modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A= | |
| 626 | -modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= | |
| 627 | -modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= | |
| 615 | +lukechampine.com/blake3 v1.2.1 h1:YuqqRuaqsGV71BV/nm9xlI0MKUv4QC54jQnBChWbGnI= | |
| 616 | +lukechampine.com/blake3 v1.2.1/go.mod h1:0OFRp7fBtAylGVCO40o87sbupkyIGgbpv1+M1k1LM6k= | |
| 628 | 617 | mvdan.cc/gofumpt v0.7.0 h1:bg91ttqXmi9y2xawvkuMXyvAA/1ZGJqYAEGjXuP0JXU= |
| 629 | 618 | mvdan.cc/gofumpt v0.7.0/go.mod h1:txVFJy/Sc/mvaycET54pV8SW8gWxTlUuGHVEcncmNUo= |
| 630 | 619 | mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f h1:lMpcwN6GxNbWtbpI1+xzFLSW8XzX0u72NttUGVFjO3U= |
| @@ -84,8 +84,6 @@ github.com/denis-tingaikin/go-header v0.5.0 h1:SRdnP5ZKvcO9KKRP1KJrhFR3RrlGuD+42 | |||
| 84 | github.com/denis-tingaikin/go-header v0.5.0/go.mod h1:mMenU5bWrok6Wl2UsZjy+1okegmwQ3UgWl4V1D8gjlY= | 84 | github.com/denis-tingaikin/go-header v0.5.0/go.mod h1:mMenU5bWrok6Wl2UsZjy+1okegmwQ3UgWl4V1D8gjlY= |
| 85 | github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= | 85 | github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= |
| 86 | github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8= | 86 | github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8= |
| 87 | -github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= | ||
| 88 | -github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= | ||
| 89 | github.com/earthboundkid/versioninfo/v2 v2.24.1 h1:SJTMHaoUx3GzjjnUO1QzP3ZXK6Ee/nbWyCm58eY3oUg= | 87 | github.com/earthboundkid/versioninfo/v2 v2.24.1 h1:SJTMHaoUx3GzjjnUO1QzP3ZXK6Ee/nbWyCm58eY3oUg= |
| 90 | github.com/earthboundkid/versioninfo/v2 v2.24.1/go.mod h1:VcWEooDEuyUJnMfbdTh0uFN4cfEIg+kHMuWB2CDCLjw= | 88 | github.com/earthboundkid/versioninfo/v2 v2.24.1/go.mod h1:VcWEooDEuyUJnMfbdTh0uFN4cfEIg+kHMuWB2CDCLjw= |
| 91 | github.com/ettle/strcase v0.2.0 h1:fGNiVF21fHXpX1niBgk0aROov1LagYsOwV/xqKDKR/Q= | 89 | github.com/ettle/strcase v0.2.0 h1:fGNiVF21fHXpX1niBgk0aROov1LagYsOwV/xqKDKR/Q= |
| @@ -143,7 +141,6 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= | |||
| 143 | github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= | 141 | github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= |
| 144 | github.com/gofrs/flock v0.12.1 h1:MTLVXXHf8ekldpJk3AKicLij9MdwOWkZ+a/jHHZby9E= | 142 | github.com/gofrs/flock v0.12.1 h1:MTLVXXHf8ekldpJk3AKicLij9MdwOWkZ+a/jHHZby9E= |
| 145 | github.com/gofrs/flock v0.12.1/go.mod h1:9zxTsyu5xtJ9DK+1tFZyibEV7y3uwDxPPfbxeeHCoD0= | 143 | github.com/gofrs/flock v0.12.1/go.mod h1:9zxTsyu5xtJ9DK+1tFZyibEV7y3uwDxPPfbxeeHCoD0= |
| 146 | -github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= | ||
| 147 | github.com/golang-jwt/jwt/v5 v5.2.2 h1:Rl4B7itRWVtYIHFrSNd7vhTiz9UpLdi6gZhZ3wEeDy8= | 144 | github.com/golang-jwt/jwt/v5 v5.2.2 h1:Rl4B7itRWVtYIHFrSNd7vhTiz9UpLdi6gZhZ3wEeDy8= |
| 148 | github.com/golang-jwt/jwt/v5 v5.2.2/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= | 145 | github.com/golang-jwt/jwt/v5 v5.2.2/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= |
| 149 | github.com/golangci/dupl v0.0.0-20250308024227-f665c8d69b32 h1:WUvBfQL6EW/40l6OmeSBYQJNSif4O11+bmWEz+C7FYw= | 146 | github.com/golangci/dupl v0.0.0-20250308024227-f665c8d69b32 h1:WUvBfQL6EW/40l6OmeSBYQJNSif4O11+bmWEz+C7FYw= |
| @@ -173,8 +170,6 @@ github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD | |||
| 173 | github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= | 170 | github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= |
| 174 | github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs= | 171 | github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs= |
| 175 | github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= | 172 | github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= |
| 176 | -github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= | ||
| 177 | -github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= | ||
| 178 | github.com/gordonklaus/ineffassign v0.1.0 h1:y2Gd/9I7MdY1oEIt+n+rowjBNDcLQq3RsH5hwJd0f9s= | 173 | github.com/gordonklaus/ineffassign v0.1.0 h1:y2Gd/9I7MdY1oEIt+n+rowjBNDcLQq3RsH5hwJd0f9s= |
| 179 | github.com/gordonklaus/ineffassign v0.1.0/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= | 174 | github.com/gordonklaus/ineffassign v0.1.0/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= |
| 180 | github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= | 175 | github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= |
| @@ -207,6 +202,8 @@ github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUq | |||
| 207 | github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= | 202 | github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= |
| 208 | github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= | 203 | github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= |
| 209 | github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= | 204 | github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= |
| 205 | +github.com/ipfs/go-cid v0.4.1 h1:A/T3qGvxi4kpKWWcPC/PgbvDA2bjVLO7n4UeVwnbs/s= | ||
| 206 | +github.com/ipfs/go-cid v0.4.1/go.mod h1:uQHwDeX4c6CtyrFwdqyhpNcxVewur1M7l7fNU7LKwZk= | ||
| 210 | github.com/jgautheron/goconst v1.7.1 h1:VpdAG7Ca7yvvJk5n8dMwQhfEZJh95kl/Hl9S1OI5Jkk= | 207 | github.com/jgautheron/goconst v1.7.1 h1:VpdAG7Ca7yvvJk5n8dMwQhfEZJh95kl/Hl9S1OI5Jkk= |
| 211 | github.com/jgautheron/goconst v1.7.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4= | 208 | github.com/jgautheron/goconst v1.7.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4= |
| 212 | github.com/jingyugao/rowserrcheck v1.1.1 h1:zibz55j/MJtLsjP1OF4bSdgXxwL1b+Vn7Tjzq7gFzUs= | 209 | github.com/jingyugao/rowserrcheck v1.1.1 h1:zibz55j/MJtLsjP1OF4bSdgXxwL1b+Vn7Tjzq7gFzUs= |
| @@ -221,6 +218,8 @@ github.com/kisielk/errcheck v1.9.0 h1:9xt1zI9EBfcYBvdU1nVrzMzzUPUtPKs9bVSIM3TAb3 | |||
| 221 | github.com/kisielk/errcheck v1.9.0/go.mod h1:kQxWMMVZgIkDq7U8xtG/n2juOjbLgZtedi0D+/VL/i8= | 218 | github.com/kisielk/errcheck v1.9.0/go.mod h1:kQxWMMVZgIkDq7U8xtG/n2juOjbLgZtedi0D+/VL/i8= |
| 222 | github.com/kkHAIKE/contextcheck v1.1.6 h1:7HIyRcnyzxL9Lz06NGhiKvenXq7Zw6Q0UQu/ttjfJCE= | 219 | github.com/kkHAIKE/contextcheck v1.1.6 h1:7HIyRcnyzxL9Lz06NGhiKvenXq7Zw6Q0UQu/ttjfJCE= |
| 223 | github.com/kkHAIKE/contextcheck v1.1.6/go.mod h1:3dDbMRNBFaq8HFXWC1JyvDSPm43CmE6IuHam8Wr0rkg= | 220 | github.com/kkHAIKE/contextcheck v1.1.6/go.mod h1:3dDbMRNBFaq8HFXWC1JyvDSPm43CmE6IuHam8Wr0rkg= |
| 221 | +github.com/klauspost/cpuid/v2 v2.2.7 h1:ZWSB3igEs+d0qvnxR/ZBzXVmxkgt8DdzP6m9pfuVLDM= | ||
| 222 | +github.com/klauspost/cpuid/v2 v2.2.7/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= | ||
| 224 | github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= | 223 | github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= |
| 225 | github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= | 224 | github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= |
| 226 | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | 225 | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= |
| @@ -262,10 +261,14 @@ github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D | |||
| 262 | github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= | 261 | github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= |
| 263 | github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= | 262 | github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= |
| 264 | github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= | 263 | github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= |
| 264 | +github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= | ||
| 265 | +github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= | ||
| 265 | github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= | 266 | github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= |
| 266 | github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= | 267 | github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= |
| 267 | github.com/mgechev/revive v1.7.0 h1:JyeQ4yO5K8aZhIKf5rec56u0376h8AlKNQEmjfkjKlY= | 268 | github.com/mgechev/revive v1.7.0 h1:JyeQ4yO5K8aZhIKf5rec56u0376h8AlKNQEmjfkjKlY= |
| 268 | github.com/mgechev/revive v1.7.0/go.mod h1:qZnwcNhoguE58dfi96IJeSTPeZQejNeoMQLUZGi4SW4= | 269 | github.com/mgechev/revive v1.7.0/go.mod h1:qZnwcNhoguE58dfi96IJeSTPeZQejNeoMQLUZGi4SW4= |
| 270 | +github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM= | ||
| 271 | +github.com/minio/sha256-simd v1.0.1/go.mod h1:Pz6AKMiUdngCLpeTL/RJY1M9rUuPMYujV5xJjtbRSN8= | ||
| 269 | github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= | 272 | github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= |
| 270 | github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= | 273 | github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= |
| 271 | github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= | 274 | github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= |
| @@ -274,10 +277,18 @@ github.com/moricho/tparallel v0.3.2 h1:odr8aZVFA3NZrNybggMkYO3rgPRcqjeQUlBBFVxKH | |||
| 274 | github.com/moricho/tparallel v0.3.2/go.mod h1:OQ+K3b4Ln3l2TZveGCywybl68glfLEwFGqvnjok8b+U= | 277 | github.com/moricho/tparallel v0.3.2/go.mod h1:OQ+K3b4Ln3l2TZveGCywybl68glfLEwFGqvnjok8b+U= |
| 275 | github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= | 278 | github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= |
| 276 | github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= | 279 | github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= |
| 280 | +github.com/multiformats/go-base32 v0.1.0 h1:pVx9xoSPqEIQG8o+UbAe7DNi51oej1NtK+aGkbLYxPE= | ||
| 281 | +github.com/multiformats/go-base32 v0.1.0/go.mod h1:Kj3tFY6zNr+ABYMqeUNeGvkIC/UYgtWibDcT0rExnbI= | ||
| 282 | +github.com/multiformats/go-base36 v0.2.0 h1:lFsAbNOGeKtuKozrtBsAkSVhv1p9D0/qedU9rQyccr0= | ||
| 283 | +github.com/multiformats/go-base36 v0.2.0/go.mod h1:qvnKE++v+2MWCfePClUEjE78Z7P2a1UV0xHgWc0hkp4= | ||
| 284 | +github.com/multiformats/go-multibase v0.2.0 h1:isdYCVLvksgWlMW9OZRYJEa9pZETFivncJHmHnnd87g= | ||
| 285 | +github.com/multiformats/go-multibase v0.2.0/go.mod h1:bFBZX4lKCA/2lyOFSAoKH5SS6oPyjtnzK/XTFDPkNuk= | ||
| 286 | +github.com/multiformats/go-multihash v0.2.3 h1:7Lyc8XfX/IY2jWb/gI7JP+o7JEq9hOa7BFvVU9RSh+U= | ||
| 287 | +github.com/multiformats/go-multihash v0.2.3/go.mod h1:dXgKXCXjBzdscBLk9JkjINiEsCKRVch90MdaGiKsvSM= | ||
| 288 | +github.com/multiformats/go-varint v0.0.7 h1:sWSGR+f/eu5ABZA2ZpYKBILXTTs9JWpdEM/nEGOHFS8= | ||
| 289 | +github.com/multiformats/go-varint v0.0.7/go.mod h1:r8PUYw/fD/SjBCiKOoDlGF6QawOELpZAu9eioSos/OU= | ||
| 277 | github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U= | 290 | github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U= |
| 278 | github.com/nakabonne/nestif v0.3.1/go.mod h1:9EtoZochLn5iUprVDmDjqGKPofoUEBL8U4Ngq6aY7OE= | 291 | github.com/nakabonne/nestif v0.3.1/go.mod h1:9EtoZochLn5iUprVDmDjqGKPofoUEBL8U4Ngq6aY7OE= |
| 279 | -github.com/ncruces/go-strftime v1.0.0 h1:HMFp8mLCTPp341M/ZnA4qaf7ZlsbTc+miZjCLOFAw7w= | ||
| 280 | -github.com/ncruces/go-strftime v1.0.0/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= | ||
| 281 | github.com/nishanths/exhaustive v0.12.0 h1:vIY9sALmw6T/yxiASewa4TQcFsVYZQQRUQJhKRf3Swg= | 292 | github.com/nishanths/exhaustive v0.12.0 h1:vIY9sALmw6T/yxiASewa4TQcFsVYZQQRUQJhKRf3Swg= |
| 282 | github.com/nishanths/exhaustive v0.12.0/go.mod h1:mEZ95wPIZW+x8kC4TgC+9YCUgiST7ecevsVDTgc2obs= | 293 | github.com/nishanths/exhaustive v0.12.0/go.mod h1:mEZ95wPIZW+x8kC4TgC+9YCUgiST7ecevsVDTgc2obs= |
| 283 | github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= | 294 | github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= |
| @@ -327,8 +338,6 @@ github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 h1:M8mH9eK4OUR4l | |||
| 327 | github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567/go.mod h1:DWNGW8A4Y+GyBgPuaQJuWiy0XYftx4Xm/y5Jqk9I6VQ= | 338 | github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567/go.mod h1:DWNGW8A4Y+GyBgPuaQJuWiy0XYftx4Xm/y5Jqk9I6VQ= |
| 328 | github.com/raeperd/recvcheck v0.2.0 h1:GnU+NsbiCqdC2XX5+vMZzP+jAJC5fht7rcVTAhX74UI= | 339 | github.com/raeperd/recvcheck v0.2.0 h1:GnU+NsbiCqdC2XX5+vMZzP+jAJC5fht7rcVTAhX74UI= |
| 329 | github.com/raeperd/recvcheck v0.2.0/go.mod h1:n04eYkwIR0JbgD73wT8wL4JjPC3wm0nFtzBnWNocnYU= | 340 | github.com/raeperd/recvcheck v0.2.0/go.mod h1:n04eYkwIR0JbgD73wT8wL4JjPC3wm0nFtzBnWNocnYU= |
| 330 | -github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= | ||
| 331 | -github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= | ||
| 332 | github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= | 341 | github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= |
| 333 | github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= | 342 | github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= |
| 334 | github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= | 343 | github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= |
| @@ -361,6 +370,8 @@ github.com/sonatard/noctx v0.1.0 h1:JjqOc2WN16ISWAjAk8M5ej0RfExEXtkEyExl2hLW+OM= | |||
| 361 | github.com/sonatard/noctx v0.1.0/go.mod h1:0RvBxqY8D4j9cTTTWE8ylt2vqj2EPI8fHmrxHdsaZ2c= | 370 | github.com/sonatard/noctx v0.1.0/go.mod h1:0RvBxqY8D4j9cTTTWE8ylt2vqj2EPI8fHmrxHdsaZ2c= |
| 362 | github.com/sourcegraph/go-diff v0.7.0 h1:9uLlrd5T46OXs5qpp8L/MTltk0zikUGi0sNNyCpA8G0= | 371 | github.com/sourcegraph/go-diff v0.7.0 h1:9uLlrd5T46OXs5qpp8L/MTltk0zikUGi0sNNyCpA8G0= |
| 363 | github.com/sourcegraph/go-diff v0.7.0/go.mod h1:iBszgVvyxdc8SFZ7gm69go2KDdt3ag071iBaWPF6cjs= | 372 | github.com/sourcegraph/go-diff v0.7.0/go.mod h1:iBszgVvyxdc8SFZ7gm69go2KDdt3ag071iBaWPF6cjs= |
| 373 | +github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI= | ||
| 374 | +github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= | ||
| 364 | github.com/spf13/afero v1.12.0 h1:UcOPyRBYczmFn6yvphxkn9ZEOY65cpwGKb5mL36mrqs= | 375 | github.com/spf13/afero v1.12.0 h1:UcOPyRBYczmFn6yvphxkn9ZEOY65cpwGKb5mL36mrqs= |
| 365 | github.com/spf13/afero v1.12.0/go.mod h1:ZTlWwG4/ahT8W7T0WQ5uYmjI9duaLQGy3Q2OAl4sk/4= | 376 | github.com/spf13/afero v1.12.0/go.mod h1:ZTlWwG4/ahT8W7T0WQ5uYmjI9duaLQGy3Q2OAl4sk/4= |
| 366 | github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= | 377 | github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= |
| @@ -419,6 +430,8 @@ github.com/uudashr/gocognit v1.2.0 h1:3BU9aMr1xbhPlvJLSydKwdLN3tEUUrzPSSM8S4hDYR | |||
| 419 | github.com/uudashr/gocognit v1.2.0/go.mod h1:k/DdKPI6XBZO1q7HgoV2juESI2/Ofj9AcHPZhBBdrTU= | 430 | github.com/uudashr/gocognit v1.2.0/go.mod h1:k/DdKPI6XBZO1q7HgoV2juESI2/Ofj9AcHPZhBBdrTU= |
| 420 | github.com/uudashr/iface v1.3.1 h1:bA51vmVx1UIhiIsQFSNq6GZ6VPTk3WNMZgRiCe9R29U= | 431 | github.com/uudashr/iface v1.3.1 h1:bA51vmVx1UIhiIsQFSNq6GZ6VPTk3WNMZgRiCe9R29U= |
| 421 | github.com/uudashr/iface v1.3.1/go.mod h1:4QvspiRd3JLPAEXBQ9AiZpLbJlrWWgRChOKDJEuQTdg= | 432 | github.com/uudashr/iface v1.3.1/go.mod h1:4QvspiRd3JLPAEXBQ9AiZpLbJlrWWgRChOKDJEuQTdg= |
| 433 | +github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e h1:28X54ciEwwUxyHn9yrZfl5ojgF4CBNLWX7LR0rvBkf4= | ||
| 434 | +github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e/go.mod h1:pM99HXyEbSQHcosHc0iW7YFmwnscr+t9Te4ibko05so= | ||
| 422 | github.com/xen0n/gosmopolitan v1.2.2 h1:/p2KTnMzwRexIW8GlKawsTWOxn7UHA+jCMF/V8HHtvU= | 435 | github.com/xen0n/gosmopolitan v1.2.2 h1:/p2KTnMzwRexIW8GlKawsTWOxn7UHA+jCMF/V8HHtvU= |
| 423 | github.com/xen0n/gosmopolitan v1.2.2/go.mod h1:7XX7Mj61uLYrj0qmeN0zi7XDon9JRAEhYQqAPLVNTeg= | 436 | github.com/xen0n/gosmopolitan v1.2.2/go.mod h1:7XX7Mj61uLYrj0qmeN0zi7XDon9JRAEhYQqAPLVNTeg= |
| 424 | github.com/yagipy/maintidx v1.0.0 h1:h5NvIsCz+nRDapQ0exNv4aJ0yXSI0420omVANTv3GJM= | 437 | github.com/yagipy/maintidx v1.0.0 h1:h5NvIsCz+nRDapQ0exNv4aJ0yXSI0420omVANTv3GJM= |
| @@ -582,6 +595,8 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T | |||
| 582 | golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | 595 | golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= |
| 583 | golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | 596 | golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= |
| 584 | golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | 597 | golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= |
| 598 | +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= | ||
| 599 | +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= | ||
| 585 | google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM= | 600 | google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM= |
| 586 | google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= | 601 | google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= |
| 587 | gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | 602 | gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= |
| @@ -597,34 +612,8 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= | |||
| 597 | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= | 612 | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= |
| 598 | honnef.co/go/tools v0.6.1 h1:R094WgE8K4JirYjBaOpz/AvTyUu/3wbmAoskKN/pxTI= | 613 | honnef.co/go/tools v0.6.1 h1:R094WgE8K4JirYjBaOpz/AvTyUu/3wbmAoskKN/pxTI= |
| 599 | honnef.co/go/tools v0.6.1/go.mod h1:3puzxxljPCe8RGJX7BIy1plGbxEOZni5mR2aXe3/uk4= | 614 | honnef.co/go/tools v0.6.1/go.mod h1:3puzxxljPCe8RGJX7BIy1plGbxEOZni5mR2aXe3/uk4= |
| 600 | -modernc.org/cc/v4 v4.27.3 h1:uNCgn37E5U09mTv1XgskEVUJ8ADKpmFMPxzGJ0TSo+U= | 615 | +lukechampine.com/blake3 v1.2.1 h1:YuqqRuaqsGV71BV/nm9xlI0MKUv4QC54jQnBChWbGnI= |
| 601 | -modernc.org/cc/v4 v4.27.3/go.mod h1:3YjcbCqhoTTHPycJDRl2WZKKFj0nwcOIPBfEZK0Hdk8= | 616 | +lukechampine.com/blake3 v1.2.1/go.mod h1:0OFRp7fBtAylGVCO40o87sbupkyIGgbpv1+M1k1LM6k= |
| 602 | -modernc.org/ccgo/v4 v4.32.4 h1:L5OB8rpEX4ZsXEQwGozRfJyJSFHbbNVOoQ59DU9/KuU= | ||
| 603 | -modernc.org/ccgo/v4 v4.32.4/go.mod h1:lY7f+fiTDHfcv6YlRgSkxYfhs+UvOEEzj49jAn2TOx0= | ||
| 604 | -modernc.org/fileutil v1.4.0 h1:j6ZzNTftVS054gi281TyLjHPp6CPHr2KCxEXjEbD6SM= | ||
| 605 | -modernc.org/fileutil v1.4.0/go.mod h1:EqdKFDxiByqxLk8ozOxObDSfcVOv/54xDs/DUHdvCUU= | ||
| 606 | -modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI= | ||
| 607 | -modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito= | ||
| 608 | -modernc.org/gc/v3 v3.1.2 h1:ZtDCnhonXSZexk/AYsegNRV1lJGgaNZJuKjJSWKyEqo= | ||
| 609 | -modernc.org/gc/v3 v3.1.2/go.mod h1:HFK/6AGESC7Ex+EZJhJ2Gni6cTaYpSMmU/cT9RmlfYY= | ||
| 610 | -modernc.org/goabi0 v0.2.0 h1:HvEowk7LxcPd0eq6mVOAEMai46V+i7Jrj13t4AzuNks= | ||
| 611 | -modernc.org/goabi0 v0.2.0/go.mod h1:CEFRnnJhKvWT1c1JTI3Avm+tgOWbkOu5oPA8eH8LnMI= | ||
| 612 | -modernc.org/libc v1.72.0 h1:IEu559v9a0XWjw0DPoVKtXpO2qt5NVLAnFaBbjq+n8c= | ||
| 613 | -modernc.org/libc v1.72.0/go.mod h1:tTU8DL8A+XLVkEY3x5E/tO7s2Q/q42EtnNWda/L5QhQ= | ||
| 614 | -modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU= | ||
| 615 | -modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg= | ||
| 616 | -modernc.org/memory v1.11.0 h1:o4QC8aMQzmcwCK3t3Ux/ZHmwFPzE6hf2Y5LbkRs+hbI= | ||
| 617 | -modernc.org/memory v1.11.0/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw= | ||
| 618 | -modernc.org/opt v0.1.4 h1:2kNGMRiUjrp4LcaPuLY2PzUfqM/w9N23quVwhKt5Qm8= | ||
| 619 | -modernc.org/opt v0.1.4/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns= | ||
| 620 | -modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w= | ||
| 621 | -modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE= | ||
| 622 | -modernc.org/sqlite v1.49.1 h1:dYGHTKcX1sJ+EQDnUzvz4TJ5GbuvhNJa8Fg6ElGx73U= | ||
| 623 | -modernc.org/sqlite v1.49.1/go.mod h1:m0w8xhwYUVY3H6pSDwc3gkJ/irZT/0YEXwBlhaxQEew= | ||
| 624 | -modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0= | ||
| 625 | -modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A= | ||
| 626 | -modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= | ||
| 627 | -modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= | ||
| 628 | mvdan.cc/gofumpt v0.7.0 h1:bg91ttqXmi9y2xawvkuMXyvAA/1ZGJqYAEGjXuP0JXU= | 617 | mvdan.cc/gofumpt v0.7.0 h1:bg91ttqXmi9y2xawvkuMXyvAA/1ZGJqYAEGjXuP0JXU= |
| 629 | mvdan.cc/gofumpt v0.7.0/go.mod h1:txVFJy/Sc/mvaycET54pV8SW8gWxTlUuGHVEcncmNUo= | 618 | mvdan.cc/gofumpt v0.7.0/go.mod h1:txVFJy/Sc/mvaycET54pV8SW8gWxTlUuGHVEcncmNUo= |
| 630 | mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f h1:lMpcwN6GxNbWtbpI1+xzFLSW8XzX0u72NttUGVFjO3U= | 619 | mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f h1:lMpcwN6GxNbWtbpI1+xzFLSW8XzX0u72NttUGVFjO3U= |
modified
internal/db/db.go +2 -2 | @@ -2,7 +2,7 @@ package db | ||
| 2 | 2 | |
| 3 | 3 | import ( |
| 4 | 4 | "database/sql" |
| 5 | - _ "modernc.org/sqlite" | |
| 5 | + _ "github.com/mattn/go-sqlite3" | |
| 6 | 6 | ) |
| 7 | 7 | |
| 8 | 8 | type DB struct { |
| @@ -10,7 +10,7 @@ type DB struct { | ||
| 10 | 10 | } |
| 11 | 11 | |
| 12 | 12 | func Open(path string) (*DB, error) { |
| 13 | - db, err := sql.Open("sqlite", path) | |
| 13 | + db, err := sql.Open("sqlite3", path) | |
| 14 | 14 | if err != nil { |
| 15 | 15 | return nil, err |
| 16 | 16 | } |
| @@ -2,7 +2,7 @@ package db | |||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "database/sql" | 4 | "database/sql" |
| 5 | - _ "modernc.org/sqlite" | 5 | + _ "github.com/mattn/go-sqlite3" |
| 6 | ) | 6 | ) |
| 7 | 7 | ||
| 8 | type DB struct { | 8 | type DB struct { |
| @@ -10,7 +10,7 @@ type DB struct { | |||
| 10 | } | 10 | } |
| 11 | 11 | ||
| 12 | func Open(path string) (*DB, error) { | 12 | func Open(path string) (*DB, error) { |
| 13 | - db, err := sql.Open("sqlite", path) | 13 | + db, err := sql.Open("sqlite3", path) |
| 14 | if err != nil { | 14 | if err != nil { |
| 15 | return nil, err | 15 | return nil, err |
| 16 | } | 16 | } |
modified
internal/tmpl/annotations.html +3 -1 | @@ -1,7 +1,9 @@ | ||
| 1 | 1 | {{define "annotations.html"}} |
| 2 | -<div class="flex items-center justify-between mb-6"> | |
| 2 | +<div class="flex items-center justify-between mb-2"> | |
| 3 | 3 | <h1 class="text-2xl font-bold text-spot-text">Annotations</h1> |
| 4 | + <div></div> | |
| 4 | 5 | </div> |
| 6 | +<p class="text-sm text-spot-secondary mb-6">Notes and highlights from across your reading.</p> | |
| 5 | 7 | |
| 6 | 8 | {{if .ArticleURL}} |
| 7 | 9 | <div class="mb-4 text-sm text-spot-secondary"> |
| @@ -1,7 +1,9 @@ | |||
| 1 | {{define "annotations.html"}} | 1 | {{define "annotations.html"}} |
| 2 | -<div class="flex items-center justify-between mb-6"> | 2 | +<div class="flex items-center justify-between mb-2"> |
| 3 | <h1 class="text-2xl font-bold text-spot-text">Annotations</h1> | 3 | <h1 class="text-2xl font-bold text-spot-text">Annotations</h1> |
| 4 | + <div></div> | ||
| 4 | </div> | 5 | </div> |
| 6 | +<p class="text-sm text-spot-secondary mb-6">Notes and highlights from across your reading.</p> | ||
| 5 | 7 | ||
| 6 | {{if .ArticleURL}} | 8 | {{if .ArticleURL}} |
| 7 | <div class="mb-4 text-sm text-spot-secondary"> | 9 | <div class="mb-4 text-sm text-spot-secondary"> |
modified
internal/tmpl/articles.html +2 -1 | @@ -1,5 +1,5 @@ | ||
| 1 | 1 | {{define "articles.html"}} |
| 2 | - <div class="flex items-center justify-between mb-6"> | |
| 2 | + <div class="flex items-center justify-between mb-2"> | |
| 3 | 3 | <h1 class="text-2xl font-bold text-spot-text">Articles</h1> |
| 4 | 4 | <form hx-post="/articles/mark-all-read" hx-confirm="Mark all articles as read?"> |
| 5 | 5 | {{csrfInput .CSRFToken}} |
| @@ -7,6 +7,7 @@ | ||
| 7 | 7 | <button type="submit" class="border border-spot-outline text-spot-text rounded-pill px-4 py-1.5 text-xs font-bold uppercase tracking-button hover:border-spot-text transition">Mark all read</button> |
| 8 | 8 | </form> |
| 9 | 9 | </div> |
| 10 | + <p class="text-sm text-spot-secondary mb-6">All your subscribed articles, newest first.</p> | |
| 10 | 11 | |
| 11 | 12 | <div id="article-list" class="space-y-3"> |
| 12 | 13 | {{range .Articles}} |
| @@ -1,5 +1,5 @@ | |||
| 1 | {{define "articles.html"}} | 1 | {{define "articles.html"}} |
| 2 | - <div class="flex items-center justify-between mb-6"> | 2 | + <div class="flex items-center justify-between mb-2"> |
| 3 | <h1 class="text-2xl font-bold text-spot-text">Articles</h1> | 3 | <h1 class="text-2xl font-bold text-spot-text">Articles</h1> |
| 4 | <form hx-post="/articles/mark-all-read" hx-confirm="Mark all articles as read?"> | 4 | <form hx-post="/articles/mark-all-read" hx-confirm="Mark all articles as read?"> |
| 5 | {{csrfInput .CSRFToken}} | 5 | {{csrfInput .CSRFToken}} |
| @@ -7,6 +7,7 @@ | |||
| 7 | <button type="submit" class="border border-spot-outline text-spot-text rounded-pill px-4 py-1.5 text-xs font-bold uppercase tracking-button hover:border-spot-text transition">Mark all read</button> | 7 | <button type="submit" class="border border-spot-outline text-spot-text rounded-pill px-4 py-1.5 text-xs font-bold uppercase tracking-button hover:border-spot-text transition">Mark all read</button> |
| 8 | </form> | 8 | </form> |
| 9 | </div> | 9 | </div> |
| 10 | + <p class="text-sm text-spot-secondary mb-6">All your subscribed articles, newest first.</p> | ||
| 10 | 11 | ||
| 11 | <div id="article-list" class="space-y-3"> | 12 | <div id="article-list" class="space-y-3"> |
| 12 | {{range .Articles}} | 13 | {{range .Articles}} |
modified
internal/tmpl/dashboard.html +9 -8 | @@ -1,14 +1,15 @@ | ||
| 1 | 1 | {{define "dashboard.html"}} |
| 2 | +<div class="flex items-center justify-between mb-2"> | |
| 3 | + <h1 class="text-2xl font-bold text-spot-text">Dashboard</h1> | |
| 4 | + <div class="flex gap-4 text-sm"> | |
| 5 | + <span class="text-spot-secondary"><strong class="text-spot-text">{{.UnreadCount}}</strong> unread</span> | |
| 6 | + <span class="text-spot-secondary"><strong class="text-spot-text">{{.SubscriptionCount}}</strong> feeds</span> | |
| 7 | + </div> | |
| 8 | +</div> | |
| 9 | +<p class="text-sm text-spot-secondary mb-6">Your recent unread articles and activity.</p> | |
| 10 | + | |
| 2 | 11 | <div class="grid grid-cols-1 lg:grid-cols-3 gap-6"> |
| 3 | 12 | <div class="lg:col-span-2"> |
| 4 | - <div class="flex items-center justify-between mb-6"> | |
| 5 | - <h1 class="text-2xl font-bold text-spot-text">Dashboard</h1> | |
| 6 | - <div class="flex gap-4 text-sm"> | |
| 7 | - <span class="text-spot-secondary"><strong class="text-spot-text">{{.UnreadCount}}</strong> unread</span> | |
| 8 | - <span class="text-spot-secondary"><strong class="text-spot-text">{{.SubscriptionCount}}</strong> feeds</span> | |
| 9 | - </div> | |
| 10 | - </div> | |
| 11 | - | |
| 12 | 13 | <div class="space-y-3"> |
| 13 | 14 | {{range .Articles}} |
| 14 | 15 | {{template "article-card.html" .}} |
| @@ -1,14 +1,15 @@ | |||
| 1 | {{define "dashboard.html"}} | 1 | {{define "dashboard.html"}} |
| 2 | +<div class="flex items-center justify-between mb-2"> | ||
| 3 | + <h1 class="text-2xl font-bold text-spot-text">Dashboard</h1> | ||
| 4 | + <div class="flex gap-4 text-sm"> | ||
| 5 | + <span class="text-spot-secondary"><strong class="text-spot-text">{{.UnreadCount}}</strong> unread</span> | ||
| 6 | + <span class="text-spot-secondary"><strong class="text-spot-text">{{.SubscriptionCount}}</strong> feeds</span> | ||
| 7 | + </div> | ||
| 8 | +</div> | ||
| 9 | +<p class="text-sm text-spot-secondary mb-6">Your recent unread articles and activity.</p> | ||
| 10 | + | ||
| 2 | <div class="grid grid-cols-1 lg:grid-cols-3 gap-6"> | 11 | <div class="grid grid-cols-1 lg:grid-cols-3 gap-6"> |
| 3 | <div class="lg:col-span-2"> | 12 | <div class="lg:col-span-2"> |
| 4 | - <div class="flex items-center justify-between mb-6"> | ||
| 5 | - <h1 class="text-2xl font-bold text-spot-text">Dashboard</h1> | ||
| 6 | - <div class="flex gap-4 text-sm"> | ||
| 7 | - <span class="text-spot-secondary"><strong class="text-spot-text">{{.UnreadCount}}</strong> unread</span> | ||
| 8 | - <span class="text-spot-secondary"><strong class="text-spot-text">{{.SubscriptionCount}}</strong> feeds</span> | ||
| 9 | - </div> | ||
| 10 | - </div> | ||
| 11 | - | ||
| 12 | <div class="space-y-3"> | 13 | <div class="space-y-3"> |
| 13 | {{range .Articles}} | 14 | {{range .Articles}} |
| 14 | {{template "article-card.html" .}} | 15 | {{template "article-card.html" .}} |
modified
internal/tmpl/discover.html +3 -1 | @@ -1,7 +1,9 @@ | ||
| 1 | 1 | {{define "discover.html"}} |
| 2 | -<div class="flex items-center justify-between mb-6"> | |
| 2 | +<div class="flex items-center justify-between mb-2"> | |
| 3 | 3 | <h1 class="text-2xl font-bold text-spot-text">Discover</h1> |
| 4 | + <div></div> | |
| 4 | 5 | </div> |
| 6 | +<p class="text-sm text-spot-secondary mb-6">Recommended feeds, articles, and readers based on your activity.</p> | |
| 5 | 7 | |
| 6 | 8 | {{if .ArticleRecommendations}} |
| 7 | 9 | <div class="mb-8"> |
| @@ -1,7 +1,9 @@ | |||
| 1 | {{define "discover.html"}} | 1 | {{define "discover.html"}} |
| 2 | -<div class="flex items-center justify-between mb-6"> | 2 | +<div class="flex items-center justify-between mb-2"> |
| 3 | <h1 class="text-2xl font-bold text-spot-text">Discover</h1> | 3 | <h1 class="text-2xl font-bold text-spot-text">Discover</h1> |
| 4 | + <div></div> | ||
| 4 | </div> | 5 | </div> |
| 6 | +<p class="text-sm text-spot-secondary mb-6">Recommended feeds, articles, and readers based on your activity.</p> | ||
| 5 | 7 | ||
| 6 | {{if .ArticleRecommendations}} | 8 | {{if .ArticleRecommendations}} |
| 7 | <div class="mb-8"> | 9 | <div class="mb-8"> |
modified
internal/tmpl/feeds.html +2 -1 | @@ -1,5 +1,5 @@ | ||
| 1 | 1 | {{define "feeds.html"}} |
| 2 | -<div class="flex items-center justify-between mb-6"> | |
| 2 | +<div class="flex items-center justify-between mb-2"> | |
| 3 | 3 | <h1 class="text-2xl font-bold text-spot-text">Feeds</h1> |
| 4 | 4 | <div class="flex items-center gap-3"> |
| 5 | 5 | <button hx-post="/feeds/refresh" hx-target="#feed-list" hx-swap="innerHTML" |
| @@ -10,6 +10,7 @@ | ||
| 10 | 10 | <span id="refresh-indicator" class="htmx-indicator text-sm text-spot-secondary">Fetching...</span> |
| 11 | 11 | </div> |
| 12 | 12 | </div> |
| 13 | +<p class="text-sm text-spot-secondary mb-6">Manage your RSS and Atom subscriptions.</p> | |
| 13 | 14 | |
| 14 | 15 | {{if .DeadFeeds}} |
| 15 | 16 | <div class="bg-spot-red/10 border border-spot-red/30 rounded-lg p-4 mb-6"> |
| @@ -1,5 +1,5 @@ | |||
| 1 | {{define "feeds.html"}} | 1 | {{define "feeds.html"}} |
| 2 | -<div class="flex items-center justify-between mb-6"> | 2 | +<div class="flex items-center justify-between mb-2"> |
| 3 | <h1 class="text-2xl font-bold text-spot-text">Feeds</h1> | 3 | <h1 class="text-2xl font-bold text-spot-text">Feeds</h1> |
| 4 | <div class="flex items-center gap-3"> | 4 | <div class="flex items-center gap-3"> |
| 5 | <button hx-post="/feeds/refresh" hx-target="#feed-list" hx-swap="innerHTML" | 5 | <button hx-post="/feeds/refresh" hx-target="#feed-list" hx-swap="innerHTML" |
| @@ -10,6 +10,7 @@ | |||
| 10 | <span id="refresh-indicator" class="htmx-indicator text-sm text-spot-secondary">Fetching...</span> | 10 | <span id="refresh-indicator" class="htmx-indicator text-sm text-spot-secondary">Fetching...</span> |
| 11 | </div> | 11 | </div> |
| 12 | </div> | 12 | </div> |
| 13 | +<p class="text-sm text-spot-secondary mb-6">Manage your RSS and Atom subscriptions.</p> | ||
| 13 | 14 | ||
| 14 | {{if .DeadFeeds}} | 15 | {{if .DeadFeeds}} |
| 15 | <div class="bg-spot-red/10 border border-spot-red/30 rounded-lg p-4 mb-6"> | 16 | <div class="bg-spot-red/10 border border-spot-red/30 rounded-lg p-4 mb-6"> |
modified
internal/tmpl/index.html +27 -34 | @@ -1,13 +1,6 @@ | ||
| 1 | 1 | {{define "index.html"}} |
| 2 | 2 | <style> |
| 3 | 3 | .landing-hero { padding-top: 6rem; padding-bottom: 4rem; } |
| 4 | -.landing-feed { display: flex; flex-direction: column; gap: 1px; } | |
| 5 | -.landing-item { transition: background 0.15s; } | |
| 6 | -.landing-item:hover { background: var(--spot-hover); } | |
| 7 | -.feed-line { height: 10px; border-radius: 5px; } | |
| 8 | -.feed-line-short { width: 40%; } | |
| 9 | -.feed-line-medium { width: 65%; } | |
| 10 | -.feed-dot { width: 8px; height: 8px; border-radius: 50%; } | |
| 11 | 4 | @media (min-width: 768px) { .landing-hero { padding-top: 8rem; padding-bottom: 6rem; } } |
| 12 | 5 | </style> |
| 13 | 6 | |
| @@ -46,60 +39,60 @@ | ||
| 46 | 39 | <div class="hidden lg:block"> |
| 47 | 40 | <div class="bg-spot-surface rounded-xl shadow-spot overflow-hidden"> |
| 48 | 41 | <div class="px-5 py-3 border-b border-spot-divider flex items-center gap-2"> |
| 49 | - <div class="feed-dot bg-spot-red/60"></div> | |
| 50 | - <div class="feed-dot bg-spot-orange/60"></div> | |
| 51 | - <div class="feed-dot bg-spot-green/60"></div> | |
| 42 | + <div class="w-2 h-2 rounded-full bg-spot-red"></div> | |
| 43 | + <div class="w-2 h-2 rounded-full bg-spot-orange"></div> | |
| 44 | + <div class="w-2 h-2 rounded-full bg-spot-green"></div> | |
| 52 | 45 | <span class="text-xs text-spot-muted ml-3">Dashboard</span> |
| 53 | 46 | </div> |
| 54 | - <div class="landing-feed p-4"> | |
| 55 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | |
| 56 | - <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 mt-0.5 flex items-center justify-center"> | |
| 57 | - <svg class="w-4 h-4 text-spot-green" fill="currentColor" viewBox="0 0 20 20"><path d="M5 3a1 1 0 000 2c5.523 0 10 4.477 10 10a1 1 0 102 0C17 8.373 11.627 3 5 3z"/><path d="M4 9a1 1 0 011-1 7 7 0 017 7 1 1 0 11-2 0 5 5 0 00-5-5 1 1 0 01-1-1z"/></svg> | |
| 47 | + <div class="p-4 space-y-2"> | |
| 48 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> | |
| 49 | + <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 flex items-center justify-center"> | |
| 50 | + <svg class="w-4 h-4 text-spot-green" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M12 7.5h1.5m-1.5 3h1.5m-7.5 3h7.5m-7.5 3h7.5m3-9h3.375c.621 0 1.125.504 1.125 1.125V18a2.25 2.25 0 0 1-2.25 2.25M16.5 7.5V18a2.25 2.25 0 0 0 2.25 2.25M16.5 7.5V4.875c0-.621-.504-1.125-1.125-1.125H4.125C3.504 3.75 3 4.254 3 4.875V18a2.25 2.25 0 0 0 2.25 2.25h13.5M6 7.5h3v3H6v-3Z"/></svg> | |
| 58 | 51 | </div> |
| 59 | 52 | <div class="flex-1 min-w-0"> |
| 60 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:70%"></div> | |
| 61 | - <div class="feed-line bg-spot-secondary/40 feed-line-short"></div> | |
| 53 | + <div class="text-sm font-bold text-spot-text leading-tight">The future of decentralized social media</div> | |
| 54 | + <div class="text-xs text-spot-secondary mt-0.5">example.com · 2h ago</div> | |
| 62 | 55 | </div> |
| 63 | 56 | <div class="flex items-center gap-1 text-spot-green shrink-0"> |
| 64 | - <svg class="w-3.5 h-3.5" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z"/></svg> | |
| 57 | + <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M21 8.25c0-2.485-2.099-4.5-4.688-4.5-1.935 0-3.597 1.126-4.312 2.733-.715-1.607-2.377-2.733-4.313-2.733C5.1 3.75 3 5.765 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12Z"/></svg> | |
| 65 | 58 | <span class="text-xs">12</span> |
| 66 | 59 | </div> |
| 67 | 60 | </div> |
| 68 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | |
| 69 | - <div class="w-8 h-8 rounded-full bg-spot-blue/20 shrink-0 mt-0.5 flex items-center justify-center"> | |
| 70 | - <svg class="w-4 h-4 text-spot-blue" fill="currentColor" viewBox="0 0 20 20"><path d="M2 5a2 2 0 012-2h8a2 2 0 012 2v10a2 2 0 002 2H4a2 2 0 01-2-2V5z"/></svg> | |
| 61 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> | |
| 62 | + <div class="w-8 h-8 rounded-full bg-spot-blue/20 shrink-0 flex items-center justify-center"> | |
| 63 | + <svg class="w-4 h-4 text-spot-blue" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M13.5 21v-7.5a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 .75.75V21m-4.5 0H2.36m11.14 0H18m0 0h3.64m-1.39 0V9.349M3.75 21V9.349m0 0a3.001 3.001 0 0 0 3.75-.615A2.993 2.993 0 0 0 9.75 9.75c.896 0 1.7-.393 2.25-1.016a2.993 2.993 0 0 0 2.25 1.016c.896 0 1.7-.393 2.25-1.015a3.001 3.001 0 0 0 3.75.614m-16.5 0a3.004 3.004 0 0 1-.621-4.72l1.189-1.19A1.5 1.5 0 0 1 5.378 3h13.243a1.5 1.5 0 0 1 1.06.44l1.19 1.189a3 3 0 0 1-.621 4.72M6.75 18h3.75a.75.75 0 0 0 .75-.75V13.5a.75.75 0 0 0-.75-.75H6.75a.75.75 0 0 0-.75.75v3.75c0 .414.336.75.75.75Z"/></svg> | |
| 71 | 64 | </div> |
| 72 | 65 | <div class="flex-1 min-w-0"> |
| 73 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:55%"></div> | |
| 74 | - <div class="feed-line bg-spot-secondary/40" style="width:80%"></div> | |
| 66 | + <div class="text-sm font-bold text-spot-text leading-tight">Building a reader for the open web</div> | |
| 67 | + <div class="text-xs text-spot-secondary mt-0.5">blog.example.net · 5h ago</div> | |
| 75 | 68 | </div> |
| 76 | 69 | </div> |
| 77 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | |
| 78 | - <div class="w-8 h-8 rounded-full bg-spot-orange/20 shrink-0 mt-0.5 flex items-center justify-center"> | |
| 79 | - <svg class="w-4 h-4 text-spot-orange" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M12.395 2.553a1 1 0 00-1.45-.385c-.345.23-.614.558-.822.88-.214.33-.403.713-.57 1.116-.334.804-.614 1.768-.84 2.734a31.365 31.365 0 00-.613 3.58 2.64 2.64 0 01-.945-1.067c-.328-.68-.398-1.534-.398-2.654A1 1 0 005.05 6.05 6.981 6.981 0 003 11a7 7 0 1011.95-4.95c-.592-.591-.98-.985-1.348-1.467-.363-.476-.724-1.063-1.207-2.03zM12.12 15.12A3 3 0 017 13s.879.5 2.5.5c0-1 .5-4 1.25-4.5.5 1 .786 1.293 1.371 1.879A2.99 2.99 0 0113 13a2.99 2.99 0 01-.879 2.121z"/></svg> | |
| 70 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> | |
| 71 | + <div class="w-8 h-8 rounded-full bg-spot-orange/20 shrink-0 flex items-center justify-center"> | |
| 72 | + <svg class="w-4 h-4 text-spot-orange" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M15.362 5.214A8.252 8.252 0 0 1 12 21 8.25 8.25 0 0 1 6.038 7.047 8.287 8.287 0 0 0 9 9.601a8.983 8.983 0 0 1 3.361-6.867 8.21 8.21 0 0 0 3 2.48Z"/><path stroke-linecap="round" stroke-linejoin="round" d="M12 18a3.75 3.75 0 0 0 .495-7.468 5.99 5.99 0 0 0-1.925 3.547 5.975 5.975 0 0 1-2.133-1.001A3.75 3.75 0 0 0 12 18Z"/></svg> | |
| 80 | 73 | </div> |
| 81 | 74 | <div class="flex-1 min-w-0"> |
| 82 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:45%"></div> | |
| 83 | - <div class="feed-line bg-spot-secondary/40 feed-line-medium"></div> | |
| 75 | + <div class="text-sm font-bold text-spot-text leading-tight">Why RSS still matters in 2026</div> | |
| 76 | + <div class="text-xs text-spot-secondary mt-0.5">wire.example.org · 8h ago</div> | |
| 84 | 77 | </div> |
| 85 | 78 | <div class="flex items-center gap-1 text-spot-secondary shrink-0"> |
| 86 | - <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"/></svg> | |
| 79 | + <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M7.5 8.25h9m-9 3H12m-9.75 1.51c0 1.6 1.123 2.994 2.707 3.227 1.129.166 2.27.293 3.423.379.35.026.67.21.865.501L12 21l2.755-4.133a1.14 1.14 0 0 1 .865-.501 48.172 48.172 0 0 0 3.423-.379c1.584-.233 2.707-1.626 2.707-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.394 48.394 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741v6.018Z"/></svg> | |
| 87 | 80 | <span class="text-xs">3</span> |
| 88 | 81 | </div> |
| 89 | 82 | </div> |
| 90 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | |
| 91 | - <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 mt-0.5 flex items-center justify-center"> | |
| 92 | - <svg class="w-4 h-4 text-spot-green" fill="currentColor" viewBox="0 0 20 20"><path d="M5 3a1 1 0 000 2c5.523 0 10 4.477 10 10a1 1 0 102 0C17 8.373 11.627 3 5 3z"/></svg> | |
| 83 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> | |
| 84 | + <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 flex items-center justify-center"> | |
| 85 | + <svg class="w-4 h-4 text-spot-green" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87.074.04.147.083.22.127.325.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 0 1 1.37.49l1.296 2.247a1.125 1.125 0 0 1-.26 1.431l-1.003.827c-.293.241-.438.613-.43.992a7.723 7.723 0 0 1 0 .255c-.008.378.137.75.43.991l1.004.827c.424.35.534.955.26 1.43l-1.298 2.247a1.125 1.125 0 0 1-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a6.47 6.47 0 0 1-.22.128c-.331.183-.581.495-.644.869l-.213 1.281c-.09.543-.56.94-1.11.94h-2.594c-.55 0-1.019-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a6.52 6.52 0 0 1-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 0 1-1.369-.49l-1.297-2.247a1.125 1.125 0 0 1 .26-1.431l1.004-.827c.292-.24.437-.613.43-.991a6.932 6.932 0 0 1 0-.255c.007-.38-.138-.751-.43-.992l-1.004-.827a1.125 1.125 0 0 1-.26-1.43l1.297-2.247a1.125 1.125 0 0 1 1.37-.491l1.216.456c.356.133.751.072 1.076-.124.072-.044.146-.086.22-.128.332-.183.582-.495.644-.869l.214-1.28Z"/><path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"/></svg> | |
| 93 | 86 | </div> |
| 94 | 87 | <div class="flex-1 min-w-0"> |
| 95 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:60%"></div> | |
| 96 | - <div class="feed-line bg-spot-secondary/40 feed-line-short"></div> | |
| 88 | + <div class="text-sm font-bold text-spot-text leading-tight">Understanding AT Protocol lexicons</div> | |
| 89 | + <div class="text-xs text-spot-secondary mt-0.5">docs.example.dev · 1d ago</div> | |
| 97 | 90 | </div> |
| 98 | 91 | </div> |
| 99 | 92 | </div> |
| 100 | 93 | <div class="px-5 py-3 border-t border-spot-divider flex items-center justify-between"> |
| 101 | 94 | <div class="flex items-center gap-2 text-xs text-spot-muted"> |
| 102 | - <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg> | |
| 95 | + <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M2.25 18 9 11.25l4.306 4.306a11.95 11.95 0 0 1 5.814-5.518l2.74-1.22m0 0-5.94-2.281m5.94 2.28-2.28 5.941"/></svg> | |
| 103 | 96 | 4 trending in your network |
| 104 | 97 | </div> |
| 105 | 98 | <span class="text-xs text-spot-green font-bold">42 unread</span> |
| @@ -1,13 +1,6 @@ | |||
| 1 | {{define "index.html"}} | 1 | {{define "index.html"}} |
| 2 | <style> | 2 | <style> |
| 3 | .landing-hero { padding-top: 6rem; padding-bottom: 4rem; } | 3 | .landing-hero { padding-top: 6rem; padding-bottom: 4rem; } |
| 4 | -.landing-feed { display: flex; flex-direction: column; gap: 1px; } | ||
| 5 | -.landing-item { transition: background 0.15s; } | ||
| 6 | -.landing-item:hover { background: var(--spot-hover); } | ||
| 7 | -.feed-line { height: 10px; border-radius: 5px; } | ||
| 8 | -.feed-line-short { width: 40%; } | ||
| 9 | -.feed-line-medium { width: 65%; } | ||
| 10 | -.feed-dot { width: 8px; height: 8px; border-radius: 50%; } | ||
| 11 | @media (min-width: 768px) { .landing-hero { padding-top: 8rem; padding-bottom: 6rem; } } | 4 | @media (min-width: 768px) { .landing-hero { padding-top: 8rem; padding-bottom: 6rem; } } |
| 12 | </style> | 5 | </style> |
| 13 | 6 | ||
| @@ -46,60 +39,60 @@ | |||
| 46 | <div class="hidden lg:block"> | 39 | <div class="hidden lg:block"> |
| 47 | <div class="bg-spot-surface rounded-xl shadow-spot overflow-hidden"> | 40 | <div class="bg-spot-surface rounded-xl shadow-spot overflow-hidden"> |
| 48 | <div class="px-5 py-3 border-b border-spot-divider flex items-center gap-2"> | 41 | <div class="px-5 py-3 border-b border-spot-divider flex items-center gap-2"> |
| 49 | - <div class="feed-dot bg-spot-red/60"></div> | 42 | + <div class="w-2 h-2 rounded-full bg-spot-red"></div> |
| 50 | - <div class="feed-dot bg-spot-orange/60"></div> | 43 | + <div class="w-2 h-2 rounded-full bg-spot-orange"></div> |
| 51 | - <div class="feed-dot bg-spot-green/60"></div> | 44 | + <div class="w-2 h-2 rounded-full bg-spot-green"></div> |
| 52 | <span class="text-xs text-spot-muted ml-3">Dashboard</span> | 45 | <span class="text-xs text-spot-muted ml-3">Dashboard</span> |
| 53 | </div> | 46 | </div> |
| 54 | - <div class="landing-feed p-4"> | 47 | + <div class="p-4 space-y-2"> |
| 55 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | 48 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> |
| 56 | - <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 mt-0.5 flex items-center justify-center"> | 49 | + <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 flex items-center justify-center"> |
| 57 | - <svg class="w-4 h-4 text-spot-green" fill="currentColor" viewBox="0 0 20 20"><path d="M5 3a1 1 0 000 2c5.523 0 10 4.477 10 10a1 1 0 102 0C17 8.373 11.627 3 5 3z"/><path d="M4 9a1 1 0 011-1 7 7 0 017 7 1 1 0 11-2 0 5 5 0 00-5-5 1 1 0 01-1-1z"/></svg> | 50 | + <svg class="w-4 h-4 text-spot-green" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M12 7.5h1.5m-1.5 3h1.5m-7.5 3h7.5m-7.5 3h7.5m3-9h3.375c.621 0 1.125.504 1.125 1.125V18a2.25 2.25 0 0 1-2.25 2.25M16.5 7.5V18a2.25 2.25 0 0 0 2.25 2.25M16.5 7.5V4.875c0-.621-.504-1.125-1.125-1.125H4.125C3.504 3.75 3 4.254 3 4.875V18a2.25 2.25 0 0 0 2.25 2.25h13.5M6 7.5h3v3H6v-3Z"/></svg> |
| 58 | </div> | 51 | </div> |
| 59 | <div class="flex-1 min-w-0"> | 52 | <div class="flex-1 min-w-0"> |
| 60 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:70%"></div> | 53 | + <div class="text-sm font-bold text-spot-text leading-tight">The future of decentralized social media</div> |
| 61 | - <div class="feed-line bg-spot-secondary/40 feed-line-short"></div> | 54 | + <div class="text-xs text-spot-secondary mt-0.5">example.com · 2h ago</div> |
| 62 | </div> | 55 | </div> |
| 63 | <div class="flex items-center gap-1 text-spot-green shrink-0"> | 56 | <div class="flex items-center gap-1 text-spot-green shrink-0"> |
| 64 | - <svg class="w-3.5 h-3.5" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z"/></svg> | 57 | + <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M21 8.25c0-2.485-2.099-4.5-4.688-4.5-1.935 0-3.597 1.126-4.312 2.733-.715-1.607-2.377-2.733-4.313-2.733C5.1 3.75 3 5.765 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12Z"/></svg> |
| 65 | <span class="text-xs">12</span> | 58 | <span class="text-xs">12</span> |
| 66 | </div> | 59 | </div> |
| 67 | </div> | 60 | </div> |
| 68 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | 61 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> |
| 69 | - <div class="w-8 h-8 rounded-full bg-spot-blue/20 shrink-0 mt-0.5 flex items-center justify-center"> | 62 | + <div class="w-8 h-8 rounded-full bg-spot-blue/20 shrink-0 flex items-center justify-center"> |
| 70 | - <svg class="w-4 h-4 text-spot-blue" fill="currentColor" viewBox="0 0 20 20"><path d="M2 5a2 2 0 012-2h8a2 2 0 012 2v10a2 2 0 002 2H4a2 2 0 01-2-2V5z"/></svg> | 63 | + <svg class="w-4 h-4 text-spot-blue" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M13.5 21v-7.5a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 .75.75V21m-4.5 0H2.36m11.14 0H18m0 0h3.64m-1.39 0V9.349M3.75 21V9.349m0 0a3.001 3.001 0 0 0 3.75-.615A2.993 2.993 0 0 0 9.75 9.75c.896 0 1.7-.393 2.25-1.016a2.993 2.993 0 0 0 2.25 1.016c.896 0 1.7-.393 2.25-1.015a3.001 3.001 0 0 0 3.75.614m-16.5 0a3.004 3.004 0 0 1-.621-4.72l1.189-1.19A1.5 1.5 0 0 1 5.378 3h13.243a1.5 1.5 0 0 1 1.06.44l1.19 1.189a3 3 0 0 1-.621 4.72M6.75 18h3.75a.75.75 0 0 0 .75-.75V13.5a.75.75 0 0 0-.75-.75H6.75a.75.75 0 0 0-.75.75v3.75c0 .414.336.75.75.75Z"/></svg> |
| 71 | </div> | 64 | </div> |
| 72 | <div class="flex-1 min-w-0"> | 65 | <div class="flex-1 min-w-0"> |
| 73 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:55%"></div> | 66 | + <div class="text-sm font-bold text-spot-text leading-tight">Building a reader for the open web</div> |
| 74 | - <div class="feed-line bg-spot-secondary/40" style="width:80%"></div> | 67 | + <div class="text-xs text-spot-secondary mt-0.5">blog.example.net · 5h ago</div> |
| 75 | </div> | 68 | </div> |
| 76 | </div> | 69 | </div> |
| 77 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | 70 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> |
| 78 | - <div class="w-8 h-8 rounded-full bg-spot-orange/20 shrink-0 mt-0.5 flex items-center justify-center"> | 71 | + <div class="w-8 h-8 rounded-full bg-spot-orange/20 shrink-0 flex items-center justify-center"> |
| 79 | - <svg class="w-4 h-4 text-spot-orange" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M12.395 2.553a1 1 0 00-1.45-.385c-.345.23-.614.558-.822.88-.214.33-.403.713-.57 1.116-.334.804-.614 1.768-.84 2.734a31.365 31.365 0 00-.613 3.58 2.64 2.64 0 01-.945-1.067c-.328-.68-.398-1.534-.398-2.654A1 1 0 005.05 6.05 6.981 6.981 0 003 11a7 7 0 1011.95-4.95c-.592-.591-.98-.985-1.348-1.467-.363-.476-.724-1.063-1.207-2.03zM12.12 15.12A3 3 0 017 13s.879.5 2.5.5c0-1 .5-4 1.25-4.5.5 1 .786 1.293 1.371 1.879A2.99 2.99 0 0113 13a2.99 2.99 0 01-.879 2.121z"/></svg> | 72 | + <svg class="w-4 h-4 text-spot-orange" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M15.362 5.214A8.252 8.252 0 0 1 12 21 8.25 8.25 0 0 1 6.038 7.047 8.287 8.287 0 0 0 9 9.601a8.983 8.983 0 0 1 3.361-6.867 8.21 8.21 0 0 0 3 2.48Z"/><path stroke-linecap="round" stroke-linejoin="round" d="M12 18a3.75 3.75 0 0 0 .495-7.468 5.99 5.99 0 0 0-1.925 3.547 5.975 5.975 0 0 1-2.133-1.001A3.75 3.75 0 0 0 12 18Z"/></svg> |
| 80 | </div> | 73 | </div> |
| 81 | <div class="flex-1 min-w-0"> | 74 | <div class="flex-1 min-w-0"> |
| 82 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:45%"></div> | 75 | + <div class="text-sm font-bold text-spot-text leading-tight">Why RSS still matters in 2026</div> |
| 83 | - <div class="feed-line bg-spot-secondary/40 feed-line-medium"></div> | 76 | + <div class="text-xs text-spot-secondary mt-0.5">wire.example.org · 8h ago</div> |
| 84 | </div> | 77 | </div> |
| 85 | <div class="flex items-center gap-1 text-spot-secondary shrink-0"> | 78 | <div class="flex items-center gap-1 text-spot-secondary shrink-0"> |
| 86 | - <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"/></svg> | 79 | + <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M7.5 8.25h9m-9 3H12m-9.75 1.51c0 1.6 1.123 2.994 2.707 3.227 1.129.166 2.27.293 3.423.379.35.026.67.21.865.501L12 21l2.755-4.133a1.14 1.14 0 0 1 .865-.501 48.172 48.172 0 0 0 3.423-.379c1.584-.233 2.707-1.626 2.707-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.394 48.394 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741v6.018Z"/></svg> |
| 87 | <span class="text-xs">3</span> | 80 | <span class="text-xs">3</span> |
| 88 | </div> | 81 | </div> |
| 89 | </div> | 82 | </div> |
| 90 | - <div class="landing-item rounded-lg px-4 py-3 flex items-start gap-3"> | 83 | + <div class="rounded-lg px-4 py-3 flex items-start gap-3 hover:bg-spot-hover transition"> |
| 91 | - <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 mt-0.5 flex items-center justify-center"> | 84 | + <div class="w-8 h-8 rounded-full bg-spot-green/20 shrink-0 flex items-center justify-center"> |
| 92 | - <svg class="w-4 h-4 text-spot-green" fill="currentColor" viewBox="0 0 20 20"><path d="M5 3a1 1 0 000 2c5.523 0 10 4.477 10 10a1 1 0 102 0C17 8.373 11.627 3 5 3z"/></svg> | 85 | + <svg class="w-4 h-4 text-spot-green" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87.074.04.147.083.22.127.325.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 0 1 1.37.49l1.296 2.247a1.125 1.125 0 0 1-.26 1.431l-1.003.827c-.293.241-.438.613-.43.992a7.723 7.723 0 0 1 0 .255c-.008.378.137.75.43.991l1.004.827c.424.35.534.955.26 1.43l-1.298 2.247a1.125 1.125 0 0 1-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a6.47 6.47 0 0 1-.22.128c-.331.183-.581.495-.644.869l-.213 1.281c-.09.543-.56.94-1.11.94h-2.594c-.55 0-1.019-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a6.52 6.52 0 0 1-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 0 1-1.369-.49l-1.297-2.247a1.125 1.125 0 0 1 .26-1.431l1.004-.827c.292-.24.437-.613.43-.991a6.932 6.932 0 0 1 0-.255c.007-.38-.138-.751-.43-.992l-1.004-.827a1.125 1.125 0 0 1-.26-1.43l1.297-2.247a1.125 1.125 0 0 1 1.37-.491l1.216.456c.356.133.751.072 1.076-.124.072-.044.146-.086.22-.128.332-.183.582-.495.644-.869l.214-1.28Z"/><path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"/></svg> |
| 93 | </div> | 86 | </div> |
| 94 | <div class="flex-1 min-w-0"> | 87 | <div class="flex-1 min-w-0"> |
| 95 | - <div class="feed-line bg-spot-text/80 mb-2" style="width:60%"></div> | 88 | + <div class="text-sm font-bold text-spot-text leading-tight">Understanding AT Protocol lexicons</div> |
| 96 | - <div class="feed-line bg-spot-secondary/40 feed-line-short"></div> | 89 | + <div class="text-xs text-spot-secondary mt-0.5">docs.example.dev · 1d ago</div> |
| 97 | </div> | 90 | </div> |
| 98 | </div> | 91 | </div> |
| 99 | </div> | 92 | </div> |
| 100 | <div class="px-5 py-3 border-t border-spot-divider flex items-center justify-between"> | 93 | <div class="px-5 py-3 border-t border-spot-divider flex items-center justify-between"> |
| 101 | <div class="flex items-center gap-2 text-xs text-spot-muted"> | 94 | <div class="flex items-center gap-2 text-xs text-spot-muted"> |
| 102 | - <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"/></svg> | 95 | + <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M2.25 18 9 11.25l4.306 4.306a11.95 11.95 0 0 1 5.814-5.518l2.74-1.22m0 0-5.94-2.281m5.94 2.28-2.28 5.941"/></svg> |
| 103 | 4 trending in your network | 96 | 4 trending in your network |
| 104 | </div> | 97 | </div> |
| 105 | <span class="text-xs text-spot-green font-bold">42 unread</span> | 98 | <span class="text-xs text-spot-green font-bold">42 unread</span> |
modified
internal/tmpl/trending.html +3 -2 | @@ -1,8 +1,9 @@ | ||
| 1 | 1 | {{define "trending.html"}} |
| 2 | -<div class="mb-6"> | |
| 2 | +<div class="flex items-center justify-between mb-2"> | |
| 3 | 3 | <h1 class="text-2xl font-bold text-spot-text">Trending</h1> |
| 4 | - <p class="text-spot-secondary text-sm mt-1">Most liked and discussed articles across Glean.</p> | |
| 4 | + <div></div> | |
| 5 | 5 | </div> |
| 6 | +<p class="text-sm text-spot-secondary mb-6">Most liked and discussed articles across Glean.</p> | |
| 6 | 7 | |
| 7 | 8 | <div class="space-y-3"> |
| 8 | 9 | {{range $i, $t := .Trending}} |
| @@ -1,8 +1,9 @@ | |||
| 1 | {{define "trending.html"}} | 1 | {{define "trending.html"}} |
| 2 | -<div class="mb-6"> | 2 | +<div class="flex items-center justify-between mb-2"> |
| 3 | <h1 class="text-2xl font-bold text-spot-text">Trending</h1> | 3 | <h1 class="text-2xl font-bold text-spot-text">Trending</h1> |
| 4 | - <p class="text-spot-secondary text-sm mt-1">Most liked and discussed articles across Glean.</p> | 4 | + <div></div> |
| 5 | </div> | 5 | </div> |
| 6 | +<p class="text-sm text-spot-secondary mb-6">Most liked and discussed articles across Glean.</p> | ||
| 6 | 7 | ||
| 7 | <div class="space-y-3"> | 8 | <div class="space-y-3"> |
| 8 | {{range $i, $t := .Trending}} | 9 | {{range $i, $t := .Trending}} |