Live video on the AT Protocol

add EIP-712 signing and verification

See merge request aquareum-tv/aquareum!46

Changelog: feature

+4194 -177
+2 -2
.husky/post-commit
··· 1 1 #!/bin/bash 2 2 3 - set -euo pipefail 3 + set -eu 4 4 printf "variables:\n DOCKERFILE_HASH: $(git hash-object docker/build.Dockerfile)" > .ci/dockerfile-hash.yaml 5 5 git add .ci/dockerfile-hash.yaml 6 6 if ! git diff-index --quiet --cached HEAD --; then 7 7 git commit --amend -C HEAD --no-verify 8 8 echo "postcommit hook automatically amended commit to include new dockerfile hash" 9 - fi 9 + fi
+7 -2
Makefile
··· 27 27 yarn install --inline-builds 28 28 29 29 .PHONY: app 30 - app: install 30 + app: schema install 31 31 yarn run build 32 32 33 33 .PHONY: node 34 - node: 34 + node: schema 35 35 meson setup build --native=./util/linux-amd64-gnu.ini && meson compile -C build 36 36 mv ./build/aquareum ./bin/aquareum 37 + 38 + .PHONY: schema 39 + schema: 40 + mkdir -p js/app/generated \ 41 + && go run pkg/crypto/signers/eip712/export-schema/export-schema.go > js/app/generated/eip712-schema.json 37 42 38 43 .PHONY: test 39 44 test: app
+56 -11
go.mod
··· 3 3 go 1.22.2 4 4 5 5 require ( 6 + firebase.google.com/go/v4 v4.14.1 6 7 github.com/NYTimes/gziphandler v1.1.1 7 8 github.com/adrg/xdg v0.4.0 8 9 github.com/dunglas/httpsfv v1.0.2 10 + github.com/ethereum/go-ethereum v1.14.7 9 11 github.com/go-git/go-git/v5 v5.12.0 10 12 github.com/golang/glog v1.2.0 11 13 github.com/google/uuid v1.6.0 ··· 13 15 github.com/lmittmann/tint v1.0.4 14 16 github.com/orandin/slog-gorm v1.3.2 15 17 github.com/peterbourgon/ff/v3 v3.3.1 18 + github.com/rs/cors v1.7.0 16 19 github.com/samber/slog-http v1.4.0 17 20 github.com/stretchr/testify v1.9.0 18 21 gitlab.com/gitlab-org/release-cli v0.18.0 19 22 golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 23 + golang.org/x/net v0.27.0 20 24 golang.org/x/sync v0.7.0 25 + google.golang.org/api v0.189.0 21 26 gorm.io/driver/sqlite v1.5.5 22 27 ) 23 28 ··· 37 42 ) 38 43 39 44 require ( 45 + cloud.google.com/go v0.115.0 // indirect 46 + cloud.google.com/go/auth v0.7.2 // indirect 47 + cloud.google.com/go/auth/oauth2adapt v0.2.3 // indirect 48 + cloud.google.com/go/compute/metadata v0.5.0 // indirect 49 + cloud.google.com/go/firestore v1.15.0 // indirect 50 + cloud.google.com/go/iam v1.1.10 // indirect 51 + cloud.google.com/go/longrunning v0.5.9 // indirect 52 + cloud.google.com/go/storage v1.41.0 // indirect 40 53 dario.cat/mergo v1.0.0 // indirect 41 - github.com/BurntSushi/toml v0.3.1 // indirect 42 - github.com/Microsoft/go-winio v0.6.1 // indirect 54 + github.com/BurntSushi/toml v1.3.2 // indirect 55 + github.com/MicahParks/keyfunc v1.9.0 // indirect 56 + github.com/Microsoft/go-winio v0.6.2 // indirect 43 57 github.com/ProtonMail/go-crypto v1.0.0 // indirect 58 + github.com/bits-and-blooms/bitset v1.10.0 // indirect 59 + github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect 44 60 github.com/cloudflare/circl v1.3.7 // indirect 45 - github.com/cpuguy83/go-md2man/v2 v2.0.1 // indirect 61 + github.com/consensys/bavard v0.1.13 // indirect 62 + github.com/consensys/gnark-crypto v0.12.1 // indirect 63 + github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect 64 + github.com/crate-crypto/go-kzg-4844 v1.0.0 // indirect 46 65 github.com/cyphar/filepath-securejoin v0.2.4 // indirect 66 + github.com/deckarep/golang-set/v2 v2.6.0 // indirect 67 + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 // indirect 47 68 github.com/emirpasic/gods v1.18.1 // indirect 69 + github.com/ethereum/c-kzg-4844 v1.0.0 // indirect 70 + github.com/felixge/httpsnoop v1.0.4 // indirect 71 + github.com/fsnotify/fsnotify v1.6.0 // indirect 48 72 github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect 49 73 github.com/go-git/go-billy/v5 v5.5.0 // indirect 74 + github.com/go-logr/logr v1.4.2 // indirect 75 + github.com/go-logr/stdr v1.2.2 // indirect 76 + github.com/golang-jwt/jwt/v4 v4.5.0 // indirect 50 77 github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect 78 + github.com/golang/protobuf v1.5.4 // indirect 79 + github.com/google/s2a-go v0.1.7 // indirect 80 + github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect 81 + github.com/googleapis/gax-go/v2 v2.12.5 // indirect 51 82 github.com/hashicorp/errwrap v1.1.0 // indirect 52 83 github.com/hashicorp/go-multierror v1.1.1 // indirect 53 84 github.com/hashicorp/go-version v1.4.0 // indirect 85 + github.com/holiman/uint256 v1.3.0 // indirect 54 86 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect 55 87 github.com/jstemmer/go-junit-report v1.0.0 // indirect 56 88 github.com/kevinburke/ssh_config v1.2.0 // indirect 57 89 github.com/mitchellh/gox v1.0.1 // indirect 58 90 github.com/mitchellh/iochan v1.0.0 // indirect 91 + github.com/mmcloughlin/addchain v0.4.0 // indirect 59 92 github.com/pjbgf/sha1cd v0.3.0 // indirect 60 93 github.com/russross/blackfriday/v2 v2.1.0 // indirect 61 94 github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect 62 - github.com/sirupsen/logrus v1.9.0 // indirect 95 + github.com/sirupsen/logrus v1.9.3 // indirect 63 96 github.com/skeema/knownhosts v1.2.2 // indirect 64 97 github.com/stretchr/objx v0.5.2 // indirect 65 - github.com/urfave/cli/v2 v2.4.0 // indirect 98 + github.com/supranational/blst v0.3.11 // indirect 99 + github.com/urfave/cli/v2 v2.25.7 // indirect 66 100 github.com/xanzy/ssh-agent v0.3.3 // indirect 67 - go.opentelemetry.io/otel v1.19.0 // indirect 68 - go.opentelemetry.io/otel/trace v1.19.0 // indirect 101 + github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 // indirect 102 + go.opencensus.io v0.24.0 // indirect 103 + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect 104 + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect 105 + go.opentelemetry.io/otel v1.24.0 // indirect 106 + go.opentelemetry.io/otel/metric v1.24.0 // indirect 107 + go.opentelemetry.io/otel/trace v1.24.0 // indirect 69 108 golang.org/x/crypto v0.25.0 // indirect 70 - golang.org/x/mod v0.19.0 // indirect 71 - golang.org/x/net v0.27.0 // indirect 72 - golang.org/x/tools v0.23.0 // indirect 109 + golang.org/x/oauth2 v0.21.0 // indirect 110 + golang.org/x/text v0.16.0 // indirect 111 + golang.org/x/time v0.5.0 // indirect 112 + google.golang.org/appengine/v2 v2.0.2 // indirect 113 + google.golang.org/genproto v0.0.0-20240722135656-d784300faade // indirect 114 + google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 // indirect 115 + google.golang.org/genproto/googleapis/rpc v0.0.0-20240722135656-d784300faade // indirect 116 + google.golang.org/grpc v1.64.1 // indirect 117 + google.golang.org/protobuf v1.34.2 // indirect 73 118 gopkg.in/warnings.v0 v0.1.2 // indirect 74 - gopkg.in/yaml.v2 v2.4.0 // indirect 119 + rsc.io/tmplfunc v0.0.3 // indirect 75 120 )
+269 -18
go.sum
··· 1 + cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= 2 + cloud.google.com/go v0.115.0 h1:CnFSK6Xo3lDYRoBKEcAtia6VSC837/ZkJuRduSFnr14= 3 + cloud.google.com/go v0.115.0/go.mod h1:8jIM5vVgoAEoiVxQ/O4BFTfHqulPZgs/ufEzMcFMdWU= 4 + cloud.google.com/go/auth v0.7.2 h1:uiha352VrCDMXg+yoBtaD0tUF4Kv9vrtrWPYXwutnDE= 5 + cloud.google.com/go/auth v0.7.2/go.mod h1:VEc4p5NNxycWQTMQEDQF0bd6aTMb6VgYDXEwiJJQAbs= 6 + cloud.google.com/go/auth/oauth2adapt v0.2.3 h1:MlxF+Pd3OmSudg/b1yZ5lJwoXCEaeedAguodky1PcKI= 7 + cloud.google.com/go/auth/oauth2adapt v0.2.3/go.mod h1:tMQXOfZzFuNuUxOypHlQEXgdfX5cuhwU+ffUuXRJE8I= 8 + cloud.google.com/go/compute/metadata v0.5.0 h1:Zr0eK8JbFv6+Wi4ilXAR8FJ3wyNdpxHKJNPos6LTZOY= 9 + cloud.google.com/go/compute/metadata v0.5.0/go.mod h1:aHnloV2TPI38yx4s9+wAZhHykWvVCfu7hQbF+9CWoiY= 10 + cloud.google.com/go/firestore v1.15.0 h1:/k8ppuWOtNuDHt2tsRV42yI21uaGnKDEQnRFeBpbFF8= 11 + cloud.google.com/go/firestore v1.15.0/go.mod h1:GWOxFXcv8GZUtYpWHw/w6IuYNux/BtmeVTMmjrm4yhk= 12 + cloud.google.com/go/iam v1.1.10 h1:ZSAr64oEhQSClwBL670MsJAW5/RLiC6kfw3Bqmd5ZDI= 13 + cloud.google.com/go/iam v1.1.10/go.mod h1:iEgMq62sg8zx446GCaijmA2Miwg5o3UbO+nI47WHJps= 14 + cloud.google.com/go/longrunning v0.5.9 h1:haH9pAuXdPAMqHvzX0zlWQigXT7B0+CL4/2nXXdBo5k= 15 + cloud.google.com/go/longrunning v0.5.9/go.mod h1:HD+0l9/OOW0za6UWdKJtXoFAX/BGg/3Wj8p10NeWF7c= 16 + cloud.google.com/go/storage v1.41.0 h1:RusiwatSu6lHeEXe3kglxakAmAbfV+rhtPqA6i8RBx0= 17 + cloud.google.com/go/storage v1.41.0/go.mod h1:J1WCa/Z2FcgdEDuPUY8DxT5I+d9mFKsCepp5vR6Sq80= 1 18 dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= 2 19 dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= 3 - github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= 20 + firebase.google.com/go/v4 v4.14.1 h1:4qiUETaFRWoFGE1XP5VbcEdtPX93Qs+8B/7KvP2825g= 21 + firebase.google.com/go/v4 v4.14.1/go.mod h1:fgk2XshgNDEKaioKco+AouiegSI9oTWVqRaBdTTGBoM= 4 22 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= 23 + github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= 24 + github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= 25 + github.com/DataDog/zstd v1.4.5 h1:EndNeuB0l9syBZhut0wns3gV1hL8zX8LIu6ZiVHWLIQ= 26 + github.com/DataDog/zstd v1.4.5/go.mod h1:1jcaCB/ufaK+sKp1NBhlGmpz41jOoPQ35bpF36t7BBo= 27 + github.com/MicahParks/keyfunc v1.9.0 h1:lhKd5xrFHLNOWrDc4Tyb/Q1AJ4LCzQ48GVJyVIID3+o= 28 + github.com/MicahParks/keyfunc v1.9.0/go.mod h1:IdnCilugA0O/99dW+/MkvlyrsX8+L8+x95xuVNtM5jw= 5 29 github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= 6 - github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= 7 - github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= 30 + github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= 31 + github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= 8 32 github.com/NYTimes/gziphandler v1.1.1 h1:ZUDjpQae29j0ryrS0u/B8HZfJBtBQHjqw2rQ2cqUQ3I= 9 33 github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= 10 34 github.com/ProtonMail/go-crypto v1.0.0 h1:LRuvITjQWX+WIfr930YHG2HNfjR1uOfyf5vE0kC2U78= 11 35 github.com/ProtonMail/go-crypto v1.0.0/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= 36 + github.com/StackExchange/wmi v1.2.1 h1:VIkavFPXSjcnS+O8yTq7NI32k0R5Aj+v39y29VYDOSA= 37 + github.com/StackExchange/wmi v1.2.1/go.mod h1:rcmrprowKIVzvc+NUiLncP2uuArMWLCbu9SBzvHz7e8= 38 + github.com/VictoriaMetrics/fastcache v1.12.2 h1:N0y9ASrJ0F6h0QaC3o6uJb3NIZ9VKLjCM7NQbSmF7WI= 39 + github.com/VictoriaMetrics/fastcache v1.12.2/go.mod h1:AmC+Nzz1+3G2eCPapF6UcsnkThDcMsQicp4xDukwJYI= 12 40 github.com/adrg/xdg v0.4.0 h1:RzRqFcjH4nE5C6oTAxhBtoE2IRyjBSa62SCbyPidvls= 13 41 github.com/adrg/xdg v0.4.0/go.mod h1:N6ag73EX4wyxeaoeHctc1mas01KZgsj5tYiAIwqJE/E= 14 42 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= 15 43 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= 16 44 github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= 17 45 github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= 46 + github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= 47 + github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= 48 + github.com/bits-and-blooms/bitset v1.10.0 h1:ePXTeiPEazB5+opbv5fr8umg2R/1NlzgDsyepwsSr88= 49 + github.com/bits-and-blooms/bitset v1.10.0/go.mod h1:7hO7Gc7Pp1vODcmWvKMRA9BNmbv6a/7QIWpPxHddWR8= 50 + github.com/btcsuite/btcd/btcec/v2 v2.2.0 h1:fzn1qaOt32TuLjFlkzYSsBC35Q3KUjT1SwPxiMSCF5k= 51 + github.com/btcsuite/btcd/btcec/v2 v2.2.0/go.mod h1:U7MHm051Al6XmscBQ0BoNydpOTsFAn707034b5nY8zU= 52 + github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1 h1:q0rUy8C/TYNBQS1+CGKw68tLOFYSNEs0TFnxxnS9+4U= 53 + github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= 18 54 github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= 55 + github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= 56 + github.com/cespare/cp v0.1.0 h1:SE+dxFebS7Iik5LK0tsi1k9ZCxEaFX4AjQmoyA+1dJk= 57 + github.com/cespare/cp v0.1.0/go.mod h1:SOGHArjBr4JWaSDEVpWpo/hNg6RoKrls6Oh40hiwW+s= 58 + github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= 59 + github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= 60 + github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= 19 61 github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= 20 62 github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= 21 63 github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= 22 - github.com/cpuguy83/go-md2man/v2 v2.0.1 h1:r/myEWzV9lfsM1tFLgDyu0atFtJ1fXn261LKYj/3DxU= 23 - github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= 64 + github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= 65 + github.com/cockroachdb/errors v1.11.3 h1:5bA+k2Y6r+oz/6Z/RFlNeVCesGARKuC6YymtcDrbC/I= 66 + github.com/cockroachdb/errors v1.11.3/go.mod h1:m4UIW4CDjx+R5cybPsNrRbreomiFqt8o1h1wUVazSd8= 67 + github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce h1:giXvy4KSc/6g/esnpM7Geqxka4WSqI1SZc7sMJFd3y4= 68 + github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce/go.mod h1:9/y3cnZ5GKakj/H4y9r9GTjCvAFta7KLgSHPJJYc52M= 69 + github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b h1:r6VH0faHjZeQy818SGhaone5OnYfxFR/+AzdY3sf5aE= 70 + github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b/go.mod h1:Vz9DsVWQQhf3vs21MhPMZpMGSht7O/2vFW2xusFUVOs= 71 + github.com/cockroachdb/pebble v1.1.1 h1:XnKU22oiCLy2Xn8vp1re67cXg4SAasg/WDt1NtcRFaw= 72 + github.com/cockroachdb/pebble v1.1.1/go.mod h1:4exszw1r40423ZsmkG/09AFEG83I0uDgfujJdbL6kYU= 73 + github.com/cockroachdb/redact v1.1.5 h1:u1PMllDkdFfPWaNGMyLD1+so+aq3uUItthCFqzwPJ30= 74 + github.com/cockroachdb/redact v1.1.5/go.mod h1:BVNblN9mBWFyMyqK1k3AAiSxhvhfK2oOZZ2lK+dpvRg= 75 + github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 h1:zuQyyAKVxetITBuuhv3BI9cMrmStnpT18zmgmTxunpo= 76 + github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06/go.mod h1:7nc4anLGjupUW/PeY5qiNYsdNXj7zopG+eqsS7To5IQ= 77 + github.com/consensys/bavard v0.1.13 h1:oLhMLOFGTLdlda/kma4VOJazblc7IM5y5QPd2A/YjhQ= 78 + github.com/consensys/bavard v0.1.13/go.mod h1:9ItSMtA/dXMAiL7BG6bqW2m3NdSEObYWoH223nGHukI= 79 + github.com/consensys/gnark-crypto v0.12.1 h1:lHH39WuuFgVHONRl3J0LRBtuYdQTumFSDtJF7HpyG8M= 80 + github.com/consensys/gnark-crypto v0.12.1/go.mod h1:v2Gy7L/4ZRosZ7Ivs+9SfUDr0f5UlG+EM5t7MPHiLuY= 81 + github.com/cpuguy83/go-md2man/v2 v2.0.2 h1:p1EgwI/C7NhT0JmVkwCD2ZBK8j4aeHQX2pMHHBfMQ6w= 82 + github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= 83 + github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c h1:uQYC5Z1mdLRPrZhHjHxufI8+2UG/i25QG92j0Er9p6I= 84 + github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c/go.mod h1:geZJZH3SzKCqnz5VT0q/DyIG/tvu/dZk+VIfXicupJs= 85 + github.com/crate-crypto/go-kzg-4844 v1.0.0 h1:TsSgHwrkTKecKJ4kadtHi4b3xHW5dCFUDFnUp1TsawI= 86 + github.com/crate-crypto/go-kzg-4844 v1.0.0/go.mod h1:1kMhvPgI0Ky3yIa+9lFySEBUBXkYxeOi8ZF1sYioxhc= 24 87 github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= 25 88 github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= 26 89 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= 27 90 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= 28 91 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= 92 + github.com/deckarep/golang-set/v2 v2.6.0 h1:XfcQbWM1LlMB8BsJ8N9vW5ehnnPVIw0je80NsVHagjM= 93 + github.com/deckarep/golang-set/v2 v2.6.0/go.mod h1:VAky9rY/yGXJOLEDv3OMci+7wtDpOF4IN+y82NBOac4= 94 + github.com/decred/dcrd/crypto/blake256 v1.0.0 h1:/8DMNYp9SGi5f0w7uCm6d6M4OU2rGFK09Y2A4Xv7EE0= 95 + github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc= 96 + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 h1:YLtO71vCjJRCBcrPMtQ9nqBsqpA1m5sE92cU+pd5Mcc= 97 + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs= 29 98 github.com/dunglas/httpsfv v1.0.2 h1:iERDp/YAfnojSDJ7PW3dj1AReJz4MrwbECSSE59JWL0= 30 99 github.com/dunglas/httpsfv v1.0.2/go.mod h1:zID2mqw9mFsnt7YC3vYQ9/cjq30q41W+1AnDwH8TiMg= 31 100 github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= 32 101 github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= 33 102 github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= 34 103 github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= 104 + github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= 105 + github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= 106 + github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= 107 + github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= 108 + github.com/ethereum/c-kzg-4844 v1.0.0 h1:0X1LBXxaEtYD9xsyj9B9ctQEZIpnvVDeoBx8aHEwTNA= 109 + github.com/ethereum/c-kzg-4844 v1.0.0/go.mod h1:VewdlzQmpT5QSrVhbBuGoCdFJkpaJlO1aQputP83wc0= 110 + github.com/ethereum/go-ethereum v1.14.7 h1:EHpv3dE8evQmpVEQ/Ne2ahB06n2mQptdwqaMNhAT29g= 111 + github.com/ethereum/go-ethereum v1.14.7/go.mod h1:Mq0biU2jbdmKSZoqOj29017ygFrMnB5/Rifwp980W4o= 112 + github.com/ethereum/go-verkle v0.1.1-0.20240306133620-7d920df305f0 h1:KrE8I4reeVvf7C1tm8elRjj4BdscTYzz/WAbYyf/JI4= 113 + github.com/ethereum/go-verkle v0.1.1-0.20240306133620-7d920df305f0/go.mod h1:D9AJLVXSyZQXJQVk8oh1EwjISE+sJTn2duYIZC0dy3w= 114 + github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= 115 + github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= 116 + github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= 117 + github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= 118 + github.com/getsentry/sentry-go v0.27.0 h1:Pv98CIbtB3LkMWmXi4Joa5OOcwbmnX88sF5qbK3r3Ps= 119 + github.com/getsentry/sentry-go v0.27.0/go.mod h1:lc76E2QywIyW8WuBnwl8Lc4bkmQH4+w1gwTf25trprY= 35 120 github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= 36 121 github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= 37 122 github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= ··· 42 127 github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= 43 128 github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= 44 129 github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= 130 + github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= 131 + github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= 132 + github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= 133 + github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= 134 + github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= 135 + github.com/go-ole/go-ole v1.3.0 h1:Dt6ye7+vXGIKZ7Xtk4s6/xVdGDQynvom7xCFEdWr6uE= 136 + github.com/go-ole/go-ole v1.3.0/go.mod h1:5LS6F96DhAwUc7C+1HLexzMXY1xGRSryjyPPKW6zv78= 137 + github.com/gofrs/flock v0.8.1 h1:+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw= 138 + github.com/gofrs/flock v0.8.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU= 139 + github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= 140 + github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= 141 + github.com/golang-jwt/jwt/v4 v4.4.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= 142 + github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= 143 + github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= 144 + github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= 45 145 github.com/golang/glog v1.2.0 h1:uCdmnmatrKCgMBlM4rMuJZWOkPDqdbZPnrMXDY4gI68= 46 146 github.com/golang/glog v1.2.0/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= 147 + github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= 47 148 github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= 48 149 github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= 150 + github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= 151 + github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= 152 + github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= 153 + github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= 154 + github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= 155 + github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= 156 + github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= 157 + github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= 158 + github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= 159 + github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= 160 + github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= 161 + github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= 162 + github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= 163 + github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb h1:PBC98N2aIaM3XXiurYmW7fx4GZkL8feAMVq7nEjURHk= 164 + github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= 165 + github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= 166 + github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= 167 + github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= 168 + github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= 169 + github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= 170 + github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= 49 171 github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= 50 172 github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= 173 + github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= 174 + github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= 175 + github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= 176 + github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= 177 + github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= 178 + github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= 51 179 github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= 52 180 github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= 181 + github.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs= 182 + github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0= 183 + github.com/googleapis/gax-go/v2 v2.12.5 h1:8gw9KZK8TiVKB6q3zHY3SBzLnrGp6HQjyfYBYGmXdxA= 184 + github.com/googleapis/gax-go/v2 v2.12.5/go.mod h1:BUDKcWo+RaKq5SC9vVYL0wLADa3VcfswbOMMRmB9H3E= 53 185 github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= 54 186 github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= 55 187 github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= ··· 58 190 github.com/hashicorp/go-version v1.0.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= 59 191 github.com/hashicorp/go-version v1.4.0 h1:aAQzgqIrRKRa7w75CKpbBxYsmUoPjzVm1W59ca1L0J4= 60 192 github.com/hashicorp/go-version v1.4.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= 193 + github.com/holiman/uint256 v1.3.0 h1:4wdcm/tnd0xXdu7iS3ruNvxkWwrb4aeBQv19ayYn8F4= 194 + github.com/holiman/uint256 v1.3.0/go.mod h1:EOMSn4q6Nyt9P6efbI3bueV4e1b3dGlUCXeiRV4ng7E= 61 195 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= 62 196 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= 63 197 github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= ··· 70 204 github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= 71 205 github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4= 72 206 github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= 207 + github.com/klauspost/compress v1.16.0 h1:iULayQNOReoYUe+1qtKOqw9CwJv3aNQu8ivo7lw1HU4= 208 + github.com/klauspost/compress v1.16.0/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= 73 209 github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= 74 210 github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= 75 211 github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= ··· 77 213 github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= 78 214 github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= 79 215 github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= 216 + github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= 217 + github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= 218 + github.com/leanovate/gopter v0.2.9 h1:fQjYxZaynp97ozCzfOyOuAGOU4aU/z37zf/tOujFk7c= 219 + github.com/leanovate/gopter v0.2.9/go.mod h1:U2L/78B+KVFIx2VmW6onHJQzXtFb+p5y3y2Sh+Jxxv8= 80 220 github.com/lmittmann/tint v1.0.4 h1:LeYihpJ9hyGvE0w+K2okPTGUdVLfng1+nDNVR4vWISc= 81 221 github.com/lmittmann/tint v1.0.4/go.mod h1:HIS3gSy7qNwGCj+5oRjAutErFBl4BzdQP6cJZ0NfMwE= 82 222 github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= 83 223 github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= 224 + github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU= 225 + github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= 84 226 github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= 85 227 github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= 228 + github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI= 229 + github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= 86 230 github.com/mitchellh/gox v1.0.1 h1:x0jD3dcHk9a9xPSDN6YEL4xL6Qz0dvNYm8yZqui5chI= 87 231 github.com/mitchellh/gox v1.0.1/go.mod h1:ED6BioOGXMswlXa2zxfh/xdd5QhwYliBFn9V18Ap4z4= 88 232 github.com/mitchellh/iochan v1.0.0 h1:C+X3KsSTLFVBr/tK1eYN/vs4rJcvsiLU338UhYPJWeY= 89 233 github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= 234 + github.com/mmcloughlin/addchain v0.4.0 h1:SobOdjm2xLj1KkXN5/n0xTIWyZA2+s99UCY1iPfkHRY= 235 + github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqkyU72HC5wJ4RlU= 236 + github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= 237 + github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= 238 + github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= 90 239 github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= 91 240 github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= 92 241 github.com/orandin/slog-gorm v1.3.2 h1:C0lKDQPAx/pF+8K2HL7bdShPwOEJpPM0Bn80zTzxU1g= ··· 99 248 github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= 100 249 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= 101 250 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= 251 + github.com/prometheus/client_golang v1.12.0 h1:C+UIj/QWtmqY13Arb8kwMt5j34/0Z2iKamrJ+ryC0Gg= 252 + github.com/prometheus/client_golang v1.12.0/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= 253 + github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= 254 + github.com/prometheus/client_model v0.2.1-0.20210607210712-147c58e9608a h1:CmF68hwI0XsOQ5UwlBopMi2Ow4Pbg32akc4KIVCOm+Y= 255 + github.com/prometheus/client_model v0.2.1-0.20210607210712-147c58e9608a/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= 256 + github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= 257 + github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= 258 + github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= 259 + github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= 260 + github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= 261 + github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= 102 262 github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= 103 263 github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= 264 + github.com/rs/cors v1.7.0 h1:+88SsELBHx5r+hZ8TCkggzSstaWNbDvThkVK8H6f9ik= 265 + github.com/rs/cors v1.7.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= 104 266 github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= 105 267 github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= 106 268 github.com/samber/slog-http v1.4.0 h1:s2hSzMlQBFDIPTUBDm6G+SGfv7F4xR9q8edjxtY6aho= 107 269 github.com/samber/slog-http v1.4.0/go.mod h1:n6h4x2ZBeTgLqMKf95EuNlU6mcJF1b/RVLxo1od5+V0= 108 270 github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= 109 271 github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= 272 + github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible h1:Bn1aCHHRnjv4Bl16T8rcaFjYSrGrIZvpiGO6P3Q4GpU= 273 + github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= 110 274 github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= 111 - github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= 112 - github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= 275 + github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= 276 + github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= 113 277 github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A= 114 278 github.com/skeema/knownhosts v1.2.2/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= 115 279 github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= 280 + github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= 281 + github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= 116 282 github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= 117 283 github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= 118 284 github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= 119 285 github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= 120 286 github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= 121 287 github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= 288 + github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= 289 + github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= 290 + github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= 122 291 github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= 123 292 github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= 124 - github.com/urfave/cli/v2 v2.4.0 h1:m2pxjjDFgDxSPtO8WSdbndj17Wu2y8vOT86wE/tjr+I= 125 - github.com/urfave/cli/v2 v2.4.0/go.mod h1:NX9W0zmTvedE5oDoOMs2RTC8RvdK98NTYZE5LbaEYPg= 293 + github.com/supranational/blst v0.3.11 h1:LyU6FolezeWAhvQk0k6O/d49jqgO52MSDDfYgbeoEm4= 294 + github.com/supranational/blst v0.3.11/go.mod h1:jZJtfjgudtNl4en1tzwPIV3KjUnQUvG3/j+w+fVonLw= 295 + github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 h1:epCh84lMvA70Z7CTTCmYQn2CKbY8j86K7/FAIr141uY= 296 + github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7/go.mod h1:q4W45IWZaF22tdD+VEXcAWRA037jwmWEB5VWYORlTpc= 297 + github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU= 298 + github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= 299 + github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk= 300 + github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= 301 + github.com/urfave/cli/v2 v2.25.7 h1:VAzn5oq403l5pHjc4OhD54+XGO9cdKVL/7lDjF+iKUs= 302 + github.com/urfave/cli/v2 v2.25.7/go.mod h1:8qnjx1vcq5s2/wpsqoZFndg2CE5tNFyrTvS6SinrnYQ= 126 303 github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= 127 304 github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= 305 + github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 h1:bAn7/zixMGCfxrRTfdpNzjtPYqr8smhKouy9mxVdGPU= 306 + github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673/go.mod h1:N3UwUGtsrSj3ccvlPHLoLsHnpR27oXr4ZE984MbSER8= 128 307 github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= 129 308 gitlab.com/gitlab-org/release-cli v0.18.0 h1:vVNxGRIy4w4FIo0ucO8ZyYecSH+jwV+vdZygpBt+E/0= 130 309 gitlab.com/gitlab-org/release-cli v0.18.0/go.mod h1:VRzoYTcZ/1CgyaQBKbz0LIfjigKGUh0leWA1f1cLAFc= 131 - go.opentelemetry.io/otel v1.19.0 h1:MuS/TNf4/j4IXsZuJegVzI1cwut7Qc00344rgH7p8bs= 132 - go.opentelemetry.io/otel v1.19.0/go.mod h1:i0QyjOq3UPoTzff0PJB2N66fb4S0+rSbSB15/oyH9fY= 133 - go.opentelemetry.io/otel/trace v1.19.0 h1:DFVQmlVbfVeOuBRrwdtaehRrWiL1JoVs9CPIQ1Dzxpg= 134 - go.opentelemetry.io/otel/trace v1.19.0/go.mod h1:mfaSyvGyEJEI0nyV2I4qhNQnbBOUUmYZpYojqMnX2vo= 310 + go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= 311 + go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= 312 + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= 313 + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0= 314 + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= 315 + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= 316 + go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= 317 + go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= 318 + go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= 319 + go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= 320 + go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= 321 + go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= 322 + go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= 323 + go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= 135 324 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= 325 + golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= 136 326 golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= 137 327 golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= 138 328 golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= 139 329 golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= 140 330 golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= 141 331 golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= 332 + golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= 142 333 golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= 143 334 golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= 335 + golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= 336 + golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= 337 + golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= 144 338 golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= 145 339 golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= 146 - golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= 147 - golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= 340 + golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 341 + golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 342 + golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 343 + golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 344 + golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 148 345 golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 346 + golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= 149 347 golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= 150 348 golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= 349 + golang.org/x/net v0.0.0-20220708220712-1185a9018129/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= 151 350 golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= 152 351 golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= 153 352 golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= 154 353 golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= 155 354 golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= 156 355 golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= 356 + golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= 357 + golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= 358 + golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= 359 + golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 360 + golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 157 361 golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 158 362 golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 159 363 golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 160 364 golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= 161 365 golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= 366 + golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= 162 367 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= 368 + golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 163 369 golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 370 + golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 164 371 golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 165 372 golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 166 373 golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= ··· 169 376 golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 170 377 golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 171 378 golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 379 + golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 172 380 golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 173 381 golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 174 382 golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= ··· 191 399 golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= 192 400 golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= 193 401 golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= 402 + golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= 403 + golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= 194 404 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= 405 + golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= 406 + golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= 407 + golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= 408 + golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= 195 409 golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= 196 410 golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= 197 411 golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= 198 - golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg= 199 - golang.org/x/tools v0.23.0/go.mod h1:pnu6ufv6vQkll6szChhK3C3L/ruaIv5eBeztNG8wtsI= 200 412 golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 413 + golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 414 + golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= 415 + golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= 416 + google.golang.org/api v0.189.0 h1:equMo30LypAkdkLMBqfeIqtyAnlyig1JSZArl4XPwdI= 417 + google.golang.org/api v0.189.0/go.mod h1:FLWGJKb0hb+pU2j+rJqwbnsF+ym+fQs73rbJ+KAUgy8= 418 + google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= 419 + google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= 420 + google.golang.org/appengine/v2 v2.0.2 h1:MSqyWy2shDLwG7chbwBJ5uMyw6SNqJzhJHNDwYB0Akk= 421 + google.golang.org/appengine/v2 v2.0.2/go.mod h1:PkgRUWz4o1XOvbqtWTkBtCitEJ5Tp4HoVEdMMYQR/8E= 422 + google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= 423 + google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= 424 + google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= 425 + google.golang.org/genproto v0.0.0-20240722135656-d784300faade h1:lKFsS7wpngDgSCeFn7MoLy+wBDQZ1UQIJD4UNM1Qvkg= 426 + google.golang.org/genproto v0.0.0-20240722135656-d784300faade/go.mod h1:FfBgJBJg9GcpPvKIuHSZ/aE1g2ecGL74upMzGZjiGEY= 427 + google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 h1:0+ozOGcrp+Y8Aq8TLNN2Aliibms5LEzsq99ZZmAGYm0= 428 + google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094/go.mod h1:fJ/e3If/Q67Mj99hin0hMhiNyCRmt6BQ2aWIJshUSJw= 429 + google.golang.org/genproto/googleapis/rpc v0.0.0-20240722135656-d784300faade h1:oCRSWfwGXQsqlVdErcyTt4A93Y8fo0/9D4b1gnI++qo= 430 + google.golang.org/genproto/googleapis/rpc v0.0.0-20240722135656-d784300faade/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= 431 + google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= 432 + google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= 433 + google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= 434 + google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= 435 + google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= 436 + google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= 437 + google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= 438 + google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= 439 + google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= 440 + google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= 441 + google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= 442 + google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= 443 + google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= 444 + google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= 445 + google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= 446 + google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= 447 + google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= 448 + google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= 201 449 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 202 450 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 203 451 gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= ··· 205 453 gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= 206 454 gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= 207 455 gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= 208 - gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= 209 456 gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= 210 457 gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= 211 458 gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= ··· 215 462 gorm.io/driver/sqlite v1.5.5/go.mod h1:6NgQ7sQWAIFsPrJJl1lSNSu2TABh0ZZ/zm5fosATavE= 216 463 gorm.io/gorm v1.25.9 h1:wct0gxZIELDk8+ZqF/MVnHLkA1rvYlBWUMv2EdsK1g8= 217 464 gorm.io/gorm v1.25.9/go.mod h1:hbnx/Oo0ChWMn1BIhpy1oYozzpM15i4YPuHDmfYtwg8= 465 + honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= 466 + honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= 467 + rsc.io/tmplfunc v0.0.3 h1:53XFQh69AfOa8Tw0Jm7t+GV7KZhOi6jzsCzTtKbMvzU= 468 + rsc.io/tmplfunc v0.0.3/go.mod h1:AG3sTPzElb1Io3Yg4voV9AGZJuleGAwaVRxL9M49PhA=
+1
js/app/.gitignore
··· 57 57 ios 58 58 android 59 59 code-signing-dev 60 + generated
+25 -17
js/app/app/(tabs)/_layout.tsx
··· 1 1 import { Link, Tabs } from "expo-router"; 2 - import { Button, useTheme } from "tamagui"; 2 + import { Button, useTheme, View } from "tamagui"; 3 3 import { Atom, AudioWaveform } from "@tamagui/lucide-icons"; 4 - import MainScreen from "./index"; 5 4 6 5 export default function TabLayout() { 7 6 const theme = useTheme(); 8 7 9 8 return ( 10 - <MainScreen /> 11 - // <Tabs 12 - // screenOptions={{ 13 - // tabBarActiveTintColor: theme.red10.val, 14 - // }} 15 - // > 16 - // <Tabs.Screen 17 - // name="index" 18 - // options={{ 19 - // title: "Aquareum", 20 - // tabBarIcon: ({ color }) => <Atom color={color} />, 21 - // headerShown: false, 22 - // }} 23 - // /> 24 - // </Tabs> 9 + // <MainScreen /> 10 + <Tabs 11 + screenOptions={{ 12 + tabBarActiveTintColor: theme.red10.val, 13 + }} 14 + tabBar={() => <View></View>} 15 + > 16 + <Tabs.Screen 17 + name="index" 18 + options={{ 19 + title: "Aquareum", 20 + tabBarIcon: ({ color }) => <Atom color={color} />, 21 + headerShown: false, 22 + }} 23 + /> 24 + <Tabs.Screen 25 + name="admin" 26 + options={{ 27 + title: "Admin", 28 + tabBarIcon: ({ color }) => <Atom color={color} />, 29 + headerShown: false, 30 + }} 31 + /> 32 + </Tabs> 25 33 ); 26 34 }
+5
js/app/app/(tabs)/admin.tsx
··· 1 + import Admin from "components/admin"; 2 + 3 + export default function AdminPage() { 4 + return <Admin></Admin>; 5 + }
+1
js/app/app/(tabs)/index.tsx
··· 46 46 import * as env from "constants/env"; 47 47 import { useState } from "react"; 48 48 import GetApps from "components/get-apps"; 49 + import { Link } from "expo-router"; 49 50 50 51 const WebviewIframe = ({ src }) => { 51 52 if (isWeb) {
+2 -1
js/app/app/Provider.tsx
··· 3 3 import { ToastProvider, ToastViewport } from "@tamagui/toast"; 4 4 import { CurrentToast } from "./CurrentToast"; 5 5 import { config } from "../tamagui.config"; 6 + import NativeProvider from "components/providers"; 6 7 7 8 export function Provider({ 8 9 children, ··· 26 27 ] 27 28 } 28 29 > 29 - {children} 30 + <NativeProvider>{children}</NativeProvider> 30 31 <CurrentToast /> 31 32 <ToastViewport name="default" top="$8" left={0} right={0} /> 32 33 </ToastProvider>
+9
js/app/components/admin.native.tsx
··· 1 + import { View, Text } from "tamagui"; 2 + 3 + export default function Admin() { 4 + return ( 5 + <View> 6 + <Text>web-only for now</Text> 7 + </View> 8 + ); 9 + }
+83
js/app/components/admin.tsx
··· 1 + import { Button, View, TextArea, Input, Label } from "tamagui"; 2 + import { ConnectButton } from "@rainbow-me/rainbowkit"; 3 + import { useSignTypedData, useAccount } from "wagmi"; 4 + import schema from "generated/eip712-schema.json"; 5 + import { useState } from "react"; 6 + import { useToastController } from "@tamagui/toast"; 7 + import { EXPO_PUBLIC_AQUAREUM_URL } from "constants/env"; 8 + 9 + export default function AdminPage() { 10 + const { signTypedDataAsync } = useSignTypedData(); 11 + const account = useAccount(); 12 + const [streamer, setStreamer] = useState(""); 13 + const [title, setTitle] = useState(""); 14 + const [loading, setLoading] = useState(false); 15 + const toast = useToastController(); 16 + const disabled = loading || streamer === "" || title === ""; 17 + return ( 18 + <View f={1} ai="center" jc="center"> 19 + <ConnectButton /> 20 + {account.address && ( 21 + <View> 22 + <Label> 23 + Streamer 24 + <Input value={streamer} onChangeText={setStreamer} /> 25 + </Label> 26 + <Label> 27 + Message 28 + <TextArea value={title} onChangeText={setTitle} /> 29 + </Label> 30 + <Button 31 + disabled={disabled} 32 + opacity={disabled ? 0.5 : 1} 33 + onPress={async () => { 34 + try { 35 + setLoading(true); 36 + const message = { 37 + signer: account.address, 38 + time: Date.now(), 39 + data: { streamer, title }, 40 + }; 41 + const signature = await signTypedDataAsync({ 42 + types: schema.types, 43 + domain: schema.domain, 44 + primaryType: "GoLive", 45 + message: message, 46 + }); 47 + const res = await fetch( 48 + `${EXPO_PUBLIC_AQUAREUM_URL}/api/golive`, 49 + { 50 + method: "POST", 51 + body: JSON.stringify({ 52 + primaryType: "GoLive", 53 + domain: schema.domain, 54 + message: message, 55 + signature: signature, 56 + }), 57 + }, 58 + ); 59 + if (!res.ok) { 60 + const text = await res.text(); 61 + throw new Error(`http ${res.status} ${text}`); 62 + } 63 + toast.show("GoLive Succeeded", { 64 + message: "Let's goooooo!", 65 + }); 66 + setStreamer(""); 67 + setTitle(""); 68 + } catch (e) { 69 + toast.show("GoLive Failed", { 70 + message: e.message, 71 + }); 72 + } finally { 73 + setLoading(false); 74 + } 75 + }} 76 + > 77 + {loading ? "Loading..." : "Sign message"} 78 + </Button> 79 + </View> 80 + )} 81 + </View> 82 + ); 83 + }
+5
js/app/components/providers.native.tsx
··· 1 + import React from "react"; 2 + 3 + export default function Provider({ children }: { children: React.ReactNode }) { 4 + return <>{children}</>; 5 + }
+42
js/app/components/providers.tsx
··· 1 + // Web-only provider 2 + import "@rainbow-me/rainbowkit/styles.css"; 3 + 4 + import { getDefaultConfig, RainbowKitProvider } from "@rainbow-me/rainbowkit"; 5 + import { WagmiProvider } from "wagmi"; 6 + import { mainnet, polygon, optimism, arbitrum, base } from "wagmi/chains"; 7 + import { QueryClientProvider, QueryClient } from "@tanstack/react-query"; 8 + import { View, Text } from "tamagui"; 9 + 10 + const queryClient = new QueryClient(); 11 + 12 + const config = getDefaultConfig({ 13 + appName: "Aquareum", 14 + appUrl: "https://aquareum.tv", 15 + projectId: "32c8489fbff0b10e2e011b36c36b4466", 16 + chains: [mainnet, polygon, optimism, arbitrum, base], 17 + ssr: true, // If your dApp uses server side rendering (SSR) 18 + }); 19 + 20 + export default function Provider({ children }: { children: React.ReactNode }) { 21 + return ( 22 + <WagmiProvider config={config}> 23 + <QueryClientProvider client={queryClient}> 24 + <RainbowKitProvider coolMode={true}> 25 + {/* RainbowKitProvider hides our children unless we do this...? */} 26 + <View 27 + f={1} 28 + style={{ 29 + position: "absolute", 30 + top: 0, 31 + left: 0, 32 + width: "100vw", 33 + height: "100vh", 34 + }} 35 + > 36 + {children} 37 + </View> 38 + </RainbowKitProvider> 39 + </QueryClientProvider> 40 + </WagmiProvider> 41 + ); 42 + }
+5 -1
js/app/package.json
··· 24 24 "preset": "jest-expo" 25 25 }, 26 26 "dependencies": { 27 + "@rainbow-me/rainbowkit": "2", 27 28 "@react-native-firebase/app": "^20.3.0", 28 29 "@react-native-firebase/messaging": "^20.3.0", 29 30 "@react-navigation/native": "^6.1.17", 30 31 "@tamagui/config": "^1.102.3", 31 32 "@tamagui/lucide-icons": "^1.102.3", 32 33 "@tamagui/toast": "^1.102.3", 34 + "@tanstack/react-query": "^5.51.16", 33 35 "babel-preset-expo": "^11.0.12", 34 36 "burnt": "^0.12.2", 35 37 "chrono-node": "^2.7.6", ··· 54 56 "react-native-svg": "15.4.0", 55 57 "react-native-web": "^0.19.12", 56 58 "react-native-webview": "13.10.5", 57 - "tamagui": "^1.102.3" 59 + "tamagui": "^1.102.3", 60 + "viem": "2.x", 61 + "wagmi": "2" 58 62 }, 59 63 "devDependencies": { 60 64 "@babel/core": "^7.24.9",
+92 -69
pkg/api/api.go
··· 13 13 "time" 14 14 15 15 "github.com/NYTimes/gziphandler" 16 + "github.com/julienschmidt/httprouter" 17 + "github.com/rs/cors" 16 18 sloghttp "github.com/samber/slog-http" 17 19 18 20 "aquareum.tv/aquareum/js/app" 19 21 "aquareum.tv/aquareum/pkg/config" 22 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712" 23 + apierrors "aquareum.tv/aquareum/pkg/errors" 20 24 "aquareum.tv/aquareum/pkg/log" 21 25 "aquareum.tv/aquareum/pkg/model" 26 + "aquareum.tv/aquareum/pkg/notifications" 27 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 22 28 ) 23 29 24 30 type AquareumAPI struct { 25 - CLI *config.CLI 26 - Model model.Model 27 - Updater *Updater 28 - Mimes map[string]string 31 + CLI *config.CLI 32 + Model model.Model 33 + Updater *Updater 34 + Signer *eip712.EIP712Signer 35 + Mimes map[string]string 36 + FirebaseNotifier notifications.FirebaseNotifier 29 37 } 30 38 31 - func MakeAquareumAPI(cli *config.CLI, mod model.Model) (*AquareumAPI, error) { 39 + func MakeAquareumAPI(cli *config.CLI, mod model.Model, signer *eip712.EIP712Signer, noter notifications.FirebaseNotifier) (*AquareumAPI, error) { 32 40 updater, err := PrepareUpdater(cli) 33 41 if err != nil { 34 42 return nil, err 35 43 } 36 - a := &AquareumAPI{CLI: cli, Model: mod, Updater: updater} 44 + a := &AquareumAPI{CLI: cli, Model: mod, Updater: updater, Signer: signer, FirebaseNotifier: noter} 37 45 a.Mimes, err = updater.GetMimes() 38 46 if err != nil { 39 47 return nil, err ··· 61 69 } 62 70 63 71 func (a *AquareumAPI) Handler(ctx context.Context) (http.Handler, error) { 64 - mux := http.NewServeMux() 65 72 files, err := app.Files() 66 73 if err != nil { 67 74 return nil, err 68 75 } 69 - mux.Handle("/dl/", a.AppDownloadHandler(ctx)) 70 - mux.Handle("/api/notification", a.HandleNotification(ctx)) 76 + router := httprouter.New() 77 + apiRouter := httprouter.New() 78 + apiRouter.HandlerFunc("POST", "/api/notification", a.HandleNotification(ctx)) 79 + apiRouter.HandlerFunc("POST", "/api/golive", a.HandleGoLive(ctx)) 71 80 // old clients 72 - mux.Handle("/app-updates", a.HandleAppUpdates(ctx)) 81 + router.HandlerFunc("GET", "/app-updates", a.HandleAppUpdates(ctx)) 73 82 // new ones 74 - mux.Handle("/api/manifest", a.HandleAppUpdates(ctx)) 75 - mux.Handle("/api", a.HandleAPI404(ctx)) 76 - mux.HandleFunc("/", a.FileHandler(ctx, http.FileServer(AppHostingFS{http.FS(files)}))) 77 - handler := sloghttp.Recovery(mux) 83 + apiRouter.HandlerFunc("GET", "/api/manifest", a.HandleAppUpdates(ctx)) 84 + apiRouter.NotFound = a.HandleAPI404(ctx) 85 + router.Handler("GET", "/api/*resource", apiRouter) 86 + router.Handler("POST", "/api/*resource", apiRouter) 87 + router.Handler("PUT", "/api/*resource", apiRouter) 88 + router.Handler("PATCH", "/api/*resource", apiRouter) 89 + router.Handler("DELETE", "/api/*resource", apiRouter) 90 + router.Handler("GET", "/dl/*params", a.AppDownloadHandler(ctx)) 91 + router.NotFound = a.FileHandler(ctx, http.FileServer(AppHostingFS{http.FS(files)})) 92 + handler := sloghttp.Recovery(router) 93 + handler = cors.Default().Handler(handler) 78 94 handler = sloghttp.New(slog.Default())(handler) 95 + 79 96 return handler, nil 80 97 } 81 98 ··· 124 141 } 125 142 } 126 143 144 + func (a *AquareumAPI) HandleGoLive(ctx context.Context) http.HandlerFunc { 145 + return func(w http.ResponseWriter, req *http.Request) { 146 + payload, err := io.ReadAll(req.Body) 147 + if err != nil { 148 + apierrors.WriteHTTPBadRequest(w, "error reading body", err) 149 + return 150 + } 151 + signed, err := a.Signer.Verify(payload) 152 + if err != nil { 153 + apierrors.WriteHTTPBadRequest(w, "could not verify signature on payload", err) 154 + return 155 + } 156 + golive, ok := signed.Data().(*v0.GoLive) 157 + if !ok { 158 + log.Log(ctx, "got signed payload but it wasn't a golive") 159 + apierrors.WriteHTTPBadRequest(w, "not a golive", nil) 160 + return 161 + } 162 + if signed.Signer() != a.CLI.AdminAccount { 163 + log.Log(ctx, "wrong user tried to golive", "signer", signed.Signer(), "admin", a.CLI.AdminAccount) 164 + apierrors.WriteHTTPForbidden(w, "admins only for now", nil) 165 + return 166 + } 167 + log.Log(ctx, "got signed & verified payload", "payload", signed) 168 + if a.FirebaseNotifier == nil { 169 + apierrors.WriteHTTPNotImplemented(w, "no firebase token, can't notify", nil) 170 + return 171 + } 172 + nots, err := a.Model.ListNotifications() 173 + if err != nil { 174 + apierrors.WriteHTTPInternalServerError(w, "couldn't list notifications", err) 175 + return 176 + } 177 + err = a.FirebaseNotifier.Blast(ctx, nots, golive) 178 + if err != nil { 179 + apierrors.WriteHTTPInternalServerError(w, "couldn't blast", err) 180 + return 181 + } 182 + w.WriteHeader(204) 183 + } 184 + } 185 + 127 186 func (a *AquareumAPI) HandleNotification(ctx context.Context) http.HandlerFunc { 128 187 return func(w http.ResponseWriter, req *http.Request) { 129 - if req.Method == "POST" { 130 - payload, err := io.ReadAll(req.Body) 131 - if err != nil { 132 - log.Log(ctx, "error reading notification create", "error", err) 133 - w.WriteHeader(400) 134 - return 135 - } 136 - n := NotificationPayload{} 137 - err = json.Unmarshal(payload, &n) 138 - if err != nil { 139 - log.Log(ctx, "error unmarshalling notification create", "error", err) 140 - w.WriteHeader(400) 141 - return 142 - } 143 - err = a.Model.CreateNotification(n.Token) 144 - if err != nil { 145 - log.Log(ctx, "error creating notification", "error", err) 146 - w.WriteHeader(400) 147 - return 148 - } 149 - log.Log(ctx, "successfully created notification", "token", n.Token) 150 - w.WriteHeader(200) 151 - } else if req.Method == "GET" { 152 - // disallow unless we have an admin token 153 - if a.CLI.AdminSecret == "" { 154 - w.WriteHeader(http.StatusNotImplemented) 155 - return 156 - } 157 - log.Log(ctx, a.CLI.AdminSecret) 158 - auth := req.Header.Get("Authorization") 159 - if auth == "" { 160 - w.WriteHeader(http.StatusUnauthorized) 161 - return 162 - } 163 - expected := fmt.Sprintf("Bearer %s", a.CLI.AdminSecret) 164 - if auth != expected { 165 - w.WriteHeader(http.StatusForbidden) 166 - return 167 - } 168 - nots, err := a.Model.ListNotifications() 169 - if err != nil { 170 - log.Log(ctx, "error listing notifications", "error", err) 171 - w.WriteHeader(500) 172 - return 173 - } 174 - bs, err := json.Marshal(nots) 175 - if err != nil { 176 - log.Log(ctx, "error marshalling notifications", "error", err) 177 - w.WriteHeader(500) 178 - return 179 - } 180 - w.WriteHeader(200) 181 - w.Write(bs) 182 - } else { 183 - w.WriteHeader(http.StatusMethodNotAllowed) 188 + payload, err := io.ReadAll(req.Body) 189 + if err != nil { 190 + log.Log(ctx, "error reading notification create", "error", err) 191 + w.WriteHeader(400) 184 192 return 185 193 } 194 + n := NotificationPayload{} 195 + err = json.Unmarshal(payload, &n) 196 + if err != nil { 197 + log.Log(ctx, "error unmarshalling notification create", "error", err) 198 + w.WriteHeader(400) 199 + return 200 + } 201 + err = a.Model.CreateNotification(n.Token) 202 + if err != nil { 203 + log.Log(ctx, "error creating notification", "error", err) 204 + w.WriteHeader(400) 205 + return 206 + } 207 + log.Log(ctx, "successfully created notification", "token", n.Token) 208 + w.WriteHeader(200) 186 209 } 187 210 } 188 211
+55
pkg/api/api_test.go
··· 1 1 package api 2 2 3 3 import ( 4 + "bytes" 4 5 "context" 5 6 "net/http" 6 7 "net/http/httptest" 7 8 "testing" 8 9 9 10 "aquareum.tv/aquareum/pkg/config" 11 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712" 12 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712/eip712test" 10 13 "aquareum.tv/aquareum/pkg/model" 14 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 11 15 "github.com/stretchr/testify/assert" 16 + "github.com/stretchr/testify/require" 12 17 ) 13 18 14 19 func TestRedirectHandler(t *testing.T) { ··· 73 78 }) 74 79 } 75 80 } 81 + 82 + type MockFirebase struct { 83 + } 84 + 85 + func (m *MockFirebase) Blast(ctx context.Context, nots []model.Notification, golive *v0.GoLive) error { 86 + return nil 87 + } 88 + 89 + func TestGoLiveHandler(t *testing.T) { 90 + mod, err := model.MakeDB("sqlite://:memory:") 91 + require.NoError(t, err) 92 + eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 93 + tests := []struct { 94 + adminAccount string 95 + responseCode int 96 + name string 97 + }{ 98 + { 99 + name: "successful auth", 100 + adminAccount: signer.Opts.EthAccountAddr, 101 + responseCode: 204, 102 + }, 103 + { 104 + name: "failed auth", 105 + adminAccount: "0x156118110DcD4b7c91fC1F4200691d4b6e3BcaF7", 106 + responseCode: 403, 107 + }, 108 + } 109 + for _, tt := range tests { 110 + t.Run(tt.name, func(t *testing.T) { 111 + cli := &config.CLI{AdminAccount: tt.adminAccount, FirebaseServiceAccount: "foo"} 112 + a := AquareumAPI{CLI: cli, Model: mod, Signer: signer, FirebaseNotifier: &MockFirebase{}} 113 + handler := a.HandleGoLive(context.Background()) 114 + 115 + goLive := v0.GoLive{ 116 + Streamer: "@aquareum.tv", 117 + Title: "Let's gooooooo!", 118 + } 119 + signed, err := signer.Sign(goLive) 120 + require.NoError(t, err) 121 + 122 + req := httptest.NewRequest("POST", "https://aquareum.tv/api/golive", bytes.NewReader(signed)) 123 + rr := httptest.NewRecorder() 124 + 125 + handler.ServeHTTP(rr, req) 126 + require.Equal(t, tt.responseCode, rr.Code) 127 + }) 128 + } 129 + }) 130 + }
+24 -3
pkg/cmd/aquareum.go
··· 9 9 "runtime" 10 10 "syscall" 11 11 12 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712" 12 13 "aquareum.tv/aquareum/pkg/log" 14 + "aquareum.tv/aquareum/pkg/notifications" 13 15 "aquareum.tv/aquareum/pkg/proc" 16 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 14 17 15 18 "aquareum.tv/aquareum/pkg/api" 16 19 "aquareum.tv/aquareum/pkg/config" ··· 51 54 fs.StringVar(&cli.TLSKeyPath, "tls-key", tlsKeyFile, "Path to TLS key") 52 55 fs.StringVar(&cli.SigningKeyPath, "signing-key", "", "Path to signing key for pushing OTA updates to the app") 53 56 fs.StringVar(&cli.DBPath, "db-path", dbFile, "path to sqlite database file") 54 - fs.StringVar(&cli.AdminSecret, "admin-secret", "", "secret admin token (to be replaced soon)") 57 + fs.StringVar(&cli.AdminAccount, "admin-account", "", "ethereum account that administrates this aquareum node") 58 + fs.StringVar(&cli.FirebaseServiceAccount, "firebase-service-account", "", "JSON string of a firebase service account key") 55 59 fs.IntVar(&cli.MistAdminPort, "mist-admin-port", 14242, "MistServer admin port (internal use only)") 56 60 fs.IntVar(&cli.MistRTMPPort, "mist-rtmp-port", 11935, "MistServer RTMP port (internal use only)") 57 61 fs.IntVar(&cli.MistHTTPPort, "mist-http-port", 18080, "MistServer HTTP port (internal use only)") ··· 61 65 ff.Parse( 62 66 fs, os.Args[1:], 63 67 ff.WithEnvVarPrefix("AQ"), 64 - ff.WithEnvVarSplit(","), 65 68 ) 66 69 67 70 log.Log(context.Background(), ··· 74 77 if *version { 75 78 return nil 76 79 } 80 + 81 + schema, err := v0.MakeV0Schema() 82 + if err != nil { 83 + return err 84 + } 85 + signer, err := eip712.MakeEIP712Signer(context.Background(), &eip712.EIP712SignerOptions{ 86 + Schema: schema, 87 + }) 88 + if err != nil { 89 + return err 90 + } 77 91 mod, err := model.MakeDB(cli.DBPath) 78 92 if err != nil { 79 93 return err 80 94 } 81 - a, err := api.MakeAquareumAPI(&cli, mod) 95 + var noter notifications.FirebaseNotifier 96 + if cli.FirebaseServiceAccount != "" { 97 + noter, err = notifications.MakeFirebaseNotifier(context.Background(), cli.FirebaseServiceAccount) 98 + if err != nil { 99 + return err 100 + } 101 + } 102 + a, err := api.MakeAquareumAPI(&cli, mod, signer, noter) 82 103 if err != nil { 83 104 return err 84 105 }
+15 -14
pkg/config/config.go
··· 29 29 } 30 30 31 31 type CLI struct { 32 - TLSCertPath string 33 - TLSKeyPath string 34 - SigningKeyPath string 35 - DBPath string 36 - Insecure bool 37 - HttpAddr string 38 - HttpsAddr string 39 - HttpInternalAddr string 40 - AdminSecret string 41 - GitLabURL string 42 - Build *BuildFlags 43 - MistAdminPort int 44 - MistRTMPPort int 45 - MistHTTPPort int 32 + TLSCertPath string 33 + TLSKeyPath string 34 + SigningKeyPath string 35 + DBPath string 36 + Insecure bool 37 + HttpAddr string 38 + HttpsAddr string 39 + HttpInternalAddr string 40 + GitLabURL string 41 + FirebaseServiceAccount string 42 + AdminAccount string 43 + Build *BuildFlags 44 + MistAdminPort int 45 + MistRTMPPort int 46 + MistHTTPPort int 46 47 } 47 48 48 49 func (cli *CLI) OwnInternalURL() string {
+286
pkg/crypto/signers/eip712/eip712.go
··· 1 + package eip712 2 + 3 + import ( 4 + "bytes" 5 + "context" 6 + "encoding/json" 7 + "fmt" 8 + "math/big" 9 + "reflect" 10 + "strings" 11 + "time" 12 + 13 + "aquareum.tv/aquareum/pkg/log" 14 + "aquareum.tv/aquareum/pkg/schema" 15 + "github.com/ethereum/go-ethereum/accounts" 16 + "github.com/ethereum/go-ethereum/accounts/keystore" 17 + "github.com/ethereum/go-ethereum/common" 18 + "github.com/ethereum/go-ethereum/common/hexutil" 19 + "github.com/ethereum/go-ethereum/crypto" 20 + "github.com/ethereum/go-ethereum/signer/core/apitypes" 21 + ) 22 + 23 + // type Signer interface { 24 + // Sign(action Action) (*SignedEvent, error) 25 + // Verify(unverified UnverifiedEvent) (*SignedEvent, error) 26 + // } 27 + 28 + // schema-aware signer for signing actions and verifying untrusted payloads 29 + // type Signer interface { 30 + // Sign(action Action) (*SignedEvent, error) 31 + // Verify(unverified UnverifiedEvent) (*SignedEvent, error) 32 + // } 33 + 34 + // Signer implemented with EIP712 35 + type EIP712Signer struct { 36 + // // When I sign an action, which schema should I use? 37 + // PrimarySchema *Schema 38 + // // All supported schemas for verification purposes 39 + // Schemas []*Schema 40 + // // Eth Account Manager 41 + // AccountManager eth.AccountManager 42 + KeyStore *keystore.KeyStore 43 + Account *accounts.Account 44 + Opts *EIP712SignerOptions 45 + EIP712Schema *schema.EIP712SchemaStruct 46 + } 47 + 48 + type EIP712SignerOptions struct { 49 + // PrimarySchema *Schema 50 + // Schemas []*Schema 51 + EthKeystorePassword string 52 + EthKeystorePath string 53 + EthAccountAddr string 54 + Schema schema.Schema 55 + } 56 + 57 + func MakeEIP712Signer(ctx context.Context, opts *EIP712SignerOptions) (*EIP712Signer, error) { 58 + 59 + eip712Schema, err := opts.Schema.EIP712() 60 + if err != nil { 61 + return nil, err 62 + } 63 + signer := &EIP712Signer{ 64 + Opts: opts, 65 + EIP712Schema: eip712Schema, 66 + } 67 + 68 + if opts.EthKeystorePath != "" { 69 + err := signer.InitKeystore(ctx) 70 + if err != nil { 71 + return nil, err 72 + } 73 + log.Log(ctx, "successfully initalized keystore", "opts.EthKeystorePath", opts.EthKeystorePath) 74 + } else { 75 + log.Log(ctx, "my EthKeystorePath is empty; EIP-712 signing won't work (which is fine, i guess)") 76 + } 77 + 78 + return signer, nil 79 + } 80 + 81 + func (signer *EIP712Signer) InitKeystore(ctx context.Context) error { 82 + keyStore := keystore.NewKeyStore(signer.Opts.EthKeystorePath, keystore.StandardScryptN, keystore.StandardScryptP) 83 + 84 + addr := common.HexToAddress(signer.Opts.EthAccountAddr) 85 + 86 + acctExists := keyStore.HasAddress(addr) 87 + if !acctExists { 88 + return fmt.Errorf("keystore does not contain account %s", signer.Opts.EthAccountAddr) 89 + } 90 + var account *accounts.Account 91 + for _, a := range keyStore.Accounts() { 92 + if a.Address == addr { 93 + account = &a 94 + } 95 + } 96 + if account == nil { 97 + return fmt.Errorf("keystore does not contain account %s", signer.Opts.EthAccountAddr) 98 + } 99 + err := keyStore.Unlock(*account, signer.Opts.EthKeystorePassword) 100 + if err != nil { 101 + return err 102 + } 103 + signer.Account = account 104 + signer.KeyStore = keyStore 105 + return nil 106 + } 107 + 108 + func (signer *EIP712Signer) KnownTypes() []string { 109 + types := []string{} 110 + for _, val := range signer.EIP712Schema.TypeToName { 111 + types = append(types, val) 112 + } 113 + return types 114 + } 115 + 116 + type SignedMessage interface { 117 + Signer() string 118 + Time() int64 119 + Data() any 120 + } 121 + type AquareumEIP712 struct { 122 + PrimaryType string `json:"primaryType"` 123 + Domain *apitypes.TypedDataDomain `json:"domain"` 124 + Message AquareumEIP712Message `json:"message"` 125 + Signature string `json:"signature"` 126 + } 127 + 128 + type AquareumEIP712Message struct { 129 + MsgSigner string `json:"signer"` 130 + MsgTime int64 `json:"time"` 131 + MsgData any `json:"data"` 132 + } 133 + 134 + // return a Map representation suitable for passing to the geth functions 135 + func (msg AquareumEIP712Message) Map() map[string]any { 136 + m := map[string]any{} 137 + m["signer"] = msg.MsgSigner 138 + m["time"] = new(big.Int).SetInt64(msg.MsgTime) 139 + m["data"] = msg.MsgData 140 + return m 141 + } 142 + 143 + func (msg *AquareumEIP712Message) Signer() string { 144 + return msg.MsgSigner 145 + } 146 + 147 + func (msg *AquareumEIP712Message) Time() int64 { 148 + return msg.MsgTime 149 + } 150 + 151 + func (msg *AquareumEIP712Message) Data() any { 152 + return msg.MsgData 153 + } 154 + 155 + func (signer *EIP712Signer) Sign(something any) ([]byte, error) { 156 + typ := reflect.TypeOf(something) 157 + name, ok := signer.EIP712Schema.TypeToName[typ] 158 + if !ok { 159 + allTypes := strings.Join(signer.KnownTypes(), ", ") 160 + return nil, fmt.Errorf("unknown type provided to Sign, expected one of [%s]", allTypes) 161 + } 162 + 163 + innerMessage, err := ActionToMap(something) 164 + if err != nil { 165 + return nil, err 166 + } 167 + msg := AquareumEIP712Message{ 168 + MsgData: innerMessage, 169 + MsgSigner: signer.Account.Address.String(), 170 + MsgTime: time.Now().UnixMilli(), 171 + } 172 + typedData := apitypes.TypedData{ 173 + Types: signer.EIP712Schema.Types, 174 + PrimaryType: name, 175 + Domain: *signer.EIP712Schema.Domain, 176 + Message: msg.Map(), 177 + } 178 + domainSeparator, err := typedData.HashStruct("EIP712Domain", typedData.Domain.Map()) 179 + if err != nil { 180 + return nil, err 181 + } 182 + typedDataHash, err := typedData.HashStruct(typedData.PrimaryType, typedData.Message) 183 + if err != nil { 184 + return nil, err 185 + } 186 + rawData := []byte(fmt.Sprintf("\x19\x01%s%s", string(domainSeparator), string(typedDataHash))) 187 + rawHash := crypto.Keccak256(rawData) 188 + sig, err := signer.KeyStore.SignHash(*signer.Account, rawHash) 189 + if err != nil { 190 + return nil, fmt.Errorf("error calling KeyStore.SignHash: %w", err) 191 + } 192 + 193 + // sig is in the [R || S || V] format where V is 0 or 1 194 + // Convert the V param to 27 or 28 195 + v := sig[64] 196 + if v == byte(0) || v == byte(1) { 197 + v += 27 198 + } 199 + sig = append(sig[:64], v) 200 + // golint wants string(b) but that gives /x1234 encoded output 201 + sigHex := hexutil.Bytes(sig).String() 202 + 203 + finalMessage := AquareumEIP712{ 204 + PrimaryType: name, 205 + Domain: signer.EIP712Schema.Domain, 206 + Message: msg, 207 + Signature: sigHex, 208 + } 209 + 210 + data, err := json.Marshal(finalMessage) 211 + if err != nil { 212 + return nil, err 213 + } 214 + 215 + return data, nil 216 + } 217 + 218 + func ActionToMap(a any) (map[string]any, error) { 219 + data, err := json.Marshal(a) 220 + 221 + if err != nil { 222 + return nil, err 223 + } 224 + 225 + newMap := map[string]any{} 226 + err = json.Unmarshal(data, &newMap) 227 + if err != nil { 228 + return nil, err 229 + } 230 + return newMap, nil 231 + } 232 + 233 + func (signer *EIP712Signer) Verify(bs []byte) (SignedMessage, error) { 234 + var unverified AquareumEIP712 235 + err := json.Unmarshal(bs, &unverified) 236 + if err != nil { 237 + return nil, fmt.Errorf("error on json.Unmarshal: %w", err) 238 + } 239 + sig, err := hexutil.Decode(unverified.Signature) 240 + if err != nil { 241 + return nil, fmt.Errorf("error on hexutil.Decode: %w", err) 242 + } 243 + sig[64] -= 27 244 + typedData := apitypes.TypedData{ 245 + Types: signer.EIP712Schema.Types, 246 + Domain: *signer.EIP712Schema.Domain, 247 + PrimaryType: unverified.PrimaryType, 248 + Message: unverified.Message.Map(), 249 + } 250 + hash, _, err := apitypes.TypedDataAndHash(typedData) 251 + if err != nil { 252 + return nil, fmt.Errorf("error on apitypes.TypedDataAndHash: %w", err) 253 + } 254 + rpk, err := crypto.SigToPub(hash, sig) 255 + if err != nil { 256 + return nil, fmt.Errorf("error on crypto.SigToPub: %w", err) 257 + } 258 + addr := crypto.PubkeyToAddress(*rpk) 259 + messageSignerAddr, err := hexutil.Decode(unverified.Message.Signer()) 260 + if err != nil { 261 + return nil, fmt.Errorf("error on hexutil.Decode: %w", err) 262 + } 263 + if !bytes.Equal(messageSignerAddr, addr.Bytes()) { 264 + return nil, fmt.Errorf("message signature does not match signer on message") 265 + } 266 + typ, ok := signer.EIP712Schema.NameToType[unverified.PrimaryType] 267 + if !ok { 268 + return nil, fmt.Errorf("go type not found for message type %s", unverified.PrimaryType) 269 + } 270 + dataBs, err := json.Marshal(unverified.Message.Data()) 271 + if err != nil { 272 + return nil, err 273 + } 274 + something := reflect.New(typ).Interface() 275 + err = json.Unmarshal(dataBs, something) 276 + if err != nil { 277 + return nil, err 278 + } 279 + // new object that has the correct type hidden within! 280 + signed := AquareumEIP712Message{ 281 + MsgSigner: unverified.Message.Signer(), 282 + MsgTime: unverified.Message.Time(), 283 + MsgData: something, 284 + } 285 + return &signed, nil 286 + }
+73
pkg/crypto/signers/eip712/eip712_test.go
··· 1 + package eip712_test 2 + 3 + import ( 4 + "strings" 5 + "testing" 6 + "time" 7 + 8 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712" 9 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712/eip712test" 10 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 11 + "github.com/stretchr/testify/require" 12 + ) 13 + 14 + func TestEIP712Map(t *testing.T) { 15 + msg := eip712.AquareumEIP712Message{ 16 + MsgData: map[string]string{"foo": "bar"}, 17 + MsgSigner: "0x295481766f43bb048aec5d71f3bf76fdacea78f2", 18 + MsgTime: time.Now().UnixMilli(), 19 + } 20 + m := msg.Map() 21 + require.Equal(t, m["signer"], msg.MsgSigner) 22 + } 23 + 24 + func TestCreateSigner(t *testing.T) { 25 + ran := false 26 + eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 27 + ran = true 28 + }) 29 + require.True(t, ran) 30 + } 31 + 32 + func TestSignGoLive(t *testing.T) { 33 + eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 34 + goLive := v0.GoLive{ 35 + Streamer: "@aquareum.tv", 36 + Title: "Let's gooooooo!", 37 + } 38 + _, err := signer.Sign(goLive) 39 + require.NoError(t, err) 40 + }) 41 + } 42 + 43 + var testCase = `{ 44 + "primaryType": "GoLive", 45 + "domain": { "name": "Aquareum", "version": "0.0.1" }, 46 + "message": { 47 + "data": { "streamer": "@aquareum.tv", "title": "Let's gooooooo!" }, 48 + "signer": "0x295481766F43bb048Aec5D71f3Bf76FDaCEA78f2", 49 + "time": 1722373018292 50 + }, 51 + "signature": "0x1723aa5ffb04a6ade0acb84c5ce15c804141ac06fd4ae0a867655d1b2f9e130e1ceb659297d262281795b49c191e6f67623d538890b4454eeaa1b6c2da0668e81b" 52 + }` 53 + 54 + func TestVerifyGoLive(t *testing.T) { 55 + eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 56 + signed, err := signer.Verify([]byte(testCase)) 57 + require.NoError(t, err) 58 + require.Equal(t, signed.Signer(), "0x295481766F43bb048Aec5D71f3Bf76FDaCEA78f2") 59 + require.Equal(t, signed.Time(), int64(1722373018292)) 60 + goLive, ok := signed.Data().(*v0.GoLive) 61 + require.True(t, ok) 62 + require.Equal(t, goLive.Streamer, "@aquareum.tv") 63 + require.Equal(t, goLive.Title, "Let's gooooooo!") 64 + }) 65 + } 66 + 67 + func TestFailingGoLive(t *testing.T) { 68 + eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 69 + failingTestCase := strings.Replace(testCase, "@aquareum.tv", "@evilstreamer.evil", 1) 70 + _, err := signer.Verify([]byte(failingTestCase)) 71 + require.Error(t, err) 72 + }) 73 + }
+57
pkg/crypto/signers/eip712/eip712test/eip712test.go
··· 1 + package eip712test 2 + 3 + import ( 4 + "context" 5 + "os" 6 + "path/filepath" 7 + 8 + "aquareum.tv/aquareum/pkg/crypto/signers/eip712" 9 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 10 + ) 11 + 12 + // package for setting up a test wallet 13 + 14 + var wallet = `{ 15 + "address": "295481766f43bb048aec5d71f3bf76fdacea78f2", 16 + "crypto": { 17 + "cipher": "aes-128-ctr", 18 + "ciphertext": "2cd9bfb58a6d7720d064dffdbd9840f055f7e877396364ce6fdb15d496166cb6", 19 + "cipherparams": { "iv": "f6f53d78aac9a1af96fbbc217d17394b" }, 20 + "kdf": "scrypt", 21 + "kdfparams": { 22 + "dklen": 32, 23 + "n": 262144, 24 + "p": 1, 25 + "r": 8, 26 + "salt": "3f66908f20dd26f98b0347f6ab6cc2e5658b751b89dcb487be59e1ba1d0b76e5" 27 + }, 28 + "mac": "a284cc5c66d38cf058ee3aed52012d7375b3f463abde58a174251a36d09ea8e2" 29 + }, 30 + "id": "86ec124c-ebe6-4100-811c-22396e10abe8", 31 + "version": 3 32 + }` 33 + 34 + // creates a test wallet, cleaned up after the function ends 35 + func WithTestSigner(fn func(*eip712.EIP712Signer)) { 36 + dname, err := os.MkdirTemp("", "sampledir") 37 + defer os.RemoveAll(dname) 38 + fname := filepath.Join(dname, "wallet.json") 39 + os.WriteFile(fname, []byte(wallet), 0600) 40 + if err != nil { 41 + panic(err) 42 + } 43 + schema, err := v0.MakeV0Schema() 44 + if err != nil { 45 + panic(err) 46 + } 47 + signer, err := eip712.MakeEIP712Signer(context.Background(), &eip712.EIP712SignerOptions{ 48 + EthKeystorePassword: "aquareumaquareum", 49 + EthKeystorePath: dname, 50 + EthAccountAddr: "0x295481766F43bb048Aec5D71f3Bf76FDaCEA78f2", 51 + Schema: schema, 52 + }) 53 + if err != nil { 54 + panic(err) 55 + } 56 + fn(signer) 57 + }
+32
pkg/crypto/signers/eip712/export-schema/export-schema.go
··· 1 + package main 2 + 3 + import ( 4 + "fmt" 5 + 6 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 7 + ) 8 + 9 + func main() { 10 + err := Main() 11 + if err != nil { 12 + panic(err) 13 + } 14 + } 15 + 16 + // Exports the generated EIP-712 schema for use elsewhere 17 + func Main() error { 18 + schema, err := v0.MakeV0Schema() 19 + if err != nil { 20 + return err 21 + } 22 + eipSchema, err := schema.EIP712() 23 + if err != nil { 24 + return err 25 + } 26 + bs, err := eipSchema.JSON() 27 + if err != nil { 28 + return err 29 + } 30 + fmt.Println(string(bs)) 31 + return nil 32 + }
+8
pkg/errors/errors.go
··· 33 33 return writeHttpError(w, msg, http.StatusUnauthorized, err) 34 34 } 35 35 36 + func WriteHTTPForbidden(w http.ResponseWriter, msg string, err error) APIError { 37 + return writeHttpError(w, msg, http.StatusForbidden, err) 38 + } 39 + 36 40 func WriteHTTPBadRequest(w http.ResponseWriter, msg string, err error) APIError { 37 41 return writeHttpError(w, msg, http.StatusBadRequest, err) 38 42 } ··· 48 52 func WriteHTTPInternalServerError(w http.ResponseWriter, msg string, err error) APIError { 49 53 return writeHttpError(w, msg, http.StatusInternalServerError, err) 50 54 } 55 + 56 + func WriteHTTPNotImplemented(w http.ResponseWriter, msg string, err error) APIError { 57 + return writeHttpError(w, msg, http.StatusNotImplemented, err) 58 + }
+85
pkg/notifications/firebase.go
··· 1 + package notifications 2 + 3 + import ( 4 + "encoding/json" 5 + "fmt" 6 + 7 + "aquareum.tv/aquareum/pkg/log" 8 + "aquareum.tv/aquareum/pkg/model" 9 + v0 "aquareum.tv/aquareum/pkg/schema/v0" 10 + firebase "firebase.google.com/go/v4" 11 + "firebase.google.com/go/v4/messaging" 12 + "golang.org/x/net/context" 13 + "google.golang.org/api/option" 14 + ) 15 + 16 + type FirebaseNotifier interface { 17 + Blast(ctx context.Context, nots []model.Notification, golive *v0.GoLive) error 18 + } 19 + 20 + type FirebaseNotifierS struct { 21 + app *firebase.App 22 + } 23 + 24 + type GoogleCredential struct { 25 + ProjectID string `json:"project_id"` 26 + } 27 + 28 + func MakeFirebaseNotifier(ctx context.Context, serviceAccountJSON string) (FirebaseNotifier, error) { 29 + var cred GoogleCredential 30 + err := json.Unmarshal([]byte(serviceAccountJSON), &cred) 31 + if err != nil { 32 + return nil, fmt.Errorf("error trying to discover project_id: %w", err) 33 + } 34 + conf := &firebase.Config{ 35 + ProjectID: cred.ProjectID, 36 + } 37 + opt := option.WithCredentialsJSON([]byte(serviceAccountJSON)) 38 + app, err := firebase.NewApp(ctx, conf, opt) 39 + if err != nil { 40 + return nil, fmt.Errorf("failed to initialize Firebase app: %w", err) 41 + } 42 + return &FirebaseNotifierS{app: app}, nil 43 + } 44 + 45 + // refactor me when we have >500 users 46 + func (f *FirebaseNotifierS) Blast(ctx context.Context, nots []model.Notification, golive *v0.GoLive) error { 47 + client, err := f.app.Messaging(ctx) 48 + if err != nil { 49 + return err 50 + } 51 + var tokens []string 52 + for _, n := range nots { 53 + tokens = append(tokens, n.Token) 54 + } 55 + 56 + notification := &messaging.MulticastMessage{ 57 + Tokens: tokens, 58 + Notification: &messaging.Notification{ 59 + Title: fmt.Sprintf("🔴 %s is LIVE!", golive.Streamer), 60 + Body: golive.Title, 61 + }, 62 + Android: &messaging.AndroidConfig{ 63 + Priority: "high", 64 + Notification: &messaging.AndroidNotification{ 65 + Sound: "default", 66 + }, 67 + }, 68 + APNS: &messaging.APNSConfig{ 69 + Headers: map[string]string{ 70 + "apns-priority": "10", 71 + }, 72 + Payload: &messaging.APNSPayload{ 73 + Aps: &messaging.Aps{ 74 + Sound: "default", 75 + }, 76 + }, 77 + }, 78 + } 79 + res, err := client.SendEachForMulticast(ctx, notification) 80 + if err != nil { 81 + return err 82 + } 83 + log.Log(ctx, "notification blast successful", "successCount", res.SuccessCount, "failureCount", res.FailureCount) 84 + return nil 85 + }
+29
pkg/notifications/firebase_test.go
··· 1 + package notifications 2 + 3 + import ( 4 + "context" 5 + "testing" 6 + 7 + "github.com/stretchr/testify/require" 8 + ) 9 + 10 + var fakeServiceAccount = ` 11 + { 12 + "type": "service_account", 13 + "private_key_id": "abc", 14 + "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDY3E8o1NEFcjMM\nHW/5ZfFJw29/8NEqpViNjQIx95Xx5KDtJ+nWn9+OW0uqsSqKlKGhAdAo+Q6bjx2c\nuXVsXTu7XrZUY5Kltvj94DvUa1wjNXs606r/RxWTJ58bfdC+gLLxBfGnB6CwK0YQ\nxnfpjNbkUfVVzO0MQD7UP0Hl5ZcY0Puvxd/yHuONQn/rIAieTHH1pqgW+zrH/y3c\n59IGThC9PPtugI9ea8RSnVj3PWz1bX2UkCDpy9IRh9LzJLaYYX9RUd7++dULUlat\nAaXBh1U6emUDzhrIsgApjDVtimOPbmQWmX1S60mqQikRpVYZ8u+NDD+LNw+/Eovn\nxCj2Y3z1AgMBAAECggEAWDBzoqO1IvVXjBA2lqId10T6hXmN3j1ifyH+aAqK+FVl\nGjyWjDj0xWQcJ9ync7bQ6fSeTeNGzP0M6kzDU1+w6FgyZqwdmXWI2VmEizRjwk+/\n/uLQUcL7I55Dxn7KUoZs/rZPmQDxmGLoue60Gg6z3yLzVcKiDc7cnhzhdBgDc8vd\nQorNAlqGPRnm3EqKQ6VQp6fyQmCAxrr45kspRXNLddat3AMsuqImDkqGKBmF3Q1y\nxWGe81LphUiRqvqbyUlh6cdSZ8pLBpc9m0c3qWPKs9paqBIvgUPlvOZMqec6x4S6\nChbdkkTRLnbsRr0Yg/nDeEPlkhRBhasXpxpMUBgPywKBgQDs2axNkFjbU94uXvd5\nznUhDVxPFBuxyUHtsJNqW4p/ujLNimGet5E/YthCnQeC2P3Ym7c3fiz68amM6hiA\nOnW7HYPZ+jKFnefpAtjyOOs46AkftEg07T9XjwWNPt8+8l0DYawPoJgbM5iE0L2O\nx8TU1Vs4mXc+ql9F90GzI0x3VwKBgQDqZOOqWw3hTnNT07Ixqnmd3dugV9S7eW6o\nU9OoUgJB4rYTpG+yFqNqbRT8bkx37iKBMEReppqonOqGm4wtuRR6LSLlgcIU9Iwx\nyfH12UWqVmFSHsgZFqM/cK3wGev38h1WBIOx3/djKn7BdlKVh8kWyx6uC8bmV+E6\nOoK0vJD6kwKBgHAySOnROBZlqzkiKW8c+uU2VATtzJSydrWm0J4wUPJifNBa/hVW\ndcqmAzXC9xznt5AVa3wxHBOfyKaE+ig8CSsjNyNZ3vbmr0X04FoV1m91k2TeXNod\njMTobkPThaNm4eLJMN2SQJuaHGTGERWC0l3T18t+/zrDMDCPiSLX1NAvAoGBAN1T\nVLJYdjvIMxf1bm59VYcepbK7HLHFkRq6xMJMZbtG0ryraZjUzYvB4q4VjHk2UDiC\nlhx13tXWDZH7MJtABzjyg+AI7XWSEQs2cBXACos0M4Myc6lU+eL+iA+OuoUOhmrh\nqmT8YYGu76/IBWUSqWuvcpHPpwl7871i4Ga/I3qnAoGBANNkKAcMoeAbJQK7a/Rn\nwPEJB+dPgNDIaboAsh1nZhVhN5cvdvCWuEYgOGCPQLYQF0zmTLcM+sVxOYgfy8mV\nfbNgPgsP5xmu6dw2COBKdtozw0HrWSRjACd1N4yGu75+wPCcX/gQarcjRcXXZeEa\nNtBLSfcqPULqD+h7br9lEJio\n-----END PRIVATE KEY-----\n", 15 + "client_email": "123-abc@developer.gserviceaccount.com", 16 + "client_id": "123-abc.apps.googleusercontent.com", 17 + "auth_uri": "https://accounts.google.com/o/oauth2/auth", 18 + "token_uri": "https://oauth2.googleapis.com/token", 19 + "project_id": "fakeproject", 20 + "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", 21 + "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-fmlii%40fakeproject.iam.gserviceaccount.com", 22 + "universe_domain": "googleapis.com" 23 + } 24 + ` 25 + 26 + func TestFirebaseNotifier(t *testing.T) { 27 + _, err := MakeFirebaseNotifier(context.Background(), fakeServiceAccount) 28 + require.NoError(t, err) 29 + }
+132
pkg/schema/schema.go
··· 1 + package schema 2 + 3 + import ( 4 + "encoding/json" 5 + "fmt" 6 + "reflect" 7 + 8 + "github.com/ethereum/go-ethereum/signer/core/apitypes" 9 + ) 10 + 11 + type Schema interface { 12 + EIP712() (*EIP712SchemaStruct, error) 13 + } 14 + 15 + type SchemaStruct struct { 16 + name string 17 + version string 18 + schema any 19 + } 20 + 21 + func MakeSchema(name, version string, schema any) (Schema, error) { 22 + return &SchemaStruct{ 23 + name: name, 24 + version: version, 25 + schema: schema, 26 + }, nil 27 + } 28 + 29 + type EIP712SchemaStruct struct { 30 + Types apitypes.Types `json:"types"` 31 + Domain *apitypes.TypedDataDomain `json:"domain"` 32 + TypeToName map[reflect.Type]string 33 + NameToType map[string]reflect.Type 34 + } 35 + 36 + func (schema *SchemaStruct) EIP712() (*EIP712SchemaStruct, error) { 37 + var eip712Types = apitypes.Types{ 38 + "EIP712Domain": { 39 + { 40 + Name: "name", 41 + Type: "string", 42 + }, 43 + { 44 + Name: "version", 45 + Type: "string", 46 + }, 47 + }, 48 + } 49 + 50 + stype := reflect.TypeOf(schema.schema) 51 + if stype.Kind() != reflect.Struct { 52 + return nil, fmt.Errorf("schema parameter of MakeEIP712Signer is not a struct") 53 + } 54 + fields := reflect.VisibleFields(stype) 55 + typeToName := map[reflect.Type]string{} 56 + nameToType := map[string]reflect.Type{} 57 + for _, field := range fields { 58 + name := field.Name 59 + eip712TypeName := fmt.Sprintf("%sData", name) 60 + if field.Type.Kind() != reflect.Struct { 61 + return nil, fmt.Errorf("field '%s' in provided schema is not a struct", name) 62 + } 63 + typeToName[field.Type] = name 64 + nameToType[name] = field.Type 65 + parentType := []apitypes.Type{ 66 + { 67 + Name: "signer", 68 + Type: "address", 69 + }, 70 + { 71 + Name: "time", 72 + Type: "int64", 73 + }, 74 + { 75 + Name: "data", 76 + Type: eip712TypeName, 77 + }, 78 + } 79 + typeSlice := []apitypes.Type{} 80 + 81 + subfields := reflect.VisibleFields(field.Type) 82 + for _, subfield := range subfields { 83 + eipType, err := goToEIP712(subfield) 84 + if err != nil { 85 + return nil, fmt.Errorf("error handling type %s: %w", name, err) 86 + } 87 + typeSlice = append(typeSlice, eipType) 88 + } 89 + eip712Types[name] = parentType 90 + eip712Types[eip712TypeName] = typeSlice 91 + } 92 + return &EIP712SchemaStruct{ 93 + Types: eip712Types, 94 + Domain: &apitypes.TypedDataDomain{ 95 + Version: schema.version, 96 + Name: schema.name, 97 + }, 98 + TypeToName: typeToName, 99 + NameToType: nameToType, 100 + }, nil 101 + } 102 + 103 + func (eip *EIP712SchemaStruct) JSON() ([]byte, error) { 104 + out := map[string]any{ 105 + "domain": eip.Domain, 106 + "types": eip.Types, 107 + } 108 + bs, err := json.MarshalIndent(out, "", " ") 109 + if err != nil { 110 + return []byte{}, err 111 + } 112 + return bs, nil 113 + } 114 + 115 + // turns a go type into an eip712 type 116 + func goToEIP712(field reflect.StructField) (apitypes.Type, error) { 117 + var typ string 118 + kind := field.Type.Kind() 119 + if kind == reflect.String { 120 + typ = "string" 121 + } else if kind == reflect.Int64 { 122 + typ = "int64" 123 + } 124 + jsonTag := field.Tag.Get("json") 125 + if jsonTag == "" { 126 + return apitypes.Type{}, fmt.Errorf("could not find field name for %s", field.Name) 127 + } 128 + return apitypes.Type{ 129 + Name: jsonTag, 130 + Type: typ, 131 + }, nil 132 + }
+18
pkg/schema/v0/golive.go
··· 1 + package v0 2 + 3 + import "aquareum.tv/aquareum/pkg/schema" 4 + 5 + var Name = "Aquareum" 6 + var Version = "0.0.1" 7 + 8 + type V0Schema struct { 9 + GoLive GoLive 10 + } 11 + type GoLive struct { 12 + Streamer string `json:"streamer"` 13 + Title string `json:"title"` 14 + } 15 + 16 + func MakeV0Schema() (schema.Schema, error) { 17 + return schema.MakeSchema(Name, Version, V0Schema{}) 18 + }
+2776 -39
yarn.lock
··· 17 17 languageName: node 18 18 linkType: hard 19 19 20 + "@adraffy/ens-normalize@npm:1.10.0": 21 + version: 1.10.0 22 + resolution: "@adraffy/ens-normalize@npm:1.10.0" 23 + checksum: 10/5cdb5d2a9c9f8c0a71a7bb830967da0069cae1f1235cd41ae11147e4000f368f6958386e622cd4d52bf45c1ed3f8275056b387cba28902b83354e40ff323ecde 24 + languageName: node 25 + linkType: hard 26 + 20 27 "@ampproject/remapping@npm:^2.2.0": 21 28 version: 2.3.0 22 29 resolution: "@ampproject/remapping@npm:2.3.0" ··· 1208 1215 languageName: node 1209 1216 linkType: hard 1210 1217 1218 + "@babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.19.4, @babel/runtime@npm:^7.21.0": 1219 + version: 7.25.0 1220 + resolution: "@babel/runtime@npm:7.25.0" 1221 + dependencies: 1222 + regenerator-runtime: "npm:^0.14.0" 1223 + checksum: 10/6870e9e0e9125075b3aeba49a266f442b10820bfc693019eb6c1785c5a0edbe927e98b8238662cdcdba17842107c040386c3b69f39a0a3b217f9d00ffe685b27 1224 + languageName: node 1225 + linkType: hard 1226 + 1211 1227 "@babel/template@npm:^7.0.0, @babel/template@npm:^7.22.15, @babel/template@npm:^7.24.7": 1212 1228 version: 7.24.7 1213 1229 resolution: "@babel/template@npm:7.24.7" ··· 1277 1293 languageName: node 1278 1294 linkType: hard 1279 1295 1296 + "@coinbase/wallet-sdk@npm:4.0.4": 1297 + version: 4.0.4 1298 + resolution: "@coinbase/wallet-sdk@npm:4.0.4" 1299 + dependencies: 1300 + buffer: "npm:^6.0.3" 1301 + clsx: "npm:^1.2.1" 1302 + eventemitter3: "npm:^5.0.1" 1303 + keccak: "npm:^3.0.3" 1304 + preact: "npm:^10.16.0" 1305 + sha.js: "npm:^2.4.11" 1306 + checksum: 10/4915f90e78cbd734e791ad99b360ec7bf9cd6f76addfdeac537a0891956db7f19b8ccbd5e7ea72292ce37a45807bee9e44f67664b79e2c7ab07266f4dfc92116 1307 + languageName: node 1308 + linkType: hard 1309 + 1280 1310 "@emnapi/core@npm:^1.1.0": 1281 1311 version: 1.2.0 1282 1312 resolution: "@emnapi/core@npm:1.2.0" ··· 1302 1332 dependencies: 1303 1333 tslib: "npm:^2.4.0" 1304 1334 checksum: 10/949f8bdcb11153d530652516b11d4b11d8c6ed48a692b4a59cbaa4305327aed59a61f0d87c366085c20ad0b0336c3b50eaddbddeeb3e8c55e7e82b583b9d98fb 1335 + languageName: node 1336 + linkType: hard 1337 + 1338 + "@emotion/hash@npm:^0.9.0": 1339 + version: 0.9.2 1340 + resolution: "@emotion/hash@npm:0.9.2" 1341 + checksum: 10/379bde2830ccb0328c2617ec009642321c0e009a46aa383dfbe75b679c6aea977ca698c832d225a893901f29d7b3eef0e38cf341f560f6b2b56f1ff23c172387 1305 1342 languageName: node 1306 1343 linkType: hard 1307 1344 ··· 1473 1510 languageName: node 1474 1511 linkType: hard 1475 1512 1513 + "@ethereumjs/common@npm:^3.2.0": 1514 + version: 3.2.0 1515 + resolution: "@ethereumjs/common@npm:3.2.0" 1516 + dependencies: 1517 + "@ethereumjs/util": "npm:^8.1.0" 1518 + crc-32: "npm:^1.2.0" 1519 + checksum: 10/b3f612406b6bcefaf9117ceb42eff58d311e2b50205e3d55b4c793d803de517efbc84075e058dc0e2ec27a2bff11dfc279dda1fa2b249ed6ab3973be045898f4 1520 + languageName: node 1521 + linkType: hard 1522 + 1523 + "@ethereumjs/rlp@npm:^4.0.1": 1524 + version: 4.0.1 1525 + resolution: "@ethereumjs/rlp@npm:4.0.1" 1526 + bin: 1527 + rlp: bin/rlp 1528 + checksum: 10/bfdffd634ce72f3b17e3d085d071f2fe7ce9680aebdf10713d74b30afd80ef882d17f19ff7175fcb049431a56e800bd3558d3b028bd0d82341927edb303ab450 1529 + languageName: node 1530 + linkType: hard 1531 + 1532 + "@ethereumjs/tx@npm:^4.1.2, @ethereumjs/tx@npm:^4.2.0": 1533 + version: 4.2.0 1534 + resolution: "@ethereumjs/tx@npm:4.2.0" 1535 + dependencies: 1536 + "@ethereumjs/common": "npm:^3.2.0" 1537 + "@ethereumjs/rlp": "npm:^4.0.1" 1538 + "@ethereumjs/util": "npm:^8.1.0" 1539 + ethereum-cryptography: "npm:^2.0.0" 1540 + checksum: 10/cbd2ffc3ef76ca5416d58f2f694858d9fcac946e6a107fef44cf3f308a7c9fcc996a6847868609354d72d5b356faee68408e9d5601c4c4f7dad8e18cb2c24a95 1541 + languageName: node 1542 + linkType: hard 1543 + 1544 + "@ethereumjs/util@npm:^8.1.0": 1545 + version: 8.1.0 1546 + resolution: "@ethereumjs/util@npm:8.1.0" 1547 + dependencies: 1548 + "@ethereumjs/rlp": "npm:^4.0.1" 1549 + ethereum-cryptography: "npm:^2.0.0" 1550 + micro-ftch: "npm:^0.3.1" 1551 + checksum: 10/cc35338932e49b15e54ca6e548b32a1f48eed7d7e1d34ee743e4d3600dd616668bd50f70139e86c5c35f55aac35fba3b6cc4e6f679cf650aeba66bf93016200c 1552 + languageName: node 1553 + linkType: hard 1554 + 1476 1555 "@expo/bunyan@npm:^4.0.0": 1477 1556 version: 4.0.0 1478 1557 resolution: "@expo/bunyan@npm:4.0.0" ··· 2967 3046 languageName: node 2968 3047 linkType: hard 2969 3048 3049 + "@lit-labs/ssr-dom-shim@npm:^1.0.0, @lit-labs/ssr-dom-shim@npm:^1.1.0": 3050 + version: 1.2.0 3051 + resolution: "@lit-labs/ssr-dom-shim@npm:1.2.0" 3052 + checksum: 10/33679defe08538ac6fb612854e7d32b4ea1e787cceba2c3373d26fd56baa9833881887da7bade3930a176ba518dc00bb42ce95d82ddb6af6b05b8fbe1fc3169f 3053 + languageName: node 3054 + linkType: hard 3055 + 3056 + "@lit/reactive-element@npm:^1.3.0, @lit/reactive-element@npm:^1.6.0": 3057 + version: 1.6.3 3058 + resolution: "@lit/reactive-element@npm:1.6.3" 3059 + dependencies: 3060 + "@lit-labs/ssr-dom-shim": "npm:^1.0.0" 3061 + checksum: 10/664c899bb0b144590dc4faf83b358b1504810eac107778c3aeb384affc65a7ef4eda754944bcc34a57237db03dff145332406345ac24da19ca37cf4b3cb343d3 3062 + languageName: node 3063 + linkType: hard 3064 + 3065 + "@metamask/eth-json-rpc-provider@npm:^1.0.0": 3066 + version: 1.0.1 3067 + resolution: "@metamask/eth-json-rpc-provider@npm:1.0.1" 3068 + dependencies: 3069 + "@metamask/json-rpc-engine": "npm:^7.0.0" 3070 + "@metamask/safe-event-emitter": "npm:^3.0.0" 3071 + "@metamask/utils": "npm:^5.0.1" 3072 + checksum: 10/4ed1a96afc32eb46f585ff54e16cb2aee2e7027dcf6a142d875b9c6248f15c9a00dd1df43035f2e64efbf01a96954040699d9d97e3b483c958f5b1d6c0fa6f50 3073 + languageName: node 3074 + linkType: hard 3075 + 3076 + "@metamask/json-rpc-engine@npm:^7.0.0": 3077 + version: 7.3.3 3078 + resolution: "@metamask/json-rpc-engine@npm:7.3.3" 3079 + dependencies: 3080 + "@metamask/rpc-errors": "npm:^6.2.1" 3081 + "@metamask/safe-event-emitter": "npm:^3.0.0" 3082 + "@metamask/utils": "npm:^8.3.0" 3083 + checksum: 10/116664c974c522d280335d9a02cba731e4f08562c2980415f7535513cd308c7e612e52618086996e5ac2b67db7f1e6ac1bd8201aba7825163db17a25f2874cc9 3084 + languageName: node 3085 + linkType: hard 3086 + 3087 + "@metamask/json-rpc-engine@npm:^8.0.1, @metamask/json-rpc-engine@npm:^8.0.2": 3088 + version: 8.0.2 3089 + resolution: "@metamask/json-rpc-engine@npm:8.0.2" 3090 + dependencies: 3091 + "@metamask/rpc-errors": "npm:^6.2.1" 3092 + "@metamask/safe-event-emitter": "npm:^3.0.0" 3093 + "@metamask/utils": "npm:^8.3.0" 3094 + checksum: 10/f088f4b648b9b55875b56e8237853e7282f13302a9db6a1f9bba06314dfd6cd0a23b3d27f8fde05a157b97ebb03b67bc2699ba455c99553dfb2ecccd73ab3474 3095 + languageName: node 3096 + linkType: hard 3097 + 3098 + "@metamask/json-rpc-middleware-stream@npm:^7.0.1": 3099 + version: 7.0.2 3100 + resolution: "@metamask/json-rpc-middleware-stream@npm:7.0.2" 3101 + dependencies: 3102 + "@metamask/json-rpc-engine": "npm:^8.0.2" 3103 + "@metamask/safe-event-emitter": "npm:^3.0.0" 3104 + "@metamask/utils": "npm:^8.3.0" 3105 + readable-stream: "npm:^3.6.2" 3106 + checksum: 10/850a857418fc6b8c73fb4f978b76d2cdc0372ccb2f0f7e6f0229117882a4687d716fc37638483c9ac1338f7957b3f8207bc6be8a3d4c0708339fe9dfc3510fe0 3107 + languageName: node 3108 + linkType: hard 3109 + 3110 + "@metamask/object-multiplex@npm:^2.0.0": 3111 + version: 2.0.0 3112 + resolution: "@metamask/object-multiplex@npm:2.0.0" 3113 + dependencies: 3114 + once: "npm:^1.4.0" 3115 + readable-stream: "npm:^3.6.2" 3116 + checksum: 10/54baea752a3ac7c2742c376512e00d4902d383e9da8787574d3b21eb0081523309e24e3915a98f3ae0341d65712b6832d2eb7eeb862f4ef0da1ead52dcde5387 3117 + languageName: node 3118 + linkType: hard 3119 + 3120 + "@metamask/onboarding@npm:^1.0.1": 3121 + version: 1.0.1 3122 + resolution: "@metamask/onboarding@npm:1.0.1" 3123 + dependencies: 3124 + bowser: "npm:^2.9.0" 3125 + checksum: 10/2aa288e58fc34cb4708e311fc08abd33a0d9bc67671610955a2bd8d43a16330261f1159174c365611e249751ec984da9a9cb963bb0a87b3a6945d7caa6cc8799 3126 + languageName: node 3127 + linkType: hard 3128 + 3129 + "@metamask/providers@npm:16.1.0": 3130 + version: 16.1.0 3131 + resolution: "@metamask/providers@npm:16.1.0" 3132 + dependencies: 3133 + "@metamask/json-rpc-engine": "npm:^8.0.1" 3134 + "@metamask/json-rpc-middleware-stream": "npm:^7.0.1" 3135 + "@metamask/object-multiplex": "npm:^2.0.0" 3136 + "@metamask/rpc-errors": "npm:^6.2.1" 3137 + "@metamask/safe-event-emitter": "npm:^3.1.1" 3138 + "@metamask/utils": "npm:^8.3.0" 3139 + detect-browser: "npm:^5.2.0" 3140 + extension-port-stream: "npm:^3.0.0" 3141 + fast-deep-equal: "npm:^3.1.3" 3142 + is-stream: "npm:^2.0.0" 3143 + readable-stream: "npm:^3.6.2" 3144 + webextension-polyfill: "npm:^0.10.0" 3145 + checksum: 10/596bcc0206355e5698cc41458b07caa748f589790e1a3210f1a32d21103a3318902d953a641d4583b8179d653659ba29c42e65fba019a98533bdcf68316bf915 3146 + languageName: node 3147 + linkType: hard 3148 + 3149 + "@metamask/rpc-errors@npm:^6.2.1": 3150 + version: 6.3.1 3151 + resolution: "@metamask/rpc-errors@npm:6.3.1" 3152 + dependencies: 3153 + "@metamask/utils": "npm:^9.0.0" 3154 + fast-safe-stringify: "npm:^2.0.6" 3155 + checksum: 10/f968fb490b13b632c2ad4770a144d67cecdff8d539cb8b489c732b08dab7a62fae65d7a2908ce8c5b77260317aa618948a52463f093fa8d9f84aee1c5f6f5daf 3156 + languageName: node 3157 + linkType: hard 3158 + 3159 + "@metamask/safe-event-emitter@npm:^2.0.0": 3160 + version: 2.0.0 3161 + resolution: "@metamask/safe-event-emitter@npm:2.0.0" 3162 + checksum: 10/3e4f00c64aa1ddf9b9ae5c2337fb8cee359b6c481ded0ec21ef70610960c51cdcc4a9b569de334dcd7cb1fe445cafd298360907c1e211e244c5990b55246f350 3163 + languageName: node 3164 + linkType: hard 3165 + 3166 + "@metamask/safe-event-emitter@npm:^3.0.0, @metamask/safe-event-emitter@npm:^3.1.1": 3167 + version: 3.1.1 3168 + resolution: "@metamask/safe-event-emitter@npm:3.1.1" 3169 + checksum: 10/e24db4d7c20764bfc5b025065f92518c805f0ffb1da4820078b8cff7dcae964c0f354cf053fcb7ac659de015d5ffdf21aae5e8d44e191ee8faa9066855f22653 3170 + languageName: node 3171 + linkType: hard 3172 + 3173 + "@metamask/sdk-communication-layer@npm:0.27.0": 3174 + version: 0.27.0 3175 + resolution: "@metamask/sdk-communication-layer@npm:0.27.0" 3176 + dependencies: 3177 + bufferutil: "npm:^4.0.8" 3178 + date-fns: "npm:^2.29.3" 3179 + debug: "npm:^4.3.4" 3180 + utf-8-validate: "npm:^5.0.2" 3181 + uuid: "npm:^8.3.2" 3182 + peerDependencies: 3183 + cross-fetch: ^4.0.0 3184 + eciesjs: ^0.3.16 3185 + eventemitter2: ^6.4.7 3186 + readable-stream: ^3.6.2 3187 + socket.io-client: ^4.5.1 3188 + checksum: 10/bf538eda91e8b2ba765adc291cfcc282a54aa43f45b702ff2d3cd6c8a5f9d5ef1204262452683264d99a56339dcb34b60414dc7387383b950315b113215b2c9e 3189 + languageName: node 3190 + linkType: hard 3191 + 3192 + "@metamask/sdk-install-modal-web@npm:0.26.5": 3193 + version: 0.26.5 3194 + resolution: "@metamask/sdk-install-modal-web@npm:0.26.5" 3195 + dependencies: 3196 + qr-code-styling: "npm:^1.6.0-rc.1" 3197 + peerDependencies: 3198 + i18next: 23.11.5 3199 + react: ^18.2.0 3200 + react-dom: ^18.2.0 3201 + react-native: "*" 3202 + peerDependenciesMeta: 3203 + react: 3204 + optional: true 3205 + react-dom: 3206 + optional: true 3207 + react-native: 3208 + optional: true 3209 + checksum: 10/69f35db2429dc40e901c0260f1dd7874f604ade43e42358f38b4a66689f11d126c875e3d444dbac86885b64227dda21ce5b166a3dd19645703bfcc916ce072bf 3210 + languageName: node 3211 + linkType: hard 3212 + 3213 + "@metamask/sdk@npm:0.27.0": 3214 + version: 0.27.0 3215 + resolution: "@metamask/sdk@npm:0.27.0" 3216 + dependencies: 3217 + "@metamask/onboarding": "npm:^1.0.1" 3218 + "@metamask/providers": "npm:16.1.0" 3219 + "@metamask/sdk-communication-layer": "npm:0.27.0" 3220 + "@metamask/sdk-install-modal-web": "npm:0.26.5" 3221 + "@types/dom-screen-wake-lock": "npm:^1.0.0" 3222 + bowser: "npm:^2.9.0" 3223 + cross-fetch: "npm:^4.0.0" 3224 + debug: "npm:^4.3.4" 3225 + eciesjs: "npm:^0.3.15" 3226 + eth-rpc-errors: "npm:^4.0.3" 3227 + eventemitter2: "npm:^6.4.7" 3228 + i18next: "npm:23.11.5" 3229 + i18next-browser-languagedetector: "npm:7.1.0" 3230 + obj-multiplex: "npm:^1.0.0" 3231 + pump: "npm:^3.0.0" 3232 + qrcode-terminal-nooctal: "npm:^0.12.1" 3233 + react-native-webview: "npm:^11.26.0" 3234 + readable-stream: "npm:^3.6.2" 3235 + rollup-plugin-visualizer: "npm:^5.9.2" 3236 + socket.io-client: "npm:^4.5.1" 3237 + util: "npm:^0.12.4" 3238 + uuid: "npm:^8.3.2" 3239 + peerDependencies: 3240 + react: ^18.2.0 3241 + react-dom: ^18.2.0 3242 + peerDependenciesMeta: 3243 + react: 3244 + optional: true 3245 + react-dom: 3246 + optional: true 3247 + checksum: 10/9f675d2b598fbaf283c742a621a7c3ece2db4a2fae8e6c840e3f806b589d12f251b4d8ff08117d2866738036b23cf090de24fd07c5e963dcad41fc8e9d50f146 3248 + languageName: node 3249 + linkType: hard 3250 + 3251 + "@metamask/superstruct@npm:^3.0.0, @metamask/superstruct@npm:^3.1.0": 3252 + version: 3.1.0 3253 + resolution: "@metamask/superstruct@npm:3.1.0" 3254 + checksum: 10/5066fe228d5f11da387606d7f9545de2b473ab5a9e0f1bb8aea2f52d3e2c9d25e427151acde61f4a2de80a07a9871fe9505ad06abca6a61b7c3b54ed5c403b01 3255 + languageName: node 3256 + linkType: hard 3257 + 3258 + "@metamask/utils@npm:^5.0.1": 3259 + version: 5.0.2 3260 + resolution: "@metamask/utils@npm:5.0.2" 3261 + dependencies: 3262 + "@ethereumjs/tx": "npm:^4.1.2" 3263 + "@types/debug": "npm:^4.1.7" 3264 + debug: "npm:^4.3.4" 3265 + semver: "npm:^7.3.8" 3266 + superstruct: "npm:^1.0.3" 3267 + checksum: 10/c0d3ee4c3144b557936ab01c1a64950c0f99782bd0cf5596c0fabe8fd224dba48ed3483c0ea954791fe2ee81064a445adb489df50c776bbbeb67b5b96e930115 3268 + languageName: node 3269 + linkType: hard 3270 + 3271 + "@metamask/utils@npm:^8.3.0": 3272 + version: 8.5.0 3273 + resolution: "@metamask/utils@npm:8.5.0" 3274 + dependencies: 3275 + "@ethereumjs/tx": "npm:^4.2.0" 3276 + "@metamask/superstruct": "npm:^3.0.0" 3277 + "@noble/hashes": "npm:^1.3.1" 3278 + "@scure/base": "npm:^1.1.3" 3279 + "@types/debug": "npm:^4.1.7" 3280 + debug: "npm:^4.3.4" 3281 + pony-cause: "npm:^2.1.10" 3282 + semver: "npm:^7.5.4" 3283 + uuid: "npm:^9.0.1" 3284 + checksum: 10/68a42a55f7dc750b75467fb7c05a496c20dac073a2753e0f4d9642c4d8dcb3f9ddf51a09d30337e11637f1777f3dfe22e15b5159dbafb0fdb7bd8c9236056153 3285 + languageName: node 3286 + linkType: hard 3287 + 3288 + "@metamask/utils@npm:^9.0.0": 3289 + version: 9.1.0 3290 + resolution: "@metamask/utils@npm:9.1.0" 3291 + dependencies: 3292 + "@ethereumjs/tx": "npm:^4.2.0" 3293 + "@metamask/superstruct": "npm:^3.1.0" 3294 + "@noble/hashes": "npm:^1.3.1" 3295 + "@scure/base": "npm:^1.1.3" 3296 + "@types/debug": "npm:^4.1.7" 3297 + debug: "npm:^4.3.4" 3298 + pony-cause: "npm:^2.1.10" 3299 + semver: "npm:^7.5.4" 3300 + uuid: "npm:^9.0.1" 3301 + checksum: 10/7335e151a51be92e86868dc48b3ee78c376d4edd5d758d334176027247637ab22839d8f663bd02542c0a19b05ecec456bedab5f36436689cf3d953ca36d91781 3302 + languageName: node 3303 + linkType: hard 3304 + 3305 + "@motionone/animation@npm:^10.15.1, @motionone/animation@npm:^10.18.0": 3306 + version: 10.18.0 3307 + resolution: "@motionone/animation@npm:10.18.0" 3308 + dependencies: 3309 + "@motionone/easing": "npm:^10.18.0" 3310 + "@motionone/types": "npm:^10.17.1" 3311 + "@motionone/utils": "npm:^10.18.0" 3312 + tslib: "npm:^2.3.1" 3313 + checksum: 10/c7fc04dd10d6cade3d3b63d26f2532a2b2731233afc0454722e55ad8061fb3923d926db9cc09f1bcedb39f504fcee1e80adaab270523846998aad3017364a583 3314 + languageName: node 3315 + linkType: hard 3316 + 3317 + "@motionone/dom@npm:^10.16.2, @motionone/dom@npm:^10.16.4": 3318 + version: 10.18.0 3319 + resolution: "@motionone/dom@npm:10.18.0" 3320 + dependencies: 3321 + "@motionone/animation": "npm:^10.18.0" 3322 + "@motionone/generators": "npm:^10.18.0" 3323 + "@motionone/types": "npm:^10.17.1" 3324 + "@motionone/utils": "npm:^10.18.0" 3325 + hey-listen: "npm:^1.0.8" 3326 + tslib: "npm:^2.3.1" 3327 + checksum: 10/18abb5c174a84c90b2e59459fa3a9f8b655d063c259f2f3be5b6740e660285d2f66a8b25437dd963c3b9cdeae9fa5984ee8d217881088ea4d392cf39f8493a84 3328 + languageName: node 3329 + linkType: hard 3330 + 3331 + "@motionone/easing@npm:^10.18.0": 3332 + version: 10.18.0 3333 + resolution: "@motionone/easing@npm:10.18.0" 3334 + dependencies: 3335 + "@motionone/utils": "npm:^10.18.0" 3336 + tslib: "npm:^2.3.1" 3337 + checksum: 10/a455a06ccee907ce9da7b1dfe392060a473132733e3f92bbee3a99c36af7baa333cf3c6e38c6d44ad0f9878fdafca3c3f4bcfe55aaeb2a633e45d8e0429f8fa5 3338 + languageName: node 3339 + linkType: hard 3340 + 3341 + "@motionone/generators@npm:^10.18.0": 3342 + version: 10.18.0 3343 + resolution: "@motionone/generators@npm:10.18.0" 3344 + dependencies: 3345 + "@motionone/types": "npm:^10.17.1" 3346 + "@motionone/utils": "npm:^10.18.0" 3347 + tslib: "npm:^2.3.1" 3348 + checksum: 10/149720881e8db6a1ff38cea98349c3a00f72e5318b645459b68a2aeddb1f2be63ad2ae8978f6c4a63e2414f39e65f06de13a43fd35cf24dc3fb3e3c7f87526bc 3349 + languageName: node 3350 + linkType: hard 3351 + 3352 + "@motionone/svelte@npm:^10.16.2": 3353 + version: 10.16.4 3354 + resolution: "@motionone/svelte@npm:10.16.4" 3355 + dependencies: 3356 + "@motionone/dom": "npm:^10.16.4" 3357 + tslib: "npm:^2.3.1" 3358 + checksum: 10/5ad532d4d9bb16a9f311487e6409fa7e1a66ec12f82e3c36434ab6dfe3cedc61b35dae6314cee4fba8dca463b8a259cafb83801a932b7ad5f4a6e45baaa581f4 3359 + languageName: node 3360 + linkType: hard 3361 + 3362 + "@motionone/types@npm:^10.15.1, @motionone/types@npm:^10.17.1": 3363 + version: 10.17.1 3364 + resolution: "@motionone/types@npm:10.17.1" 3365 + checksum: 10/21d92d733ba30f810b72609fe04f2ef86125ba0160b826974605cc4cc5fbb6ab7bbf1640cbc64fd6298eb8d36fb920ad3ca646c76adf0e2c47a4920200616952 3366 + languageName: node 3367 + linkType: hard 3368 + 3369 + "@motionone/utils@npm:^10.15.1, @motionone/utils@npm:^10.18.0": 3370 + version: 10.18.0 3371 + resolution: "@motionone/utils@npm:10.18.0" 3372 + dependencies: 3373 + "@motionone/types": "npm:^10.17.1" 3374 + hey-listen: "npm:^1.0.8" 3375 + tslib: "npm:^2.3.1" 3376 + checksum: 10/0fa9232d132383880d6004522ded763d60f490946584e02bca7f64df98fae07421071f3a85de06aa6ecb52632a47a7586b4143e824e459a87cc852fab657e549 3377 + languageName: node 3378 + linkType: hard 3379 + 3380 + "@motionone/vue@npm:^10.16.2": 3381 + version: 10.16.4 3382 + resolution: "@motionone/vue@npm:10.16.4" 3383 + dependencies: 3384 + "@motionone/dom": "npm:^10.16.4" 3385 + tslib: "npm:^2.3.1" 3386 + checksum: 10/2400d31bbf5c3e02bc68f4b88d96d9c0672ba646bca0b6566e555cd7e8f14849a645f558f574e658fd90574a0b548b61712ae5edcee055c60288fd9382d711ea 3387 + languageName: node 3388 + linkType: hard 3389 + 2970 3390 "@napi-rs/wasm-runtime@npm:0.2.4": 2971 3391 version: 0.2.4 2972 3392 resolution: "@napi-rs/wasm-runtime@npm:0.2.4" ··· 2975 3395 "@emnapi/runtime": "npm:^1.1.0" 2976 3396 "@tybys/wasm-util": "npm:^0.9.0" 2977 3397 checksum: 10/af335867eca9696b0dbb1b8439878e0408a853c42419cd71d2c5dcf9f7c9f6a8549ea88b3a31b9544bb3a9376e5742f3268e58ee066925d3726bd76a121eb8a6 3398 + languageName: node 3399 + linkType: hard 3400 + 3401 + "@noble/curves@npm:1.4.0": 3402 + version: 1.4.0 3403 + resolution: "@noble/curves@npm:1.4.0" 3404 + dependencies: 3405 + "@noble/hashes": "npm:1.4.0" 3406 + checksum: 10/b21b30a36ff02bfcc0f5e6163d245cdbaf7f640511fff97ccf83fc207ee79cfd91584b4d97977374de04cb118a55eb63a7964c82596a64162bbc42bc685ae6d9 3407 + languageName: node 3408 + linkType: hard 3409 + 3410 + "@noble/curves@npm:1.4.2, @noble/curves@npm:^1.4.0, @noble/curves@npm:~1.4.0": 3411 + version: 1.4.2 3412 + resolution: "@noble/curves@npm:1.4.2" 3413 + dependencies: 3414 + "@noble/hashes": "npm:1.4.0" 3415 + checksum: 10/f433a2e8811ae345109388eadfa18ef2b0004c1f79417553241db4f0ad0d59550be6298a4f43d989c627e9f7551ffae6e402a4edf0173981e6da95fc7cab5123 3416 + languageName: node 3417 + linkType: hard 3418 + 3419 + "@noble/hashes@npm:1.4.0, @noble/hashes@npm:^1.3.1, @noble/hashes@npm:^1.4.0, @noble/hashes@npm:~1.4.0": 3420 + version: 1.4.0 3421 + resolution: "@noble/hashes@npm:1.4.0" 3422 + checksum: 10/e156e65794c473794c52fa9d06baf1eb20903d0d96719530f523cc4450f6c721a957c544796e6efd0197b2296e7cd70efeb312f861465e17940a3e3c7e0febc6 2978 3423 languageName: node 2979 3424 linkType: hard 2980 3425 ··· 3456 3901 languageName: node 3457 3902 linkType: hard 3458 3903 3904 + "@parcel/watcher-android-arm64@npm:2.4.1": 3905 + version: 2.4.1 3906 + resolution: "@parcel/watcher-android-arm64@npm:2.4.1" 3907 + conditions: os=android & cpu=arm64 3908 + languageName: node 3909 + linkType: hard 3910 + 3911 + "@parcel/watcher-darwin-arm64@npm:2.4.1": 3912 + version: 2.4.1 3913 + resolution: "@parcel/watcher-darwin-arm64@npm:2.4.1" 3914 + conditions: os=darwin & cpu=arm64 3915 + languageName: node 3916 + linkType: hard 3917 + 3918 + "@parcel/watcher-darwin-x64@npm:2.4.1": 3919 + version: 2.4.1 3920 + resolution: "@parcel/watcher-darwin-x64@npm:2.4.1" 3921 + conditions: os=darwin & cpu=x64 3922 + languageName: node 3923 + linkType: hard 3924 + 3925 + "@parcel/watcher-freebsd-x64@npm:2.4.1": 3926 + version: 2.4.1 3927 + resolution: "@parcel/watcher-freebsd-x64@npm:2.4.1" 3928 + conditions: os=freebsd & cpu=x64 3929 + languageName: node 3930 + linkType: hard 3931 + 3932 + "@parcel/watcher-linux-arm-glibc@npm:2.4.1": 3933 + version: 2.4.1 3934 + resolution: "@parcel/watcher-linux-arm-glibc@npm:2.4.1" 3935 + conditions: os=linux & cpu=arm & libc=glibc 3936 + languageName: node 3937 + linkType: hard 3938 + 3939 + "@parcel/watcher-linux-arm64-glibc@npm:2.4.1": 3940 + version: 2.4.1 3941 + resolution: "@parcel/watcher-linux-arm64-glibc@npm:2.4.1" 3942 + conditions: os=linux & cpu=arm64 & libc=glibc 3943 + languageName: node 3944 + linkType: hard 3945 + 3946 + "@parcel/watcher-linux-arm64-musl@npm:2.4.1": 3947 + version: 2.4.1 3948 + resolution: "@parcel/watcher-linux-arm64-musl@npm:2.4.1" 3949 + conditions: os=linux & cpu=arm64 & libc=musl 3950 + languageName: node 3951 + linkType: hard 3952 + 3953 + "@parcel/watcher-linux-x64-glibc@npm:2.4.1": 3954 + version: 2.4.1 3955 + resolution: "@parcel/watcher-linux-x64-glibc@npm:2.4.1" 3956 + conditions: os=linux & cpu=x64 & libc=glibc 3957 + languageName: node 3958 + linkType: hard 3959 + 3960 + "@parcel/watcher-linux-x64-musl@npm:2.4.1": 3961 + version: 2.4.1 3962 + resolution: "@parcel/watcher-linux-x64-musl@npm:2.4.1" 3963 + conditions: os=linux & cpu=x64 & libc=musl 3964 + languageName: node 3965 + linkType: hard 3966 + 3967 + "@parcel/watcher-wasm@npm:^2.4.1": 3968 + version: 2.4.1 3969 + resolution: "@parcel/watcher-wasm@npm:2.4.1" 3970 + dependencies: 3971 + is-glob: "npm:^4.0.3" 3972 + micromatch: "npm:^4.0.5" 3973 + napi-wasm: "npm:^1.1.0" 3974 + checksum: 10/df32eec32ce1ac895c3ee2ae4574dd5f73f4c886820992e2e7c11e8bf4913d271484cb6c4863914129bd8a104e6924c767efa75bb19e17dde9a5c14408660cd2 3975 + languageName: node 3976 + linkType: hard 3977 + 3978 + "@parcel/watcher-win32-arm64@npm:2.4.1": 3979 + version: 2.4.1 3980 + resolution: "@parcel/watcher-win32-arm64@npm:2.4.1" 3981 + conditions: os=win32 & cpu=arm64 3982 + languageName: node 3983 + linkType: hard 3984 + 3985 + "@parcel/watcher-win32-ia32@npm:2.4.1": 3986 + version: 2.4.1 3987 + resolution: "@parcel/watcher-win32-ia32@npm:2.4.1" 3988 + conditions: os=win32 & cpu=ia32 3989 + languageName: node 3990 + linkType: hard 3991 + 3992 + "@parcel/watcher-win32-x64@npm:2.4.1": 3993 + version: 2.4.1 3994 + resolution: "@parcel/watcher-win32-x64@npm:2.4.1" 3995 + conditions: os=win32 & cpu=x64 3996 + languageName: node 3997 + linkType: hard 3998 + 3999 + "@parcel/watcher@npm:^2.4.1": 4000 + version: 2.4.1 4001 + resolution: "@parcel/watcher@npm:2.4.1" 4002 + dependencies: 4003 + "@parcel/watcher-android-arm64": "npm:2.4.1" 4004 + "@parcel/watcher-darwin-arm64": "npm:2.4.1" 4005 + "@parcel/watcher-darwin-x64": "npm:2.4.1" 4006 + "@parcel/watcher-freebsd-x64": "npm:2.4.1" 4007 + "@parcel/watcher-linux-arm-glibc": "npm:2.4.1" 4008 + "@parcel/watcher-linux-arm64-glibc": "npm:2.4.1" 4009 + "@parcel/watcher-linux-arm64-musl": "npm:2.4.1" 4010 + "@parcel/watcher-linux-x64-glibc": "npm:2.4.1" 4011 + "@parcel/watcher-linux-x64-musl": "npm:2.4.1" 4012 + "@parcel/watcher-win32-arm64": "npm:2.4.1" 4013 + "@parcel/watcher-win32-ia32": "npm:2.4.1" 4014 + "@parcel/watcher-win32-x64": "npm:2.4.1" 4015 + detect-libc: "npm:^1.0.3" 4016 + is-glob: "npm:^4.0.3" 4017 + micromatch: "npm:^4.0.5" 4018 + node-addon-api: "npm:^7.0.0" 4019 + node-gyp: "npm:latest" 4020 + dependenciesMeta: 4021 + "@parcel/watcher-android-arm64": 4022 + optional: true 4023 + "@parcel/watcher-darwin-arm64": 4024 + optional: true 4025 + "@parcel/watcher-darwin-x64": 4026 + optional: true 4027 + "@parcel/watcher-freebsd-x64": 4028 + optional: true 4029 + "@parcel/watcher-linux-arm-glibc": 4030 + optional: true 4031 + "@parcel/watcher-linux-arm64-glibc": 4032 + optional: true 4033 + "@parcel/watcher-linux-arm64-musl": 4034 + optional: true 4035 + "@parcel/watcher-linux-x64-glibc": 4036 + optional: true 4037 + "@parcel/watcher-linux-x64-musl": 4038 + optional: true 4039 + "@parcel/watcher-win32-arm64": 4040 + optional: true 4041 + "@parcel/watcher-win32-ia32": 4042 + optional: true 4043 + "@parcel/watcher-win32-x64": 4044 + optional: true 4045 + checksum: 10/c163dff1828fa249c00f24931332dea5a8f2fcd1bfdd0e304ccdf7619c58bff044526fa39241fd2121d2a2141f71775ce3117450d78c4df3070d152282017644 4046 + languageName: node 4047 + linkType: hard 4048 + 3459 4049 "@pkgjs/parseargs@npm:^0.11.0": 3460 4050 version: 0.11.0 3461 4051 resolution: "@pkgjs/parseargs@npm:0.11.0" ··· 3556 4146 peerDependencies: 3557 4147 react: ^16.8 || ^17.0 || ^18.0 3558 4148 checksum: 10/b00fc6ec54a20785263540d9e4a0e3a13d9bc54d7af49b64f6a268eba4a6560c291bd95bbaa7cf7609fdf6fd0ebae54605bb01313de3fa180b06f2a321e9a3b4 4149 + languageName: node 4150 + linkType: hard 4151 + 4152 + "@rainbow-me/rainbowkit@npm:2": 4153 + version: 2.1.3 4154 + resolution: "@rainbow-me/rainbowkit@npm:2.1.3" 4155 + dependencies: 4156 + "@vanilla-extract/css": "npm:1.14.0" 4157 + "@vanilla-extract/dynamic": "npm:2.1.0" 4158 + "@vanilla-extract/sprinkles": "npm:1.6.1" 4159 + clsx: "npm:2.1.0" 4160 + qrcode: "npm:1.5.3" 4161 + react-remove-scroll: "npm:2.5.7" 4162 + ua-parser-js: "npm:^1.0.37" 4163 + peerDependencies: 4164 + "@tanstack/react-query": ">=5.0.0" 4165 + react: ">=18" 4166 + react-dom: ">=18" 4167 + viem: 2.x 4168 + wagmi: ^2.9.0 4169 + checksum: 10/93885e9e39b55a2884b01ddd7a88e78827fd637d4eedd78db329627b2bc2c65be1c7021dce35fcc2b37250b8fe075568c6d2cf6770bbad47f406729264b426be 3559 4170 languageName: node 3560 4171 linkType: hard 3561 4172 ··· 4169 4780 languageName: node 4170 4781 linkType: hard 4171 4782 4783 + "@safe-global/safe-apps-provider@npm:0.18.3": 4784 + version: 0.18.3 4785 + resolution: "@safe-global/safe-apps-provider@npm:0.18.3" 4786 + dependencies: 4787 + "@safe-global/safe-apps-sdk": "npm:^9.1.0" 4788 + events: "npm:^3.3.0" 4789 + checksum: 10/fb0bf260a224195923394c61265f421c655f096cce4c9f10643f5ff2787ca964269dbb539cfd08959ce88395af9c08f0cef60581cb06e14f1505b03bb7973bd1 4790 + languageName: node 4791 + linkType: hard 4792 + 4793 + "@safe-global/safe-apps-sdk@npm:9.1.0, @safe-global/safe-apps-sdk@npm:^9.1.0": 4794 + version: 9.1.0 4795 + resolution: "@safe-global/safe-apps-sdk@npm:9.1.0" 4796 + dependencies: 4797 + "@safe-global/safe-gateway-typescript-sdk": "npm:^3.5.3" 4798 + viem: "npm:^2.1.1" 4799 + checksum: 10/b81e1a554509fc41f5b8ec3bcccaf477fd55824010774699dd2c00dee8431cfd351bf13893ff6acb1450028ce4de31a1316548a0e77a66d801ff9e0b4e08b9ff 4800 + languageName: node 4801 + linkType: hard 4802 + 4803 + "@safe-global/safe-gateway-typescript-sdk@npm:^3.5.3": 4804 + version: 3.22.1 4805 + resolution: "@safe-global/safe-gateway-typescript-sdk@npm:3.22.1" 4806 + checksum: 10/5e940d667f661602971fdae104400cf44774c80e17f22519ea250b61eca3850866cce8ff206be319553a6f10aca7c851c86b05e1eeb775c1e828d388a731b2de 4807 + languageName: node 4808 + linkType: hard 4809 + 4810 + "@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.6": 4811 + version: 1.1.7 4812 + resolution: "@scure/base@npm:1.1.7" 4813 + checksum: 10/fc50ffaab36cb46ff9fa4dc5052a06089ab6a6707f63d596bb34aaaec76173c9a564ac312a0b981b5e7a5349d60097b8878673c75d6cbfc4da7012b63a82099b 4814 + languageName: node 4815 + linkType: hard 4816 + 4817 + "@scure/bip32@npm:1.4.0": 4818 + version: 1.4.0 4819 + resolution: "@scure/bip32@npm:1.4.0" 4820 + dependencies: 4821 + "@noble/curves": "npm:~1.4.0" 4822 + "@noble/hashes": "npm:~1.4.0" 4823 + "@scure/base": "npm:~1.1.6" 4824 + checksum: 10/6cd5062d902564d9e970597ec8b1adacb415b2eadfbb95aee1a1a0480a52eb0de4d294d3753aa8b48548064c9795ed108d348a31a8ce3fc88785377bb12c63b9 4825 + languageName: node 4826 + linkType: hard 4827 + 4828 + "@scure/bip39@npm:1.3.0": 4829 + version: 1.3.0 4830 + resolution: "@scure/bip39@npm:1.3.0" 4831 + dependencies: 4832 + "@noble/hashes": "npm:~1.4.0" 4833 + "@scure/base": "npm:~1.1.6" 4834 + checksum: 10/7d71fd58153de22fe8cd65b525f6958a80487bc9d0fbc32c71c328aeafe41fa259f989d2f1e0fa4fdfeaf83b8fcf9310d52ed9862987e46c2f2bfb9dd8cf9fc1 4835 + languageName: node 4836 + linkType: hard 4837 + 4172 4838 "@segment/loosely-validate-event@npm:^2.0.0": 4173 4839 version: 2.0.0 4174 4840 resolution: "@segment/loosely-validate-event@npm:2.0.0" ··· 4285 4951 languageName: node 4286 4952 linkType: hard 4287 4953 4954 + "@socket.io/component-emitter@npm:~3.1.0": 4955 + version: 3.1.2 4956 + resolution: "@socket.io/component-emitter@npm:3.1.2" 4957 + checksum: 10/89888f00699eb34e3070624eb7b8161fa29f064aeb1389a48f02195d55dd7c52a504e52160016859f6d6dffddd54324623cdd47fd34b3d46f9ed96c18c456edc 4958 + languageName: node 4959 + linkType: hard 4960 + 4961 + "@stablelib/aead@npm:^1.0.1": 4962 + version: 1.0.1 4963 + resolution: "@stablelib/aead@npm:1.0.1" 4964 + checksum: 10/1a6f68d138f105d17dd65349751515bd252ab0498c77255b8555478d28415600dde493f909eb718245047a993f838dfae546071e1687566ffb7b8c3e10c918d9 4965 + languageName: node 4966 + linkType: hard 4967 + 4968 + "@stablelib/binary@npm:^1.0.1": 4969 + version: 1.0.1 4970 + resolution: "@stablelib/binary@npm:1.0.1" 4971 + dependencies: 4972 + "@stablelib/int": "npm:^1.0.1" 4973 + checksum: 10/c5ed769e2b5d607a5cdb72d325fcf98db437627862fade839daad934bd9ccf02a6f6e34f9de8cb3b18d72fce2ba6cc019a5d22398187d7d69d2607165f27f8bf 4974 + languageName: node 4975 + linkType: hard 4976 + 4977 + "@stablelib/bytes@npm:^1.0.1": 4978 + version: 1.0.1 4979 + resolution: "@stablelib/bytes@npm:1.0.1" 4980 + checksum: 10/23d4d632a8a15ca91be1dc56da92eefed695d9b66068d1ab27a5655d0233dc2ac0b8668f875af542ca4ed526893c65dd53e777c72c8056f3648115aac98823ee 4981 + languageName: node 4982 + linkType: hard 4983 + 4984 + "@stablelib/chacha20poly1305@npm:1.0.1": 4985 + version: 1.0.1 4986 + resolution: "@stablelib/chacha20poly1305@npm:1.0.1" 4987 + dependencies: 4988 + "@stablelib/aead": "npm:^1.0.1" 4989 + "@stablelib/binary": "npm:^1.0.1" 4990 + "@stablelib/chacha": "npm:^1.0.1" 4991 + "@stablelib/constant-time": "npm:^1.0.1" 4992 + "@stablelib/poly1305": "npm:^1.0.1" 4993 + "@stablelib/wipe": "npm:^1.0.1" 4994 + checksum: 10/2a4df136b078b7c09acb3c6fe029613d4c9f70a0ce8bec65551a4a5016930a4f9091d3b83ed1cfc9c2e7bd6ec7f5ee93a7dc729b784b3900dcb97f3c7f5da84a 4995 + languageName: node 4996 + linkType: hard 4997 + 4998 + "@stablelib/chacha@npm:^1.0.1": 4999 + version: 1.0.1 5000 + resolution: "@stablelib/chacha@npm:1.0.1" 5001 + dependencies: 5002 + "@stablelib/binary": "npm:^1.0.1" 5003 + "@stablelib/wipe": "npm:^1.0.1" 5004 + checksum: 10/38cd8095d94eda29a9bb8a742b1c945dba7f9ec91fc07ab351c826680d03976641ac6366c3d004a00a72d746fcd838215fe1263ef4b0660c453c5de18a0a4295 5005 + languageName: node 5006 + linkType: hard 5007 + 5008 + "@stablelib/constant-time@npm:^1.0.1": 5009 + version: 1.0.1 5010 + resolution: "@stablelib/constant-time@npm:1.0.1" 5011 + checksum: 10/dba4f4bf508de2ff15f7f0cbd875e70391aa3ba3698290fe1ed2feb151c243ba08a90fc6fb390ec2230e30fcc622318c591a7c0e35dcb8150afb50c797eac3d7 5012 + languageName: node 5013 + linkType: hard 5014 + 5015 + "@stablelib/ed25519@npm:^1.0.2": 5016 + version: 1.0.3 5017 + resolution: "@stablelib/ed25519@npm:1.0.3" 5018 + dependencies: 5019 + "@stablelib/random": "npm:^1.0.2" 5020 + "@stablelib/sha512": "npm:^1.0.1" 5021 + "@stablelib/wipe": "npm:^1.0.1" 5022 + checksum: 10/52e861e4fbd9d3d0a1a370d9ad96de8e2e15f133249bbbc32da66b8993e843db598054a3af17a746beb3fd5043b7529613a5dda7f2e79de6613eb3ebe5ffe3dd 5023 + languageName: node 5024 + linkType: hard 5025 + 5026 + "@stablelib/hash@npm:^1.0.1": 5027 + version: 1.0.1 5028 + resolution: "@stablelib/hash@npm:1.0.1" 5029 + checksum: 10/3ff1f12d1a4082aaf4b6cdf40c2010aabe5c4209d3b40b97b5bbb0d9abc0ee94abdc545e57de0614afaea807ca0212ac870e247ec8f66cdce91ec39ce82948cf 5030 + languageName: node 5031 + linkType: hard 5032 + 5033 + "@stablelib/hkdf@npm:1.0.1": 5034 + version: 1.0.1 5035 + resolution: "@stablelib/hkdf@npm:1.0.1" 5036 + dependencies: 5037 + "@stablelib/hash": "npm:^1.0.1" 5038 + "@stablelib/hmac": "npm:^1.0.1" 5039 + "@stablelib/wipe": "npm:^1.0.1" 5040 + checksum: 10/9d45e303715a1835c8612b78e6c1b9d2b7463699b484241d8681fb5c17e0f2bbde5ce211c882134b64616a402e09177baeba80426995ff227b3654a155ab225d 5041 + languageName: node 5042 + linkType: hard 5043 + 5044 + "@stablelib/hmac@npm:^1.0.1": 5045 + version: 1.0.1 5046 + resolution: "@stablelib/hmac@npm:1.0.1" 5047 + dependencies: 5048 + "@stablelib/constant-time": "npm:^1.0.1" 5049 + "@stablelib/hash": "npm:^1.0.1" 5050 + "@stablelib/wipe": "npm:^1.0.1" 5051 + checksum: 10/d3ac9e2fea2b4972a5d874ee9d96c94f8c8207452e2d243a2668b1325a7b20bd9a1541df32387789a0e9bfef82c3fe021a785f46eb3442c782443863faf75205 5052 + languageName: node 5053 + linkType: hard 5054 + 5055 + "@stablelib/int@npm:^1.0.1": 5056 + version: 1.0.1 5057 + resolution: "@stablelib/int@npm:1.0.1" 5058 + checksum: 10/65bfbf50a382eea70c68e05366bf379cfceff8fbc076f1c267ef2f2411d7aed64fd140c415cb6c29f19a3910d3b8b7805d4b32ad5721a5007a8e744a808c7ae3 5059 + languageName: node 5060 + linkType: hard 5061 + 5062 + "@stablelib/keyagreement@npm:^1.0.1": 5063 + version: 1.0.1 5064 + resolution: "@stablelib/keyagreement@npm:1.0.1" 5065 + dependencies: 5066 + "@stablelib/bytes": "npm:^1.0.1" 5067 + checksum: 10/3c8ec904dd50f72f3162f5447a0fa8f1d9ca6e24cd272d3dbe84971267f3b47f9bd5dc4e4eeedf3fbac2fe01f2d9277053e57c8e60db8c5544bfb35c62d290dd 5068 + languageName: node 5069 + linkType: hard 5070 + 5071 + "@stablelib/poly1305@npm:^1.0.1": 5072 + version: 1.0.1 5073 + resolution: "@stablelib/poly1305@npm:1.0.1" 5074 + dependencies: 5075 + "@stablelib/constant-time": "npm:^1.0.1" 5076 + "@stablelib/wipe": "npm:^1.0.1" 5077 + checksum: 10/b01d4b532a42e5260f7f263e3a670924849c7ba51569abd8ece8279a448e625cbe4049bff1d50ad0d3a9d5f268c1b52fc611808640a6e684550edd7589a0a581 5078 + languageName: node 5079 + linkType: hard 5080 + 5081 + "@stablelib/random@npm:1.0.2, @stablelib/random@npm:^1.0.1, @stablelib/random@npm:^1.0.2": 5082 + version: 1.0.2 5083 + resolution: "@stablelib/random@npm:1.0.2" 5084 + dependencies: 5085 + "@stablelib/binary": "npm:^1.0.1" 5086 + "@stablelib/wipe": "npm:^1.0.1" 5087 + checksum: 10/f5ace0a588dc4c21f01cb85837892d4c872e994ae77a58a8eb7dd61aa0b26fb1e9b46b0445e71af57d963ef7d9f5965c64258fc0d04df7b2947bc48f2d3560c5 5088 + languageName: node 5089 + linkType: hard 5090 + 5091 + "@stablelib/sha256@npm:1.0.1": 5092 + version: 1.0.1 5093 + resolution: "@stablelib/sha256@npm:1.0.1" 5094 + dependencies: 5095 + "@stablelib/binary": "npm:^1.0.1" 5096 + "@stablelib/hash": "npm:^1.0.1" 5097 + "@stablelib/wipe": "npm:^1.0.1" 5098 + checksum: 10/4d55f6c676e2cc0dd2a32be0cfa96837f3e15ae48dc50a340e56db2b201f1341a9ecabb429a3a44a5bf31adee0a8151467a8e7cc15346c561c914faad415d4d4 5099 + languageName: node 5100 + linkType: hard 5101 + 5102 + "@stablelib/sha512@npm:^1.0.1": 5103 + version: 1.0.1 5104 + resolution: "@stablelib/sha512@npm:1.0.1" 5105 + dependencies: 5106 + "@stablelib/binary": "npm:^1.0.1" 5107 + "@stablelib/hash": "npm:^1.0.1" 5108 + "@stablelib/wipe": "npm:^1.0.1" 5109 + checksum: 10/35d188cd62f20d27e1d61ea07984022e9a78815a023c8f7c747d92456a60823f0683138591e87158a47cd72e73cf24ecf97f8936aa6fba8b3bef6fcb138e723d 5110 + languageName: node 5111 + linkType: hard 5112 + 5113 + "@stablelib/wipe@npm:^1.0.1": 5114 + version: 1.0.1 5115 + resolution: "@stablelib/wipe@npm:1.0.1" 5116 + checksum: 10/287802eb146810a46ba72af70b82022caf83a8aeebde23605f5ee0decf64fe2b97a60c856e43b6617b5801287c30cfa863cfb0469e7fcde6f02d143cf0c6cbf4 5117 + languageName: node 5118 + linkType: hard 5119 + 5120 + "@stablelib/x25519@npm:1.0.3": 5121 + version: 1.0.3 5122 + resolution: "@stablelib/x25519@npm:1.0.3" 5123 + dependencies: 5124 + "@stablelib/keyagreement": "npm:^1.0.1" 5125 + "@stablelib/random": "npm:^1.0.2" 5126 + "@stablelib/wipe": "npm:^1.0.1" 5127 + checksum: 10/fb5469e390ee2515d926633e3e179038894ac4f5e8c8cd2c2fc912022e34a051112eab0fe80c4dbc6e59129679844182562a036abff89444e5c4a05dd42ed329 5128 + languageName: node 5129 + linkType: hard 5130 + 4288 5131 "@swc/core-darwin-arm64@npm:1.6.13": 4289 5132 version: 1.6.13 4290 5133 resolution: "@swc/core-darwin-arm64@npm:1.6.13" ··· 5880 6723 languageName: node 5881 6724 linkType: hard 5882 6725 6726 + "@tanstack/query-core@npm:5.51.16": 6727 + version: 5.51.16 6728 + resolution: "@tanstack/query-core@npm:5.51.16" 6729 + checksum: 10/7b5f48839d41e083fb0a00cd92a2710e4850b3e1c9daa74073b11319b4fa8a3ef335fb8da3dbc711144c7aa982597b34745bd5851b40eab17deadd56681ed798 6730 + languageName: node 6731 + linkType: hard 6732 + 6733 + "@tanstack/react-query@npm:^5.51.16": 6734 + version: 5.51.16 6735 + resolution: "@tanstack/react-query@npm:5.51.16" 6736 + dependencies: 6737 + "@tanstack/query-core": "npm:5.51.16" 6738 + peerDependencies: 6739 + react: ^18.0.0 6740 + checksum: 10/84261a5c66c4311b06618af78d1534a84d908d5bc32c04f36f39dad977365090c244e8c5e3578f38118431e7a77970fae2ba6af75e1f03e8a22a48458f8d518d 6741 + languageName: node 6742 + linkType: hard 6743 + 5883 6744 "@tootallnate/once@npm:2": 5884 6745 version: 2.0.0 5885 6746 resolution: "@tootallnate/once@npm:2.0.0" ··· 5946 6807 languageName: node 5947 6808 linkType: hard 5948 6809 6810 + "@types/debug@npm:^4.1.7": 6811 + version: 4.1.12 6812 + resolution: "@types/debug@npm:4.1.12" 6813 + dependencies: 6814 + "@types/ms": "npm:*" 6815 + checksum: 10/47876a852de8240bfdaf7481357af2b88cb660d30c72e73789abf00c499d6bc7cd5e52f41c915d1b9cd8ec9fef5b05688d7b7aef17f7f272c2d04679508d1053 6816 + languageName: node 6817 + linkType: hard 6818 + 6819 + "@types/dom-screen-wake-lock@npm:^1.0.0": 6820 + version: 1.0.3 6821 + resolution: "@types/dom-screen-wake-lock@npm:1.0.3" 6822 + checksum: 10/66bece3508b4f4147db97a530c758f8f5d3132ef00c06cab1db4bf2b4af6a3a614ae0a0ba6b53ddc4177a6545adf9d312547087256efc8eff7314b13221380b8 6823 + languageName: node 6824 + linkType: hard 6825 + 5949 6826 "@types/express-serve-static-core@npm:^4.17.33": 5950 6827 version: 4.19.5 5951 6828 resolution: "@types/express-serve-static-core@npm:4.19.5" ··· 6059 6936 version: 1.2.5 6060 6937 resolution: "@types/minimist@npm:1.2.5" 6061 6938 checksum: 10/477047b606005058ab0263c4f58097136268007f320003c348794f74adedc3166ffc47c80ec3e94687787f2ab7f4e72c468223946e79892cf0fd9e25e9970a90 6939 + languageName: node 6940 + linkType: hard 6941 + 6942 + "@types/ms@npm:*": 6943 + version: 0.7.34 6944 + resolution: "@types/ms@npm:0.7.34" 6945 + checksum: 10/f38d36e7b6edecd9badc9cf50474159e9da5fa6965a75186cceaf883278611b9df6669dc3a3cc122b7938d317b68a9e3d573d316fcb35d1be47ec9e468c6bd8a 6062 6946 languageName: node 6063 6947 linkType: hard 6064 6948 ··· 6157 7041 languageName: node 6158 7042 linkType: hard 6159 7043 7044 + "@types/secp256k1@npm:^4.0.6": 7045 + version: 4.0.6 7046 + resolution: "@types/secp256k1@npm:4.0.6" 7047 + dependencies: 7048 + "@types/node": "npm:*" 7049 + checksum: 10/211f823be990b55612e604d620acf0dc3bc942d3836bdd8da604269effabc86d98161e5947487b4e4e128f9180fc1682daae2f89ea7a4d9648fdfe52fba365fc 7050 + languageName: node 7051 + linkType: hard 7052 + 6160 7053 "@types/send@npm:*": 6161 7054 version: 0.17.4 6162 7055 resolution: "@types/send@npm:0.17.4" ··· 6192 7085 languageName: node 6193 7086 linkType: hard 6194 7087 7088 + "@types/trusted-types@npm:^2.0.2": 7089 + version: 2.0.7 7090 + resolution: "@types/trusted-types@npm:2.0.7" 7091 + checksum: 10/8e4202766a65877efcf5d5a41b7dd458480b36195e580a3b1085ad21e948bc417d55d6f8af1fd2a7ad008015d4117d5fdfe432731157da3c68678487174e4ba3 7092 + languageName: node 7093 + linkType: hard 7094 + 6195 7095 "@types/yargs-parser@npm:*": 6196 7096 version: 21.0.3 6197 7097 resolution: "@types/yargs-parser@npm:21.0.3" ··· 6251 7151 languageName: node 6252 7152 linkType: hard 6253 7153 7154 + "@vanilla-extract/css@npm:1.14.0": 7155 + version: 1.14.0 7156 + resolution: "@vanilla-extract/css@npm:1.14.0" 7157 + dependencies: 7158 + "@emotion/hash": "npm:^0.9.0" 7159 + "@vanilla-extract/private": "npm:^1.0.3" 7160 + chalk: "npm:^4.1.1" 7161 + css-what: "npm:^6.1.0" 7162 + cssesc: "npm:^3.0.0" 7163 + csstype: "npm:^3.0.7" 7164 + deep-object-diff: "npm:^1.1.9" 7165 + deepmerge: "npm:^4.2.2" 7166 + media-query-parser: "npm:^2.0.2" 7167 + modern-ahocorasick: "npm:^1.0.0" 7168 + outdent: "npm:^0.8.0" 7169 + checksum: 10/b708fa88705c72db4a4ed5246247910ca0297a6ef1edb3c64aa1ace3d4aee4bb739afcf5cf190ea4398f800aa96586c4ed4013b794924afa851b68723655cfb5 7170 + languageName: node 7171 + linkType: hard 7172 + 7173 + "@vanilla-extract/dynamic@npm:2.1.0": 7174 + version: 2.1.0 7175 + resolution: "@vanilla-extract/dynamic@npm:2.1.0" 7176 + dependencies: 7177 + "@vanilla-extract/private": "npm:^1.0.3" 7178 + checksum: 10/c4a49e20485889967bb1c71fc4d208ff5c500f61bf6390a03453d51a691736c85807f47727d10de55ac66260a3ac2a4a9df76354f10c75ce127f0c00e49fd64b 7179 + languageName: node 7180 + linkType: hard 7181 + 7182 + "@vanilla-extract/private@npm:^1.0.3": 7183 + version: 1.0.5 7184 + resolution: "@vanilla-extract/private@npm:1.0.5" 7185 + checksum: 10/31c3536e36320f56c8c7e196a5a29597630899775d63b660f6d9fbe6d407702e52501247d08919316b7ad5d23d3e52dffcc0c2182edbdcc7ebf726076cb245e9 7186 + languageName: node 7187 + linkType: hard 7188 + 7189 + "@vanilla-extract/sprinkles@npm:1.6.1": 7190 + version: 1.6.1 7191 + resolution: "@vanilla-extract/sprinkles@npm:1.6.1" 7192 + peerDependencies: 7193 + "@vanilla-extract/css": ^1.0.0 7194 + checksum: 10/a469f5a925da3cb0d23a83c77ce88779697143758c72000f3c4f9e4f4396035ae2a3a13d7d200e625c98952a1f375d83709817ff86fee039aa480840bd5a8888 7195 + languageName: node 7196 + linkType: hard 7197 + 7198 + "@wagmi/connectors@npm:5.1.2": 7199 + version: 5.1.2 7200 + resolution: "@wagmi/connectors@npm:5.1.2" 7201 + dependencies: 7202 + "@coinbase/wallet-sdk": "npm:4.0.4" 7203 + "@metamask/sdk": "npm:0.27.0" 7204 + "@safe-global/safe-apps-provider": "npm:0.18.3" 7205 + "@safe-global/safe-apps-sdk": "npm:9.1.0" 7206 + "@walletconnect/ethereum-provider": "npm:2.14.0" 7207 + "@walletconnect/modal": "npm:2.6.2" 7208 + cbw-sdk: "npm:@coinbase/wallet-sdk@3.9.3" 7209 + peerDependencies: 7210 + "@wagmi/core": 2.13.1 7211 + typescript: ">=5.0.4" 7212 + viem: 2.x 7213 + peerDependenciesMeta: 7214 + typescript: 7215 + optional: true 7216 + checksum: 10/6cf837cc57d34ba4a3da2eb051497d9e628ef6f06c0133c04ddfcec045179d94190a1b15d4d50f1422bbf38dfd6b9d20bf3f885c0d1567d1c7a7ee30eeca028b 7217 + languageName: node 7218 + linkType: hard 7219 + 7220 + "@wagmi/core@npm:2.13.1": 7221 + version: 2.13.1 7222 + resolution: "@wagmi/core@npm:2.13.1" 7223 + dependencies: 7224 + eventemitter3: "npm:5.0.1" 7225 + mipd: "npm:0.0.7" 7226 + zustand: "npm:4.4.1" 7227 + peerDependencies: 7228 + "@tanstack/query-core": ">=5.0.0" 7229 + typescript: ">=5.0.4" 7230 + viem: 2.x 7231 + peerDependenciesMeta: 7232 + "@tanstack/query-core": 7233 + optional: true 7234 + typescript: 7235 + optional: true 7236 + checksum: 10/2f2847799c08422ba354589a92f635eab0254fe7faac4f07bf6e66968d6db7219b3efb9c350a4e2e8f6e170fd853cf82cbe9980034145e3f9246a042dd4e48e3 7237 + languageName: node 7238 + linkType: hard 7239 + 7240 + "@walletconnect/core@npm:2.14.0": 7241 + version: 2.14.0 7242 + resolution: "@walletconnect/core@npm:2.14.0" 7243 + dependencies: 7244 + "@walletconnect/heartbeat": "npm:1.2.2" 7245 + "@walletconnect/jsonrpc-provider": "npm:1.0.14" 7246 + "@walletconnect/jsonrpc-types": "npm:1.0.4" 7247 + "@walletconnect/jsonrpc-utils": "npm:1.0.8" 7248 + "@walletconnect/jsonrpc-ws-connection": "npm:1.0.14" 7249 + "@walletconnect/keyvaluestorage": "npm:1.1.1" 7250 + "@walletconnect/logger": "npm:2.1.2" 7251 + "@walletconnect/relay-api": "npm:1.0.10" 7252 + "@walletconnect/relay-auth": "npm:1.0.4" 7253 + "@walletconnect/safe-json": "npm:1.0.2" 7254 + "@walletconnect/time": "npm:1.0.2" 7255 + "@walletconnect/types": "npm:2.14.0" 7256 + "@walletconnect/utils": "npm:2.14.0" 7257 + events: "npm:3.3.0" 7258 + isomorphic-unfetch: "npm:3.1.0" 7259 + lodash.isequal: "npm:4.5.0" 7260 + uint8arrays: "npm:3.1.0" 7261 + checksum: 10/1612c0da3a2f843f0bf65f903e627026cbcfaf4c517a3f2eed1d90ba42d4ab4d97216b1e2ba817417558a095e645f90961326356be9b4be5ad53c524ae2be26f 7262 + languageName: node 7263 + linkType: hard 7264 + 7265 + "@walletconnect/environment@npm:^1.0.1": 7266 + version: 1.0.1 7267 + resolution: "@walletconnect/environment@npm:1.0.1" 7268 + dependencies: 7269 + tslib: "npm:1.14.1" 7270 + checksum: 10/f6a1e3456e50cc7cfa58d99fd513ecac75573d0b8bcbbedcb1d7ec04ca9108df16b471afd40761b2a5cb4f66d8e33b7ba25f02c62c8365d68b1bd1ef52c1813e 7271 + languageName: node 7272 + linkType: hard 7273 + 7274 + "@walletconnect/ethereum-provider@npm:2.14.0": 7275 + version: 2.14.0 7276 + resolution: "@walletconnect/ethereum-provider@npm:2.14.0" 7277 + dependencies: 7278 + "@walletconnect/jsonrpc-http-connection": "npm:1.0.8" 7279 + "@walletconnect/jsonrpc-provider": "npm:1.0.14" 7280 + "@walletconnect/jsonrpc-types": "npm:1.0.4" 7281 + "@walletconnect/jsonrpc-utils": "npm:1.0.8" 7282 + "@walletconnect/modal": "npm:2.6.2" 7283 + "@walletconnect/sign-client": "npm:2.14.0" 7284 + "@walletconnect/types": "npm:2.14.0" 7285 + "@walletconnect/universal-provider": "npm:2.14.0" 7286 + "@walletconnect/utils": "npm:2.14.0" 7287 + events: "npm:3.3.0" 7288 + checksum: 10/d2db655603ce2c9bb83000eafd0d77dd8de6879997afcd1a5a70539c05c4863ed08ae637dcb90c208176b19b620545ca365e9f11899cfadc9dbce7ed1fc4d093 7289 + languageName: node 7290 + linkType: hard 7291 + 7292 + "@walletconnect/events@npm:1.0.1, @walletconnect/events@npm:^1.0.1": 7293 + version: 1.0.1 7294 + resolution: "@walletconnect/events@npm:1.0.1" 7295 + dependencies: 7296 + keyvaluestorage-interface: "npm:^1.0.0" 7297 + tslib: "npm:1.14.1" 7298 + checksum: 10/b5a105e9ac4d7d0a500085afd77b71e71a8ab78fd38b033e4ce91f8626fd8c254b1ba49a59c8c0ed8a00a7e8b93995163f414eda73c58694f8f830e453a902b6 7299 + languageName: node 7300 + linkType: hard 7301 + 7302 + "@walletconnect/heartbeat@npm:1.2.2": 7303 + version: 1.2.2 7304 + resolution: "@walletconnect/heartbeat@npm:1.2.2" 7305 + dependencies: 7306 + "@walletconnect/events": "npm:^1.0.1" 7307 + "@walletconnect/time": "npm:^1.0.2" 7308 + events: "npm:^3.3.0" 7309 + checksum: 10/f3a1c3c255ac9bd374b25e1ef65a61b1f623b9118d48471acaac1f9ee4ee1438d8d8cbc77733cdd980809b468443c046328fe5ac4084e01e0892f8c699cf44e7 7310 + languageName: node 7311 + linkType: hard 7312 + 7313 + "@walletconnect/jsonrpc-http-connection@npm:1.0.8": 7314 + version: 1.0.8 7315 + resolution: "@walletconnect/jsonrpc-http-connection@npm:1.0.8" 7316 + dependencies: 7317 + "@walletconnect/jsonrpc-utils": "npm:^1.0.6" 7318 + "@walletconnect/safe-json": "npm:^1.0.1" 7319 + cross-fetch: "npm:^3.1.4" 7320 + events: "npm:^3.3.0" 7321 + checksum: 10/c545906243df27fdbde3c8e9005217069dd22ce0f496c59f55843ca8fcb0c1a90d2c0ac6ecb16fa110ed85c36e5486f5a74621a5ca6230667d77ee3b0ae36cc6 7322 + languageName: node 7323 + linkType: hard 7324 + 7325 + "@walletconnect/jsonrpc-provider@npm:1.0.14": 7326 + version: 1.0.14 7327 + resolution: "@walletconnect/jsonrpc-provider@npm:1.0.14" 7328 + dependencies: 7329 + "@walletconnect/jsonrpc-utils": "npm:^1.0.8" 7330 + "@walletconnect/safe-json": "npm:^1.0.2" 7331 + events: "npm:^3.3.0" 7332 + checksum: 10/c3c78f00148043b70213f5174d537b210f1fb231d96103cbf7d0101626578d3c13fe99ac080df7a0056c7128ce488b0523eda0e3d1deed75754672848b4909a5 7333 + languageName: node 7334 + linkType: hard 7335 + 7336 + "@walletconnect/jsonrpc-types@npm:1.0.4, @walletconnect/jsonrpc-types@npm:^1.0.2, @walletconnect/jsonrpc-types@npm:^1.0.3": 7337 + version: 1.0.4 7338 + resolution: "@walletconnect/jsonrpc-types@npm:1.0.4" 7339 + dependencies: 7340 + events: "npm:^3.3.0" 7341 + keyvaluestorage-interface: "npm:^1.0.0" 7342 + checksum: 10/8cdc9f7b5e3ae0d702a44a6fc4c388a2b627188df758ffd103ba9aac6596a787d2f319aa8f6928a03d990c71c17d9b876028f36b8e0c37bd5c9026231ed9ba45 7343 + languageName: node 7344 + linkType: hard 7345 + 7346 + "@walletconnect/jsonrpc-utils@npm:1.0.8, @walletconnect/jsonrpc-utils@npm:^1.0.6, @walletconnect/jsonrpc-utils@npm:^1.0.8": 7347 + version: 1.0.8 7348 + resolution: "@walletconnect/jsonrpc-utils@npm:1.0.8" 7349 + dependencies: 7350 + "@walletconnect/environment": "npm:^1.0.1" 7351 + "@walletconnect/jsonrpc-types": "npm:^1.0.3" 7352 + tslib: "npm:1.14.1" 7353 + checksum: 10/4687b4582a5c33883d94e87ca8bb22d129a2a47b6e1d9e2c3210b74f02d9677723b3bf2283d2f0fa69866b0a66a80cdfada9a2f1c204d485fbd10d2baed1f0a6 7354 + languageName: node 7355 + linkType: hard 7356 + 7357 + "@walletconnect/jsonrpc-ws-connection@npm:1.0.14": 7358 + version: 1.0.14 7359 + resolution: "@walletconnect/jsonrpc-ws-connection@npm:1.0.14" 7360 + dependencies: 7361 + "@walletconnect/jsonrpc-utils": "npm:^1.0.6" 7362 + "@walletconnect/safe-json": "npm:^1.0.2" 7363 + events: "npm:^3.3.0" 7364 + ws: "npm:^7.5.1" 7365 + checksum: 10/2ad66217b62fb57a43c8edd33c27da0c9ba09cfec79f4d43e5d30bcb8224a48c1d1f0d6273be0371f2c7e33d8138a6fe03afa499b429ab7829d719677cd48f4d 7366 + languageName: node 7367 + linkType: hard 7368 + 7369 + "@walletconnect/keyvaluestorage@npm:1.1.1": 7370 + version: 1.1.1 7371 + resolution: "@walletconnect/keyvaluestorage@npm:1.1.1" 7372 + dependencies: 7373 + "@walletconnect/safe-json": "npm:^1.0.1" 7374 + idb-keyval: "npm:^6.2.1" 7375 + unstorage: "npm:^1.9.0" 7376 + peerDependencies: 7377 + "@react-native-async-storage/async-storage": 1.x 7378 + peerDependenciesMeta: 7379 + "@react-native-async-storage/async-storage": 7380 + optional: true 7381 + checksum: 10/fd9c275b3249d8e9f722866703b5c040eb35d0670c92a297428ffb700ac36c6b9978242beac5d2cfe97eb522ae01307cacd9c79ecf95640878804fce0f13c5e7 7382 + languageName: node 7383 + linkType: hard 7384 + 7385 + "@walletconnect/logger@npm:2.1.2": 7386 + version: 2.1.2 7387 + resolution: "@walletconnect/logger@npm:2.1.2" 7388 + dependencies: 7389 + "@walletconnect/safe-json": "npm:^1.0.2" 7390 + pino: "npm:7.11.0" 7391 + checksum: 10/2e6d438bd352595fff6691712c83953e3ad6b2b9ab298c5a8b670a024f53a3f744b165e5aa081a79261ee4801b93b6c60698a39947d613d49a8f6e6215ecd4c2 7392 + languageName: node 7393 + linkType: hard 7394 + 7395 + "@walletconnect/modal-core@npm:2.6.2": 7396 + version: 2.6.2 7397 + resolution: "@walletconnect/modal-core@npm:2.6.2" 7398 + dependencies: 7399 + valtio: "npm:1.11.2" 7400 + checksum: 10/671184da341eebb6b7a3ad7c334851113683d71e6118f7203a377e493b61eb94bc0571484e497e577b9f4d7221a8a7034ad4b52af722c89fa4105627bed638ba 7401 + languageName: node 7402 + linkType: hard 7403 + 7404 + "@walletconnect/modal-ui@npm:2.6.2": 7405 + version: 2.6.2 7406 + resolution: "@walletconnect/modal-ui@npm:2.6.2" 7407 + dependencies: 7408 + "@walletconnect/modal-core": "npm:2.6.2" 7409 + lit: "npm:2.8.0" 7410 + motion: "npm:10.16.2" 7411 + qrcode: "npm:1.5.3" 7412 + checksum: 10/5460ad7f4591c016b723b3f707ac0020e185b60744cf7132b4b4f48d71c87c1c55826f6e11005860f96bd11e0ed3f88da7cda4c0a1c35a0e5b7d6e53bc14cf15 7413 + languageName: node 7414 + linkType: hard 7415 + 7416 + "@walletconnect/modal@npm:2.6.2": 7417 + version: 2.6.2 7418 + resolution: "@walletconnect/modal@npm:2.6.2" 7419 + dependencies: 7420 + "@walletconnect/modal-core": "npm:2.6.2" 7421 + "@walletconnect/modal-ui": "npm:2.6.2" 7422 + checksum: 10/f8f132c89d1d7f44f2fa564c8d5122163610be4afb0cadc9576c77083471297c37ff62aae3a25492c0ddb480240a2a6ffefe3eba1fd48f1664160c6bac01466d 7423 + languageName: node 7424 + linkType: hard 7425 + 7426 + "@walletconnect/relay-api@npm:1.0.10": 7427 + version: 1.0.10 7428 + resolution: "@walletconnect/relay-api@npm:1.0.10" 7429 + dependencies: 7430 + "@walletconnect/jsonrpc-types": "npm:^1.0.2" 7431 + checksum: 10/0faeaed5bcd71da9f6b622d9d2cf2db3019108c61512032895e9bd9267a9f93edb7232489813df0a2770a88b83b2ebf8cf13159580f9126b81ebc283caebd4c6 7432 + languageName: node 7433 + linkType: hard 7434 + 7435 + "@walletconnect/relay-auth@npm:1.0.4": 7436 + version: 1.0.4 7437 + resolution: "@walletconnect/relay-auth@npm:1.0.4" 7438 + dependencies: 7439 + "@stablelib/ed25519": "npm:^1.0.2" 7440 + "@stablelib/random": "npm:^1.0.1" 7441 + "@walletconnect/safe-json": "npm:^1.0.1" 7442 + "@walletconnect/time": "npm:^1.0.2" 7443 + tslib: "npm:1.14.1" 7444 + uint8arrays: "npm:^3.0.0" 7445 + checksum: 10/d9128b2a25f38ebf2f49f8c184dad5c997ad6343513bddd7941459c2f2757e6acfbcdd36dc9c12d0491f55723d5e2c5c0ee2e9cf381b3247274b920e95d4db0e 7446 + languageName: node 7447 + linkType: hard 7448 + 7449 + "@walletconnect/safe-json@npm:1.0.2, @walletconnect/safe-json@npm:^1.0.1, @walletconnect/safe-json@npm:^1.0.2": 7450 + version: 1.0.2 7451 + resolution: "@walletconnect/safe-json@npm:1.0.2" 7452 + dependencies: 7453 + tslib: "npm:1.14.1" 7454 + checksum: 10/b9d031dab3916d20fa5241d7ad2be425368ae489995ba3ba18d6ad88e81ad3ed093b8e867b8a4fc44759099896aeb5afee5635858cb80c4819ebc7ebb71ed5a6 7455 + languageName: node 7456 + linkType: hard 7457 + 7458 + "@walletconnect/sign-client@npm:2.14.0": 7459 + version: 2.14.0 7460 + resolution: "@walletconnect/sign-client@npm:2.14.0" 7461 + dependencies: 7462 + "@walletconnect/core": "npm:2.14.0" 7463 + "@walletconnect/events": "npm:1.0.1" 7464 + "@walletconnect/heartbeat": "npm:1.2.2" 7465 + "@walletconnect/jsonrpc-utils": "npm:1.0.8" 7466 + "@walletconnect/logger": "npm:2.1.2" 7467 + "@walletconnect/time": "npm:1.0.2" 7468 + "@walletconnect/types": "npm:2.14.0" 7469 + "@walletconnect/utils": "npm:2.14.0" 7470 + events: "npm:3.3.0" 7471 + checksum: 10/2e95feae093cace1d8230296f802b62fc267d360850b8c5d5558bdc5b53087ed758f0e3935353a7e10d4b4f3e04bcfb4bf2b3cdbf212d05903ceb4e76f6a67cb 7472 + languageName: node 7473 + linkType: hard 7474 + 7475 + "@walletconnect/time@npm:1.0.2, @walletconnect/time@npm:^1.0.2": 7476 + version: 1.0.2 7477 + resolution: "@walletconnect/time@npm:1.0.2" 7478 + dependencies: 7479 + tslib: "npm:1.14.1" 7480 + checksum: 10/ea84d0850e63306837f98a228e08a59f6945da38ba5553b1f158abeaa8ec4dc8a0025a0f0cfc843ddf05ce2947da95c02ac1e8cedce7092bbe1c2d46ca816dd9 7481 + languageName: node 7482 + linkType: hard 7483 + 7484 + "@walletconnect/types@npm:2.14.0": 7485 + version: 2.14.0 7486 + resolution: "@walletconnect/types@npm:2.14.0" 7487 + dependencies: 7488 + "@walletconnect/events": "npm:1.0.1" 7489 + "@walletconnect/heartbeat": "npm:1.2.2" 7490 + "@walletconnect/jsonrpc-types": "npm:1.0.4" 7491 + "@walletconnect/keyvaluestorage": "npm:1.1.1" 7492 + "@walletconnect/logger": "npm:2.1.2" 7493 + events: "npm:3.3.0" 7494 + checksum: 10/02ffe6b97eeb7af35cb5234241f170751463ca60852dbff494a9b0bf942a224b4b58500f3ff3cd5074fda2d6bc32a9113ee99fd639bc5d66b7e0b223951e150c 7495 + languageName: node 7496 + linkType: hard 7497 + 7498 + "@walletconnect/universal-provider@npm:2.14.0": 7499 + version: 2.14.0 7500 + resolution: "@walletconnect/universal-provider@npm:2.14.0" 7501 + dependencies: 7502 + "@walletconnect/jsonrpc-http-connection": "npm:1.0.8" 7503 + "@walletconnect/jsonrpc-provider": "npm:1.0.14" 7504 + "@walletconnect/jsonrpc-types": "npm:1.0.4" 7505 + "@walletconnect/jsonrpc-utils": "npm:1.0.8" 7506 + "@walletconnect/logger": "npm:2.1.2" 7507 + "@walletconnect/sign-client": "npm:2.14.0" 7508 + "@walletconnect/types": "npm:2.14.0" 7509 + "@walletconnect/utils": "npm:2.14.0" 7510 + events: "npm:3.3.0" 7511 + checksum: 10/f72702acc797e7fe7bef1fbe31004050e149536c8b5b1071390edd247e1324334cf002ad82815febf8586393008cf84b341f2d6ff3d137af4bad2f2c82ba0fe8 7512 + languageName: node 7513 + linkType: hard 7514 + 7515 + "@walletconnect/utils@npm:2.14.0": 7516 + version: 2.14.0 7517 + resolution: "@walletconnect/utils@npm:2.14.0" 7518 + dependencies: 7519 + "@stablelib/chacha20poly1305": "npm:1.0.1" 7520 + "@stablelib/hkdf": "npm:1.0.1" 7521 + "@stablelib/random": "npm:1.0.2" 7522 + "@stablelib/sha256": "npm:1.0.1" 7523 + "@stablelib/x25519": "npm:1.0.3" 7524 + "@walletconnect/relay-api": "npm:1.0.10" 7525 + "@walletconnect/safe-json": "npm:1.0.2" 7526 + "@walletconnect/time": "npm:1.0.2" 7527 + "@walletconnect/types": "npm:2.14.0" 7528 + "@walletconnect/window-getters": "npm:1.0.1" 7529 + "@walletconnect/window-metadata": "npm:1.0.1" 7530 + detect-browser: "npm:5.3.0" 7531 + query-string: "npm:7.1.3" 7532 + uint8arrays: "npm:3.1.0" 7533 + checksum: 10/a0e63763e5ac6391fd458a466c0f1b25247633fe3b7866fed7efc39b6399406f68ad353c49c091cdf718a8ce1be9d7eeaee8146c9ea2c32470bb716d3c73c0b6 7534 + languageName: node 7535 + linkType: hard 7536 + 7537 + "@walletconnect/window-getters@npm:1.0.1, @walletconnect/window-getters@npm:^1.0.1": 7538 + version: 1.0.1 7539 + resolution: "@walletconnect/window-getters@npm:1.0.1" 7540 + dependencies: 7541 + tslib: "npm:1.14.1" 7542 + checksum: 10/8d3fcb134fbbe903ba4a63f1fa5a7849fd443874bf45488260afc2fe3b1cbe211f86da1d76ee844be7c0e8618ae67402f94c213432fd80b04715eaf72e2e00e3 7543 + languageName: node 7544 + linkType: hard 7545 + 7546 + "@walletconnect/window-metadata@npm:1.0.1": 7547 + version: 1.0.1 7548 + resolution: "@walletconnect/window-metadata@npm:1.0.1" 7549 + dependencies: 7550 + "@walletconnect/window-getters": "npm:^1.0.1" 7551 + tslib: "npm:1.14.1" 7552 + checksum: 10/cf322e0860c4448cefcd81f34bc6d49d1a235a81e74a6146baefb74e47cf6c3c8050b65e534a3dc13f8d2aed3fc59732ccf48d5a01b5b23e08e1847fcffa950c 7553 + languageName: node 7554 + linkType: hard 7555 + 6254 7556 "@web3-storage/multipart-parser@npm:^1.0.0": 6255 7557 version: 1.0.0 6256 7558 resolution: "@web3-storage/multipart-parser@npm:1.0.0" ··· 6326 7628 languageName: node 6327 7629 linkType: hard 6328 7630 7631 + "abitype@npm:1.0.5": 7632 + version: 1.0.5 7633 + resolution: "abitype@npm:1.0.5" 7634 + peerDependencies: 7635 + typescript: ">=5.0.4" 7636 + zod: ^3 >=3.22.0 7637 + peerDependenciesMeta: 7638 + typescript: 7639 + optional: true 7640 + zod: 7641 + optional: true 7642 + checksum: 10/1acd0d9687945dd78442b71bd84ff3b9dceae27d15f0d8b14b16554a0c8c9518eeb971ff8e94d507f4d9f05a8a8b91eb8fafd735eaecebac37d5c5a4aac06d8e 7643 + languageName: node 7644 + linkType: hard 7645 + 6329 7646 "abort-controller@npm:^3.0.0": 6330 7647 version: 3.0.0 6331 7648 resolution: "abort-controller@npm:3.0.0" ··· 6345 7662 languageName: node 6346 7663 linkType: hard 6347 7664 6348 - "acorn@npm:^8.8.2": 7665 + "acorn@npm:^8.11.3, acorn@npm:^8.8.2": 6349 7666 version: 8.12.1 6350 7667 resolution: "acorn@npm:8.12.1" 6351 7668 bin: ··· 6527 7844 languageName: node 6528 7845 linkType: hard 6529 7846 6530 - "anymatch@npm:^3.0.3, anymatch@npm:~3.1.2": 7847 + "anymatch@npm:^3.0.3, anymatch@npm:^3.1.3, anymatch@npm:~3.1.2": 6531 7848 version: 3.1.3 6532 7849 resolution: "anymatch@npm:3.1.3" 6533 7850 dependencies: ··· 6577 7894 "@babel/core": "npm:^7.24.9" 6578 7895 "@expo/metro-config": "npm:~0.18.8" 6579 7896 "@expo/metro-runtime": "npm:~3.2.1" 7897 + "@rainbow-me/rainbowkit": "npm:2" 6580 7898 "@react-native-firebase/app": "npm:^20.3.0" 6581 7899 "@react-native-firebase/messaging": "npm:^20.3.0" 6582 7900 "@react-navigation/native": "npm:^6.1.17" ··· 6585 7903 "@tamagui/lucide-icons": "npm:^1.102.3" 6586 7904 "@tamagui/metro-plugin": "npm:^1.102.3" 6587 7905 "@tamagui/toast": "npm:^1.102.3" 7906 + "@tanstack/react-query": "npm:^5.51.16" 6588 7907 "@types/react": "npm:~18.3.3" 6589 7908 "@types/react-native": "npm:^0.73.0" 6590 7909 babel-preset-expo: "npm:^11.0.12" ··· 6613 7932 react-native-webview: "npm:13.10.5" 6614 7933 tamagui: "npm:^1.102.3" 6615 7934 typescript: "npm:~5.5.3" 7935 + viem: "npm:2.x" 7936 + wagmi: "npm:2" 6616 7937 languageName: unknown 6617 7938 linkType: soft 6618 7939 ··· 6766 8087 languageName: node 6767 8088 linkType: hard 6768 8089 8090 + "async-mutex@npm:^0.2.6": 8091 + version: 0.2.6 8092 + resolution: "async-mutex@npm:0.2.6" 8093 + dependencies: 8094 + tslib: "npm:^2.0.0" 8095 + checksum: 10/3cf676fc48b4686abf534cc02d4784bab3f35d7836a0a7476c96e57c3f6607dd3d94cc0989b29d33ce5ae5cde8be8e1a96f3e769ba3b0e1ba4a244f873aa5623 8096 + languageName: node 8097 + linkType: hard 8098 + 6769 8099 "async-retry@npm:^1.3.3": 6770 8100 version: 1.3.3 6771 8101 resolution: "async-retry@npm:1.3.3" ··· 6793 8123 version: 1.0.0 6794 8124 resolution: "at-least-node@npm:1.0.0" 6795 8125 checksum: 10/463e2f8e43384f1afb54bc68485c436d7622acec08b6fad269b421cb1d29cebb5af751426793d0961ed243146fe4dc983402f6d5a51b720b277818dbf6f2e49e 8126 + languageName: node 8127 + linkType: hard 8128 + 8129 + "atomic-sleep@npm:^1.0.0": 8130 + version: 1.0.0 8131 + resolution: "atomic-sleep@npm:1.0.0" 8132 + checksum: 10/3ab6d2cf46b31394b4607e935ec5c1c3c4f60f3e30f0913d35ea74b51b3585e84f590d09e58067f11762eec71c87d25314ce859030983dc0e4397eed21daa12e 6796 8133 languageName: node 6797 8134 linkType: hard 6798 8135 ··· 7020 8357 languageName: node 7021 8358 linkType: hard 7022 8359 8360 + "bn.js@npm:^4.11.9": 8361 + version: 4.12.0 8362 + resolution: "bn.js@npm:4.12.0" 8363 + checksum: 10/10f8db196d3da5adfc3207d35d0a42aa29033eb33685f20ba2c36cadfe2de63dad05df0a20ab5aae01b418d1c4b3d4d205273085262fa020d17e93ff32b67527 8364 + languageName: node 8365 + linkType: hard 8366 + 8367 + "bn.js@npm:^5.2.1": 8368 + version: 5.2.1 8369 + resolution: "bn.js@npm:5.2.1" 8370 + checksum: 10/7a7e8764d7a6e9708b8b9841b2b3d6019cc154d2fc23716d0efecfe1e16921b7533c6f7361fb05471eab47986c4aa310c270f88e3507172104632ac8df2cfd84 8371 + languageName: node 8372 + linkType: hard 8373 + 7023 8374 "boolbase@npm:^1.0.0": 7024 8375 version: 1.0.0 7025 8376 resolution: "boolbase@npm:1.0.0" 7026 8377 checksum: 10/3e25c80ef626c3a3487c73dbfc70ac322ec830666c9ad915d11b701142fab25ec1e63eff2c450c74347acfd2de854ccde865cd79ef4db1683f7c7b046ea43bb0 8378 + languageName: node 8379 + linkType: hard 8380 + 8381 + "bowser@npm:^2.9.0": 8382 + version: 2.11.0 8383 + resolution: "bowser@npm:2.11.0" 8384 + checksum: 10/ef46500eafe35072455e7c3ae771244e97827e0626686a9a3601c436d16eb272dad7ccbd49e2130b599b617ca9daa67027de827ffc4c220e02f63c84b69a8751 7027 8385 languageName: node 7028 8386 linkType: hard 7029 8387 ··· 7082 8440 languageName: node 7083 8441 linkType: hard 7084 8442 8443 + "brorand@npm:^1.1.0": 8444 + version: 1.1.0 8445 + resolution: "brorand@npm:1.1.0" 8446 + checksum: 10/8a05c9f3c4b46572dec6ef71012b1946db6cae8c7bb60ccd4b7dd5a84655db49fe043ecc6272e7ef1f69dc53d6730b9e2a3a03a8310509a3d797a618cbee52be 8447 + languageName: node 8448 + linkType: hard 8449 + 7085 8450 "browserslist@npm:^4.22.2, browserslist@npm:^4.23.0": 7086 8451 version: 4.23.1 7087 8452 resolution: "browserslist@npm:4.23.1" ··· 7167 8532 languageName: node 7168 8533 linkType: hard 7169 8534 8535 + "buffer@npm:^6.0.3": 8536 + version: 6.0.3 8537 + resolution: "buffer@npm:6.0.3" 8538 + dependencies: 8539 + base64-js: "npm:^1.3.1" 8540 + ieee754: "npm:^1.2.1" 8541 + checksum: 10/b6bc68237ebf29bdacae48ce60e5e28fc53ae886301f2ad9496618efac49427ed79096750033e7eab1897a4f26ae374ace49106a5758f38fb70c78c9fda2c3b1 8542 + languageName: node 8543 + linkType: hard 8544 + 8545 + "bufferutil@npm:^4.0.8": 8546 + version: 4.0.8 8547 + resolution: "bufferutil@npm:4.0.8" 8548 + dependencies: 8549 + node-gyp: "npm:latest" 8550 + node-gyp-build: "npm:^4.3.0" 8551 + checksum: 10/d9337badc960a19d5a031db5de47159d7d8a11b6bab399bdfbf464ffa9ecd2972fef19bb61a7d2827e0c55f912c20713e12343386b86cb013f2b99c2324ab6a3 8552 + languageName: node 8553 + linkType: hard 8554 + 7170 8555 "builtins@npm:^1.0.3": 7171 8556 version: 1.0.3 7172 8557 resolution: "builtins@npm:1.0.3" ··· 7333 8718 languageName: node 7334 8719 linkType: hard 7335 8720 8721 + "cbw-sdk@npm:@coinbase/wallet-sdk@3.9.3": 8722 + version: 3.9.3 8723 + resolution: "@coinbase/wallet-sdk@npm:3.9.3" 8724 + dependencies: 8725 + bn.js: "npm:^5.2.1" 8726 + buffer: "npm:^6.0.3" 8727 + clsx: "npm:^1.2.1" 8728 + eth-block-tracker: "npm:^7.1.0" 8729 + eth-json-rpc-filters: "npm:^6.0.0" 8730 + eventemitter3: "npm:^5.0.1" 8731 + keccak: "npm:^3.0.3" 8732 + preact: "npm:^10.16.0" 8733 + sha.js: "npm:^2.4.11" 8734 + checksum: 10/3bc3f0edad8ea46cb7a127993373093d95b6fef03d2a6a40bae7983a1d9a20a114faa8e7bf1230efd380ffb67b42dae405c6617cd6fad6d278bf9b9e021a0280 8735 + languageName: node 8736 + linkType: hard 8737 + 7336 8738 "chalk@npm:4.1.0": 7337 8739 version: 4.1.0 7338 8740 resolution: "chalk@npm:4.1.0" ··· 7404 8806 languageName: node 7405 8807 linkType: hard 7406 8808 7407 - "chokidar@npm:^3.5.2": 8809 + "chokidar@npm:^3.5.2, chokidar@npm:^3.6.0": 7408 8810 version: 3.6.0 7409 8811 resolution: "chokidar@npm:3.6.0" 7410 8812 dependencies: ··· 7474 8876 languageName: node 7475 8877 linkType: hard 7476 8878 8879 + "citty@npm:^0.1.5, citty@npm:^0.1.6": 8880 + version: 0.1.6 8881 + resolution: "citty@npm:0.1.6" 8882 + dependencies: 8883 + consola: "npm:^3.2.3" 8884 + checksum: 10/3208947e73abb699a12578ee2bfee254bf8dd1ce0d5698e8a298411cabf16bd3620d63433aef5bd88cdb2b9da71aef18adefa3b4ffd18273bb62dd1d28c344f5 8885 + languageName: node 8886 + linkType: hard 8887 + 7477 8888 "clean-stack@npm:^2.0.0": 7478 8889 version: 2.2.0 7479 8890 resolution: "clean-stack@npm:2.2.0" ··· 7539 8950 languageName: node 7540 8951 linkType: hard 7541 8952 8953 + "clipboardy@npm:^4.0.0": 8954 + version: 4.0.0 8955 + resolution: "clipboardy@npm:4.0.0" 8956 + dependencies: 8957 + execa: "npm:^8.0.1" 8958 + is-wsl: "npm:^3.1.0" 8959 + is64bit: "npm:^2.0.0" 8960 + checksum: 10/ec4ebe7e5c81d9c9cb994637e7b0e068c1c8fc272167ecd5519f967427271ec66e0e64da7268a2630b860eff42933aeabe25ba5e42bb80dbf1fae6362df059ed 8961 + languageName: node 8962 + linkType: hard 8963 + 7542 8964 "cliui@npm:^6.0.0": 7543 8965 version: 6.0.0 7544 8966 resolution: "cliui@npm:6.0.0" ··· 7606 9028 version: 2.1.2 7607 9029 resolution: "clone@npm:2.1.2" 7608 9030 checksum: 10/d9c79efba655f0bf601ab299c57eb54cbaa9860fb011aee9d89ed5ac0d12df1660ab7642fddaabb9a26b7eff0e117d4520512cb70798319ff5d30a111b5310c2 9031 + languageName: node 9032 + linkType: hard 9033 + 9034 + "clsx@npm:2.1.0": 9035 + version: 2.1.0 9036 + resolution: "clsx@npm:2.1.0" 9037 + checksum: 10/2e0ce7c3b6803d74fc8147c408f88e79245583202ac14abd9691e2aebb9f312de44270b79154320d10bb7804a9197869635d1291741084826cff20820f31542b 9038 + languageName: node 9039 + linkType: hard 9040 + 9041 + "clsx@npm:^1.2.1": 9042 + version: 1.2.1 9043 + resolution: "clsx@npm:1.2.1" 9044 + checksum: 10/5ded6f61f15f1fa0350e691ccec43a28b12fb8e64c8e94715f2a937bc3722d4c3ed41d6e945c971fc4dcc2a7213a43323beaf2e1c28654af63ba70c9968a8643 7609 9045 languageName: node 7610 9046 linkType: hard 7611 9047 ··· 7840 9276 languageName: node 7841 9277 linkType: hard 7842 9278 9279 + "confbox@npm:^0.1.7": 9280 + version: 0.1.7 9281 + resolution: "confbox@npm:0.1.7" 9282 + checksum: 10/3086687b9a2a70d44d4b40a2d376536fe7e1baec4a2a34261b21b8a836026b419cbf89ded6054216631823e7d63c415dad4b4d53591d6edbb202bb9820dfa6fa 9283 + languageName: node 9284 + linkType: hard 9285 + 7843 9286 "connect@npm:^3.6.5, connect@npm:^3.7.0": 7844 9287 version: 3.7.0 7845 9288 resolution: "connect@npm:3.7.0" ··· 7852 9295 languageName: node 7853 9296 linkType: hard 7854 9297 9298 + "consola@npm:^3.2.3": 9299 + version: 3.2.3 9300 + resolution: "consola@npm:3.2.3" 9301 + checksum: 10/02972dcb048c337357a3628438e5976b8e45bcec22fdcfbe9cd17622992953c4d695d5152f141464a02deac769b1d23028e8ac87f56483838df7a6bbf8e0f5a2 9302 + languageName: node 9303 + linkType: hard 9304 + 7855 9305 "console-control-strings@npm:^1.1.0": 7856 9306 version: 1.1.0 7857 9307 resolution: "console-control-strings@npm:1.1.0" ··· 7959 9409 languageName: node 7960 9410 linkType: hard 7961 9411 9412 + "cookie-es@npm:^1.1.0": 9413 + version: 1.2.2 9414 + resolution: "cookie-es@npm:1.2.2" 9415 + checksum: 10/0fd742c11caa185928e450543f84df62d4b2c1fc7b5041196b57b7db04e1c6ac6585fb40e4f579a2819efefd2d6a9cbb4d17f71240d05f4dcd8f74ae81341a20 9416 + languageName: node 9417 + linkType: hard 9418 + 7962 9419 "cookie-signature@npm:^1.1.0": 7963 9420 version: 1.2.1 7964 9421 resolution: "cookie-signature@npm:1.2.1" ··· 8025 9482 languageName: node 8026 9483 linkType: hard 8027 9484 8028 - "cross-fetch@npm:^3.1.5": 9485 + "crc-32@npm:^1.2.0": 9486 + version: 1.2.2 9487 + resolution: "crc-32@npm:1.2.2" 9488 + bin: 9489 + crc32: bin/crc32.njs 9490 + checksum: 10/824f696a5baaf617809aa9cd033313c8f94f12d15ebffa69f10202480396be44aef9831d900ab291638a8022ed91c360696dd5b1ba691eb3f34e60be8835b7c3 9491 + languageName: node 9492 + linkType: hard 9493 + 9494 + "cross-fetch@npm:^3.1.4, cross-fetch@npm:^3.1.5": 8029 9495 version: 3.1.8 8030 9496 resolution: "cross-fetch@npm:3.1.8" 8031 9497 dependencies: ··· 8034 9500 languageName: node 8035 9501 linkType: hard 8036 9502 9503 + "cross-fetch@npm:^4.0.0": 9504 + version: 4.0.0 9505 + resolution: "cross-fetch@npm:4.0.0" 9506 + dependencies: 9507 + node-fetch: "npm:^2.6.12" 9508 + checksum: 10/e231a71926644ef122d334a3a4e73d9ba3ba4b480a8a277fb9badc434c1ba905b3d60c8034e18b348361a09afbec40ba9371036801ba2b675a7b84588f9f55d8 9509 + languageName: node 9510 + linkType: hard 9511 + 8037 9512 "cross-spawn@npm:^6.0.0": 8038 9513 version: 6.0.5 8039 9514 resolution: "cross-spawn@npm:6.0.5" ··· 8055 9530 shebang-command: "npm:^2.0.0" 8056 9531 which: "npm:^2.0.1" 8057 9532 checksum: 10/e1a13869d2f57d974de0d9ef7acbf69dc6937db20b918525a01dacb5032129bd552d290d886d981e99f1b624cb03657084cc87bd40f115c07ecf376821c729ce 9533 + languageName: node 9534 + linkType: hard 9535 + 9536 + "crossws@npm:^0.2.0, crossws@npm:^0.2.4": 9537 + version: 0.2.4 9538 + resolution: "crossws@npm:0.2.4" 9539 + peerDependencies: 9540 + uWebSockets.js: "*" 9541 + peerDependenciesMeta: 9542 + uWebSockets.js: 9543 + optional: true 9544 + checksum: 10/f8ece87d1737f370f2e4802d5423b24bbe9286dd6f3b0111d00beaf2d16879dc8d332cfc5e42312425a6f1a1010fb72a6e7d4af33fc4fa0c9c6547843d87fcb6 8058 9545 languageName: node 8059 9546 linkType: hard 8060 9547 ··· 8145 9632 languageName: node 8146 9633 linkType: hard 8147 9634 8148 - "csstype@npm:^3.0.2": 9635 + "csstype@npm:^3.0.2, csstype@npm:^3.0.7": 8149 9636 version: 3.1.3 8150 9637 resolution: "csstype@npm:3.1.3" 8151 9638 checksum: 10/f593cce41ff5ade23f44e77521e3a1bcc2c64107041e1bf6c3c32adc5187d0d60983292fda326154d20b01079e24931aa5b08e4467cc488b60bb1e7f6d478ade ··· 8206 9693 languageName: node 8207 9694 linkType: hard 8208 9695 9696 + "date-fns@npm:^2.29.3": 9697 + version: 2.30.0 9698 + resolution: "date-fns@npm:2.30.0" 9699 + dependencies: 9700 + "@babel/runtime": "npm:^7.21.0" 9701 + checksum: 10/70b3e8ea7aaaaeaa2cd80bd889622a4bcb5d8028b4de9162cbcda359db06e16ff6e9309e54eead5341e71031818497f19aaf9839c87d1aba1e27bb4796e758a9 9702 + languageName: node 9703 + linkType: hard 9704 + 8209 9705 "dateformat@npm:^3.0.3": 8210 9706 version: 3.0.3 8211 9707 resolution: "dateformat@npm:3.0.3" ··· 8247 9743 dependencies: 8248 9744 ms: "npm:^2.1.1" 8249 9745 checksum: 10/d86fd7be2b85462297ea16f1934dc219335e802f629ca9a69b63ed8ed041dda492389bb2ee039217c02e5b54792b1c51aa96ae954cf28634d363a2360c7a1639 9746 + languageName: node 9747 + linkType: hard 9748 + 9749 + "debug@npm:~4.3.1, debug@npm:~4.3.2": 9750 + version: 4.3.6 9751 + resolution: "debug@npm:4.3.6" 9752 + dependencies: 9753 + ms: "npm:2.1.2" 9754 + peerDependenciesMeta: 9755 + supports-color: 9756 + optional: true 9757 + checksum: 10/d3adb9af7d57a9e809a68f404490cf776122acca16e6359a2702c0f462e510e91f9765c07f707b8ab0d91e03bad57328f3256f5082631cefb5393d0394d50fb7 8250 9758 languageName: node 8251 9759 linkType: hard 8252 9760 ··· 8293 9801 languageName: node 8294 9802 linkType: hard 8295 9803 8296 - "deepmerge@npm:^4.3.0, deepmerge@npm:^4.3.1": 9804 + "deep-object-diff@npm:^1.1.9": 9805 + version: 1.1.9 9806 + resolution: "deep-object-diff@npm:1.1.9" 9807 + checksum: 10/b9771cc1ca08a34e408309eaab967bd2ab697684abdfa1262f4283ced8230a9ace966322f356364ff71a785c6e9cc356b7596582e900da5726e6b87d4b2a1463 9808 + languageName: node 9809 + linkType: hard 9810 + 9811 + "deepmerge@npm:^4.2.2, deepmerge@npm:^4.3.0, deepmerge@npm:^4.3.1": 8297 9812 version: 4.3.1 8298 9813 resolution: "deepmerge@npm:4.3.1" 8299 9814 checksum: 10/058d9e1b0ff1a154468bf3837aea436abcfea1ba1d165ddaaf48ca93765fdd01a30d33c36173da8fbbed951dd0a267602bc782fe288b0fc4b7e1e7091afc4529 ··· 8348 9863 languageName: node 8349 9864 linkType: hard 8350 9865 9866 + "defu@npm:^6.1.4": 9867 + version: 6.1.4 9868 + resolution: "defu@npm:6.1.4" 9869 + checksum: 10/aeffdb47300f45b4fdef1c5bd3880ac18ea7a1fd5b8a8faf8df29350ff03bf16dd34f9800205cab513d476e4c0a3783aa0cff0a433aff0ac84a67ddc4c8a2d64 9870 + languageName: node 9871 + linkType: hard 9872 + 8351 9873 "del@npm:^6.0.0": 8352 9874 version: 6.1.1 8353 9875 resolution: "del@npm:6.1.1" ··· 8392 9914 languageName: node 8393 9915 linkType: hard 8394 9916 9917 + "destr@npm:^2.0.3": 9918 + version: 2.0.3 9919 + resolution: "destr@npm:2.0.3" 9920 + checksum: 10/dbb756baa876810ec0ca4bcb702d86cc3b480ed14f36bf5747718ed211f96bca5520b63a4109eb181ad940ee2a645677d9a63d4a0ed11a7510619dae97317201 9921 + languageName: node 9922 + linkType: hard 9923 + 8395 9924 "destroy@npm:1.2.0": 8396 9925 version: 1.2.0 8397 9926 resolution: "destroy@npm:1.2.0" 8398 9927 checksum: 10/0acb300b7478a08b92d810ab229d5afe0d2f4399272045ab22affa0d99dbaf12637659411530a6fcd597a9bdac718fc94373a61a95b4651bbc7b83684a565e38 9928 + languageName: node 9929 + linkType: hard 9930 + 9931 + "detect-browser@npm:5.3.0, detect-browser@npm:^5.2.0": 9932 + version: 5.3.0 9933 + resolution: "detect-browser@npm:5.3.0" 9934 + checksum: 10/4a8551e1f5170633c9aa976f16c57f81f1044d071b2eb853c572bd817bf9cd0cc90c9c520d950edb5accd31b1b0c8ddb7a96e82040b0b5579f9f09c77446a117 8399 9935 languageName: node 8400 9936 linkType: hard 8401 9937 ··· 8426 9962 version: 29.6.3 8427 9963 resolution: "diff-sequences@npm:29.6.3" 8428 9964 checksum: 10/179daf9d2f9af5c57ad66d97cb902a538bcf8ed64963fa7aa0c329b3de3665ce2eb6ffdc2f69f29d445fa4af2517e5e55e5b6e00c00a9ae4f43645f97f7078cb 9965 + languageName: node 9966 + linkType: hard 9967 + 9968 + "dijkstrajs@npm:^1.0.1": 9969 + version: 1.0.3 9970 + resolution: "dijkstrajs@npm:1.0.3" 9971 + checksum: 10/0d8429699a6d5897ed371de494ef3c7072e8052b42abbd978e686a9b8689e70af005fa3e93e93263ee3653673ff5f89c36db830a57ae7c2e088cb9c496307507 8429 9972 languageName: node 8430 9973 linkType: hard 8431 9974 ··· 8508 10051 languageName: node 8509 10052 linkType: hard 8510 10053 8511 - "duplexify@npm:^4.0.0, duplexify@npm:^4.1.3": 10054 + "duplexify@npm:^4.0.0, duplexify@npm:^4.1.2, duplexify@npm:^4.1.3": 8512 10055 version: 4.1.3 8513 10056 resolution: "duplexify@npm:4.1.3" 8514 10057 dependencies: ··· 8536 10079 languageName: node 8537 10080 linkType: hard 8538 10081 10082 + "eciesjs@npm:^0.3.15": 10083 + version: 0.3.19 10084 + resolution: "eciesjs@npm:0.3.19" 10085 + dependencies: 10086 + "@types/secp256k1": "npm:^4.0.6" 10087 + futoin-hkdf: "npm:^1.5.3" 10088 + secp256k1: "npm:^5.0.0" 10089 + checksum: 10/35cdf409c39500662a62e9b6775f7ad65cbb598eb2a19ebf5d78e7444b995fe533f2a0ce97f90bb8787c32f3d5a9e35d5e9725536b515d3dd336a52a68b3791d 10090 + languageName: node 10091 + linkType: hard 10092 + 8539 10093 "edit-json-file@npm:^1.7.0": 8540 10094 version: 1.8.0 8541 10095 resolution: "edit-json-file@npm:1.8.0" ··· 8581 10135 languageName: node 8582 10136 linkType: hard 8583 10137 10138 + "elliptic@npm:^6.5.4": 10139 + version: 6.5.6 10140 + resolution: "elliptic@npm:6.5.6" 10141 + dependencies: 10142 + bn.js: "npm:^4.11.9" 10143 + brorand: "npm:^1.1.0" 10144 + hash.js: "npm:^1.0.0" 10145 + hmac-drbg: "npm:^1.0.1" 10146 + inherits: "npm:^2.0.4" 10147 + minimalistic-assert: "npm:^1.0.1" 10148 + minimalistic-crypto-utils: "npm:^1.0.1" 10149 + checksum: 10/09377ec924fdb37775d63e5d7e5ebb2845842e6f08880b68265b1108863e968970c4a4e1c43df622078c8262417deec9a04aeb9d34e8d09a9693e19b5454e1df 10150 + languageName: node 10151 + linkType: hard 10152 + 8584 10153 "emoji-regex@npm:^10.3.0": 8585 10154 version: 10.3.0 8586 10155 resolution: "emoji-regex@npm:10.3.0" ··· 8602 10171 languageName: node 8603 10172 linkType: hard 8604 10173 10174 + "encode-utf8@npm:^1.0.3": 10175 + version: 1.0.3 10176 + resolution: "encode-utf8@npm:1.0.3" 10177 + checksum: 10/0204c37cda21bf19bb8f87f7ec6c89a23d43488c2ef1e5cfa40b64ee9568e63e15dc323fa7f50a491e2c6d33843a6b409f6de09afbf6cf371cb8da596cc64b44 10178 + languageName: node 10179 + linkType: hard 10180 + 8605 10181 "encodeurl@npm:~1.0.2": 8606 10182 version: 1.0.2 8607 10183 resolution: "encodeurl@npm:1.0.2" ··· 8618 10194 languageName: node 8619 10195 linkType: hard 8620 10196 8621 - "end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.1": 10197 + "end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.0, end-of-stream@npm:^1.4.1": 8622 10198 version: 1.4.4 8623 10199 resolution: "end-of-stream@npm:1.4.4" 8624 10200 dependencies: 8625 10201 once: "npm:^1.4.0" 8626 10202 checksum: 10/530a5a5a1e517e962854a31693dbb5c0b2fc40b46dad2a56a2deec656ca040631124f4795823acc68238147805f8b021abbe221f4afed5ef3c8e8efc2024908b 10203 + languageName: node 10204 + linkType: hard 10205 + 10206 + "engine.io-client@npm:~6.5.2": 10207 + version: 6.5.4 10208 + resolution: "engine.io-client@npm:6.5.4" 10209 + dependencies: 10210 + "@socket.io/component-emitter": "npm:~3.1.0" 10211 + debug: "npm:~4.3.1" 10212 + engine.io-parser: "npm:~5.2.1" 10213 + ws: "npm:~8.17.1" 10214 + xmlhttprequest-ssl: "npm:~2.0.0" 10215 + checksum: 10/a91b97cd80e6b048e24887ccac53b143d08ea91c76335870a4aee1427394ba01a7e78ed8d64e518a42fdb297b331ffa80e50fdd26dbc5a08364ea715bf367c59 10216 + languageName: node 10217 + linkType: hard 10218 + 10219 + "engine.io-parser@npm:~5.2.1": 10220 + version: 5.2.3 10221 + resolution: "engine.io-parser@npm:5.2.3" 10222 + checksum: 10/eb0023fff5766e7ae9d59e52d92df53fea06d472cfd7b52e5d2c36b4c1dbf78cab5fde1052bcb3d4bb85bdb5aee10ae85d8a1c6c04676dac0c6cdf16bcba6380 8627 10223 languageName: node 8628 10224 linkType: hard 8629 10225 ··· 8975 10571 languageName: node 8976 10572 linkType: hard 8977 10573 10574 + "eth-block-tracker@npm:^7.1.0": 10575 + version: 7.1.0 10576 + resolution: "eth-block-tracker@npm:7.1.0" 10577 + dependencies: 10578 + "@metamask/eth-json-rpc-provider": "npm:^1.0.0" 10579 + "@metamask/safe-event-emitter": "npm:^3.0.0" 10580 + "@metamask/utils": "npm:^5.0.1" 10581 + json-rpc-random-id: "npm:^1.0.1" 10582 + pify: "npm:^3.0.0" 10583 + checksum: 10/b001ecb126e949a9ff19950596d5180b2f1bc5504e3dec0c01b3417e8ad190f4a53dfc61be901b72ab6dd558d1d711b73eca560bc8a605d0348eef9f501defab 10584 + languageName: node 10585 + linkType: hard 10586 + 10587 + "eth-json-rpc-filters@npm:^6.0.0": 10588 + version: 6.0.1 10589 + resolution: "eth-json-rpc-filters@npm:6.0.1" 10590 + dependencies: 10591 + "@metamask/safe-event-emitter": "npm:^3.0.0" 10592 + async-mutex: "npm:^0.2.6" 10593 + eth-query: "npm:^2.1.2" 10594 + json-rpc-engine: "npm:^6.1.0" 10595 + pify: "npm:^5.0.0" 10596 + checksum: 10/d1fa8bb21da07c2f5d37c1e6053d499b272b4f49542077efc6b05eebe49affa9df7221c8c2439c4e33caa3f4ccb35240a6105abc83b83375dae03c0de53113a7 10597 + languageName: node 10598 + linkType: hard 10599 + 10600 + "eth-query@npm:^2.1.2": 10601 + version: 2.1.2 10602 + resolution: "eth-query@npm:2.1.2" 10603 + dependencies: 10604 + json-rpc-random-id: "npm:^1.0.0" 10605 + xtend: "npm:^4.0.1" 10606 + checksum: 10/af4f3575b8315f8156a83a24e850881053748aca97e4aee12dd6645ab56f0985c7000a5c45ccf315702f3e532f0c6464e03f4aba294c658dee89f5e5d1b86702 10607 + languageName: node 10608 + linkType: hard 10609 + 10610 + "eth-rpc-errors@npm:^4.0.2, eth-rpc-errors@npm:^4.0.3": 10611 + version: 4.0.3 10612 + resolution: "eth-rpc-errors@npm:4.0.3" 10613 + dependencies: 10614 + fast-safe-stringify: "npm:^2.0.6" 10615 + checksum: 10/47ce14170eabaee51ab1cc7e643bb3ef96ee6b15c6404806aedcd51750e00ae0b1a12c37785b180679b8d452b6dd44a0240bb018d01fa73efc85fcfa808b35a7 10616 + languageName: node 10617 + linkType: hard 10618 + 10619 + "ethereum-cryptography@npm:^2.0.0": 10620 + version: 2.2.1 10621 + resolution: "ethereum-cryptography@npm:2.2.1" 10622 + dependencies: 10623 + "@noble/curves": "npm:1.4.2" 10624 + "@noble/hashes": "npm:1.4.0" 10625 + "@scure/bip32": "npm:1.4.0" 10626 + "@scure/bip39": "npm:1.3.0" 10627 + checksum: 10/ab123bbfe843500ac2d645ce9edc4bc814962ffb598db6bf8bf01fbecac656e6c81ff4cf2472f1734844bbcbad2bf658d8b699cb7248d768e0f06ae13ecf43b8 10628 + languageName: node 10629 + linkType: hard 10630 + 8978 10631 "event-target-shim@npm:^5.0.0, event-target-shim@npm:^5.0.1": 8979 10632 version: 5.0.1 8980 10633 resolution: "event-target-shim@npm:5.0.1" ··· 8982 10635 languageName: node 8983 10636 linkType: hard 8984 10637 10638 + "eventemitter2@npm:^6.4.7": 10639 + version: 6.4.9 10640 + resolution: "eventemitter2@npm:6.4.9" 10641 + checksum: 10/b829b1c6b11e15926b635092b5ad62b4463d1c928859831dcae606e988cf41893059e3541f5a8209d21d2f15314422ddd4d84d20830b4bf44978608d15b06b08 10642 + languageName: node 10643 + linkType: hard 10644 + 10645 + "eventemitter3@npm:5.0.1, eventemitter3@npm:^5.0.1": 10646 + version: 5.0.1 10647 + resolution: "eventemitter3@npm:5.0.1" 10648 + checksum: 10/ac6423ec31124629c84c7077eed1e6987f6d66c31cf43c6fcbf6c87791d56317ce808d9ead483652436df171b526fc7220eccdc9f3225df334e81582c3cf7dd5 10649 + languageName: node 10650 + linkType: hard 10651 + 8985 10652 "eventemitter3@npm:^4.0.4": 8986 10653 version: 4.0.7 8987 10654 resolution: "eventemitter3@npm:4.0.7" ··· 8989 10656 languageName: node 8990 10657 linkType: hard 8991 10658 8992 - "eventemitter3@npm:^5.0.1": 8993 - version: 5.0.1 8994 - resolution: "eventemitter3@npm:5.0.1" 8995 - checksum: 10/ac6423ec31124629c84c7077eed1e6987f6d66c31cf43c6fcbf6c87791d56317ce808d9ead483652436df171b526fc7220eccdc9f3225df334e81582c3cf7dd5 10659 + "events@npm:3.3.0, events@npm:^3.3.0": 10660 + version: 3.3.0 10661 + resolution: "events@npm:3.3.0" 10662 + checksum: 10/a3d47e285e28d324d7180f1e493961a2bbb4cad6412090e4dec114f4db1f5b560c7696ee8e758f55e23913ede856e3689cd3aa9ae13c56b5d8314cd3b3ddd1be 8996 10663 languageName: node 8997 10664 linkType: hard 8998 10665 ··· 9052 10719 languageName: node 9053 10720 linkType: hard 9054 10721 9055 - "execa@npm:~8.0.1": 10722 + "execa@npm:^8.0.1, execa@npm:~8.0.1": 9056 10723 version: 8.0.1 9057 10724 resolution: "execa@npm:8.0.1" 9058 10725 dependencies: ··· 9376 11043 languageName: node 9377 11044 linkType: hard 9378 11045 11046 + "extension-port-stream@npm:^3.0.0": 11047 + version: 3.0.0 11048 + resolution: "extension-port-stream@npm:3.0.0" 11049 + dependencies: 11050 + readable-stream: "npm:^3.6.2 || ^4.4.2" 11051 + webextension-polyfill: "npm:>=0.10.0 <1.0" 11052 + checksum: 10/4f51d2258a96154c2d916a8a5425636a2b0817763e9277f7dc378d08b6f050c90d185dbde4313d27cf66ad99d4b3116479f9f699c40358c64cccfa524d2b55bf 11053 + languageName: node 11054 + linkType: hard 11055 + 9379 11056 "external-editor@npm:^3.0.3": 9380 11057 version: 3.1.0 9381 11058 resolution: "external-editor@npm:3.1.0" ··· 9421 11098 languageName: node 9422 11099 linkType: hard 9423 11100 11101 + "fast-redact@npm:^3.0.0": 11102 + version: 3.5.0 11103 + resolution: "fast-redact@npm:3.5.0" 11104 + checksum: 10/24b27e2023bd5a62f908d97a753b1adb8d89206b260f97727728e00b693197dea2fc2aa3711147a385d0ec6e713569fd533df37a4ef947e08cb65af3019c7ad5 11105 + languageName: node 11106 + linkType: hard 11107 + 11108 + "fast-safe-stringify@npm:^2.0.6": 11109 + version: 2.1.1 11110 + resolution: "fast-safe-stringify@npm:2.1.1" 11111 + checksum: 10/dc1f063c2c6ac9533aee14d406441f86783a8984b2ca09b19c2fe281f9ff59d315298bc7bc22fd1f83d26fe19ef2f20e2ddb68e96b15040292e555c5ced0c1e4 11112 + languageName: node 11113 + linkType: hard 11114 + 9424 11115 "fast-xml-parser@npm:^4.0.12, fast-xml-parser@npm:^4.2.4, fast-xml-parser@npm:^4.3.0": 9425 11116 version: 4.4.0 9426 11117 resolution: "fast-xml-parser@npm:4.4.0" ··· 9957 11648 languageName: node 9958 11649 linkType: hard 9959 11650 11651 + "futoin-hkdf@npm:^1.5.3": 11652 + version: 1.5.3 11653 + resolution: "futoin-hkdf@npm:1.5.3" 11654 + checksum: 10/aa64b93b4fdca77e6e9c7f045c539dd912f10077bc31d933e219eb5784e88e90a6d830b5d34431da840cc7477c0ed5f2d504dec49718b9f57941de5f23c20471 11655 + languageName: node 11656 + linkType: hard 11657 + 9960 11658 "gaxios@npm:^6.0.0, gaxios@npm:^6.0.2, gaxios@npm:^6.1.1": 9961 11659 version: 6.7.0 9962 11660 resolution: "gaxios@npm:6.7.0" ··· 10032 11730 bin: 10033 11731 get-pkg-repo: src/cli.js 10034 11732 checksum: 10/033225cf7cdf3f61885f45c492975f412268cf9f3ec68cc42df9af1bec54cf0b0c5ddb7391a6dc973361e7e10df9d432cca0050892ba8856bc50413e0741804f 11733 + languageName: node 11734 + linkType: hard 11735 + 11736 + "get-port-please@npm:^3.1.2": 11737 + version: 3.1.2 11738 + resolution: "get-port-please@npm:3.1.2" 11739 + checksum: 10/ec8b8da9f816edde114b76742ec29695730094904bb0e94309081e4adf3f797b483b9d648abcf5e0511c4e21a7bf68334672b9575f8b23bccf93bf97eb517f0e 10035 11740 languageName: node 10036 11741 linkType: hard 10037 11742 ··· 10369 12074 languageName: node 10370 12075 linkType: hard 10371 12076 12077 + "h3@npm:^1.10.2, h3@npm:^1.11.1": 12078 + version: 1.12.0 12079 + resolution: "h3@npm:1.12.0" 12080 + dependencies: 12081 + cookie-es: "npm:^1.1.0" 12082 + crossws: "npm:^0.2.4" 12083 + defu: "npm:^6.1.4" 12084 + destr: "npm:^2.0.3" 12085 + iron-webcrypto: "npm:^1.1.1" 12086 + ohash: "npm:^1.1.3" 12087 + radix3: "npm:^1.1.2" 12088 + ufo: "npm:^1.5.3" 12089 + uncrypto: "npm:^0.1.3" 12090 + unenv: "npm:^1.9.0" 12091 + checksum: 10/59c7a3818e863c84a32110cf4ee26ac6deb39b99527c483e56c4334b1cadb77ffca2895472b7af227a205757a5b27da43b73a057cb113b7769547062ace89cc7 12092 + languageName: node 12093 + linkType: hard 12094 + 10372 12095 "handlebars@npm:^4.7.7": 10373 12096 version: 4.7.8 10374 12097 resolution: "handlebars@npm:4.7.8" ··· 10454 12177 languageName: node 10455 12178 linkType: hard 10456 12179 12180 + "hash.js@npm:^1.0.0, hash.js@npm:^1.0.3": 12181 + version: 1.1.7 12182 + resolution: "hash.js@npm:1.1.7" 12183 + dependencies: 12184 + inherits: "npm:^2.0.3" 12185 + minimalistic-assert: "npm:^1.0.1" 12186 + checksum: 10/0c89ee4006606a40f92df5cc3c263342e7fea68110f3e9ef032bd2083650430505db01b6b7926953489517d4027535e4fdc7f970412893d3031c361d3ec8f4b3 12187 + languageName: node 12188 + linkType: hard 12189 + 10457 12190 "hasown@npm:^2.0.0, hasown@npm:^2.0.1, hasown@npm:^2.0.2": 10458 12191 version: 2.0.2 10459 12192 resolution: "hasown@npm:2.0.2" ··· 10504 12237 languageName: node 10505 12238 linkType: hard 10506 12239 12240 + "hey-listen@npm:^1.0.8": 12241 + version: 1.0.8 12242 + resolution: "hey-listen@npm:1.0.8" 12243 + checksum: 10/744b5f4c18c7cfb82b22bd22e1d300a9ac4eafe05a22e58fb87e48addfca8be00604d9aa006434ea02f9530990eb4b393ddb28659e2ab7f833ce873e32eb809c 12244 + languageName: node 12245 + linkType: hard 12246 + 12247 + "hmac-drbg@npm:^1.0.1": 12248 + version: 1.0.1 12249 + resolution: "hmac-drbg@npm:1.0.1" 12250 + dependencies: 12251 + hash.js: "npm:^1.0.3" 12252 + minimalistic-assert: "npm:^1.0.0" 12253 + minimalistic-crypto-utils: "npm:^1.0.1" 12254 + checksum: 10/0298a1445b8029a69b713d918ecaa84a1d9f614f5857e0c6e1ca517abfa1357216987b2ee08cc6cc73ba82a6c6ddf2ff11b9717a653530ef03be599d4699b836 12255 + languageName: node 12256 + linkType: hard 12257 + 10507 12258 "hosted-git-info@npm:^2.1.4": 10508 12259 version: 2.8.9 10509 12260 resolution: "hosted-git-info@npm:2.8.9" ··· 10593 12344 languageName: node 10594 12345 linkType: hard 10595 12346 12347 + "http-shutdown@npm:^1.2.2": 12348 + version: 1.2.2 12349 + resolution: "http-shutdown@npm:1.2.2" 12350 + checksum: 10/1c99b575b1a7ebd749950e7f59410348723638808336063321d89588b7f7b548d61c8e3566af0f1f4f961d941c758677d062d2289bc63356ead143da4d8f3daf 12351 + languageName: node 12352 + linkType: hard 12353 + 10596 12354 "https-proxy-agent@npm:^5.0.0, https-proxy-agent@npm:^5.0.1": 10597 12355 version: 5.0.1 10598 12356 resolution: "https-proxy-agent@npm:5.0.1" ··· 10643 12401 languageName: node 10644 12402 linkType: hard 10645 12403 12404 + "i18next-browser-languagedetector@npm:7.1.0": 12405 + version: 7.1.0 12406 + resolution: "i18next-browser-languagedetector@npm:7.1.0" 12407 + dependencies: 12408 + "@babel/runtime": "npm:^7.19.4" 12409 + checksum: 10/3b06c8a5df09092cffc0b6637b542bb572e8a25dcba97d0d8a5e5dd7539b90bf00000f3a279654693f4b5908c5fc4d1d4f3766dfb461dacab46be3d071266384 12410 + languageName: node 12411 + linkType: hard 12412 + 12413 + "i18next@npm:23.11.5": 12414 + version: 23.11.5 12415 + resolution: "i18next@npm:23.11.5" 12416 + dependencies: 12417 + "@babel/runtime": "npm:^7.23.2" 12418 + checksum: 10/3a8e0d5d2b9ac6c6fa8c2180452aaf816d60e1cc790da69d6be515feec85553f8af9fcc19414ade1a621f08236e84f38df4415a8234919fa97fa2e35624e86b6 12419 + languageName: node 12420 + linkType: hard 12421 + 10646 12422 "iconv-lite@npm:^0.4.24": 10647 12423 version: 0.4.24 10648 12424 resolution: "iconv-lite@npm:0.4.24" ··· 10661 12437 languageName: node 10662 12438 linkType: hard 10663 12439 12440 + "idb-keyval@npm:^6.2.1": 12441 + version: 6.2.1 12442 + resolution: "idb-keyval@npm:6.2.1" 12443 + checksum: 10/9a1416ff5e2ceff3832f5645518f438833a5ff6ee316fe3ec111d580db120425991d64d8098a847be7541bbbb7cc941984b4d0d62d541c39f7a0f415594837c2 12444 + languageName: node 12445 + linkType: hard 12446 + 10664 12447 "idb@npm:7.1.1": 10665 12448 version: 7.1.1 10666 12449 resolution: "idb@npm:7.1.1" ··· 10668 12451 languageName: node 10669 12452 linkType: hard 10670 12453 10671 - "ieee754@npm:^1.1.13": 12454 + "ieee754@npm:^1.1.13, ieee754@npm:^1.2.1": 10672 12455 version: 1.2.1 10673 12456 resolution: "ieee754@npm:1.2.1" 10674 12457 checksum: 10/d9f2557a59036f16c282aaeb107832dc957a93d73397d89bbad4eb1130560560eb695060145e8e6b3b498b15ab95510226649a0b8f52ae06583575419fe10fc4 ··· 10758 12541 languageName: node 10759 12542 linkType: hard 10760 12543 10761 - "inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": 12544 + "inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": 10762 12545 version: 2.0.4 10763 12546 resolution: "inherits@npm:2.0.4" 10764 12547 checksum: 10/cd45e923bee15186c07fa4c89db0aace24824c482fb887b528304694b2aa6ff8a898da8657046a5dcf3e46cd6db6c61629551f9215f208d7c3f157cf9b290521 ··· 10881 12664 languageName: node 10882 12665 linkType: hard 10883 12666 12667 + "iron-webcrypto@npm:^1.1.1": 12668 + version: 1.2.1 12669 + resolution: "iron-webcrypto@npm:1.2.1" 12670 + checksum: 10/c1f52ccfe2780efa5438c134538ee4b26c96a87d22f351d896781219efbce25b4fe716d1cb7f248e02da96881760541135acbcc7c0622ffedf71cb0e227bebf9 12671 + languageName: node 12672 + linkType: hard 12673 + 10884 12674 "is-arguments@npm:^1.0.4": 10885 12675 version: 1.1.1 10886 12676 resolution: "is-arguments@npm:1.1.1" ··· 11011 12801 languageName: node 11012 12802 linkType: hard 11013 12803 12804 + "is-docker@npm:^3.0.0": 12805 + version: 3.0.0 12806 + resolution: "is-docker@npm:3.0.0" 12807 + bin: 12808 + is-docker: cli.js 12809 + checksum: 10/b698118f04feb7eaf3338922bd79cba064ea54a1c3db6ec8c0c8d8ee7613e7e5854d802d3ef646812a8a3ace81182a085dfa0a71cc68b06f3fa794b9783b3c90 12810 + languageName: node 12811 + linkType: hard 12812 + 11014 12813 "is-extendable@npm:^0.1.1": 11015 12814 version: 0.1.1 11016 12815 resolution: "is-extendable@npm:0.1.1" ··· 11086 12885 dependencies: 11087 12886 is-extglob: "npm:^2.1.1" 11088 12887 checksum: 10/3ed74f2b0cdf4f401f38edb0442ddfde3092d79d7d35c9919c86641efdbcbb32e45aa3c0f70ce5eecc946896cd5a0f26e4188b9f2b881876f7cb6c505b82da11 12888 + languageName: node 12889 + linkType: hard 12890 + 12891 + "is-inside-container@npm:^1.0.0": 12892 + version: 1.0.0 12893 + resolution: "is-inside-container@npm:1.0.0" 12894 + dependencies: 12895 + is-docker: "npm:^3.0.0" 12896 + bin: 12897 + is-inside-container: cli.js 12898 + checksum: 10/c50b75a2ab66ab3e8b92b3bc534e1ea72ca25766832c0623ac22d134116a98bcf012197d1caabe1d1c4bd5f84363d4aa5c36bb4b585fbcaf57be172cd10a1a03 11089 12899 languageName: node 11090 12900 linkType: hard 11091 12901 ··· 11329 13139 languageName: node 11330 13140 linkType: hard 11331 13141 13142 + "is-wsl@npm:^3.1.0": 13143 + version: 3.1.0 13144 + resolution: "is-wsl@npm:3.1.0" 13145 + dependencies: 13146 + is-inside-container: "npm:^1.0.0" 13147 + checksum: 10/f9734c81f2f9cf9877c5db8356bfe1ff61680f1f4c1011e91278a9c0564b395ae796addb4bf33956871041476ec82c3e5260ed57b22ac91794d4ae70a1d2f0a9 13148 + languageName: node 13149 + linkType: hard 13150 + 13151 + "is64bit@npm:^2.0.0": 13152 + version: 2.0.0 13153 + resolution: "is64bit@npm:2.0.0" 13154 + dependencies: 13155 + system-architecture: "npm:^0.1.0" 13156 + checksum: 10/94dafd5f29bfb96c542e89ef8c33e811159ca7d07a2890ab83026fa87706612af4101308d9392e9ee68e046e8604a6b59a8f41091f8556f6235efbcfd9c5574c 13157 + languageName: node 13158 + linkType: hard 13159 + 11332 13160 "isarray@npm:^2.0.5": 11333 13161 version: 2.0.5 11334 13162 resolution: "isarray@npm:2.0.5" ··· 11364 13192 languageName: node 11365 13193 linkType: hard 11366 13194 13195 + "isomorphic-unfetch@npm:3.1.0": 13196 + version: 3.1.0 13197 + resolution: "isomorphic-unfetch@npm:3.1.0" 13198 + dependencies: 13199 + node-fetch: "npm:^2.6.1" 13200 + unfetch: "npm:^4.2.0" 13201 + checksum: 10/4e760d9a3f94b42c59fe5c6b53202469cecd864875dcac927668b1f43eb57698422a0086fadde47f7815752c4f4e30ecf1ce9a0eb09c44a871a2484dbc580b39 13202 + languageName: node 13203 + linkType: hard 13204 + 13205 + "isows@npm:1.0.4": 13206 + version: 1.0.4 13207 + resolution: "isows@npm:1.0.4" 13208 + peerDependencies: 13209 + ws: "*" 13210 + checksum: 10/a3ee62e3d6216abb3adeeb2a551fe2e7835eac87b05a6ecc3e7739259bf5f8e83290501f49e26137390c8093f207fc3378d4a7653aab76ad7bbab4b2dba9c5b9 13211 + languageName: node 13212 + linkType: hard 13213 + 11367 13214 "iterate-object@npm:^1.3.4": 11368 13215 version: 1.3.4 11369 13216 resolution: "iterate-object@npm:1.3.4" ··· 11506 13353 languageName: node 11507 13354 linkType: hard 11508 13355 13356 + "jiti@npm:^1.21.0": 13357 + version: 1.21.6 13358 + resolution: "jiti@npm:1.21.6" 13359 + bin: 13360 + jiti: bin/jiti.js 13361 + checksum: 10/289b124cea411c130a14ffe88e3d38376ab44b6695616dfa0a1f32176a8f20ec90cdd6d2b9d81450fc6467cfa4d865f04f49b98452bff0f812bc400fd0ae78d6 13362 + languageName: node 13363 + linkType: hard 13364 + 11509 13365 "joi@npm:^17.2.1": 11510 13366 version: 17.13.3 11511 13367 resolution: "joi@npm:17.13.3" ··· 11663 13519 languageName: node 11664 13520 linkType: hard 11665 13521 13522 + "json-rpc-engine@npm:^6.1.0": 13523 + version: 6.1.0 13524 + resolution: "json-rpc-engine@npm:6.1.0" 13525 + dependencies: 13526 + "@metamask/safe-event-emitter": "npm:^2.0.0" 13527 + eth-rpc-errors: "npm:^4.0.2" 13528 + checksum: 10/00d5b5228e90f126dd52176598db6e5611d295d3a3f7be21254c30c1b6555811260ef2ec2df035cd8e583e4b12096259da721e29f4ea2affb615f7dfc960a6a6 13529 + languageName: node 13530 + linkType: hard 13531 + 13532 + "json-rpc-random-id@npm:^1.0.0, json-rpc-random-id@npm:^1.0.1": 13533 + version: 1.0.1 13534 + resolution: "json-rpc-random-id@npm:1.0.1" 13535 + checksum: 10/fcd2e884193a129ace4002bd65a86e9cdb206733b4693baea77bd8b372cf8de3043fbea27716a2c9a716581a908ca8d978d9dfec4847eb2cf77edb4cf4b2252c 13536 + languageName: node 13537 + linkType: hard 13538 + 11666 13539 "json-schema-deref-sync@npm:^0.13.0": 11667 13540 version: 0.13.0 11668 13541 resolution: "json-schema-deref-sync@npm:0.13.0" ··· 11833 13706 jwa: "npm:^2.0.0" 11834 13707 safe-buffer: "npm:^5.0.1" 11835 13708 checksum: 10/1d15f4cdea376c6bd6a81002bd2cb0bf3d51d83da8f0727947b5ba3e10cf366721b8c0d099bf8c1eb99eb036e2c55e5fd5efd378ccff75a2b4e0bd10002348b9 13709 + languageName: node 13710 + linkType: hard 13711 + 13712 + "keccak@npm:^3.0.3": 13713 + version: 3.0.4 13714 + resolution: "keccak@npm:3.0.4" 13715 + dependencies: 13716 + node-addon-api: "npm:^2.0.0" 13717 + node-gyp: "npm:latest" 13718 + node-gyp-build: "npm:^4.2.0" 13719 + readable-stream: "npm:^3.6.0" 13720 + checksum: 10/45478bb0a57e44d0108646499b8360914b0fbc8b0e088f1076659cb34faaa9eb829c40f6dd9dadb3460bb86cc33153c41fed37fe5ce09465a60e71e78c23fa55 13721 + languageName: node 13722 + linkType: hard 13723 + 13724 + "keyvaluestorage-interface@npm:^1.0.0": 13725 + version: 1.0.0 13726 + resolution: "keyvaluestorage-interface@npm:1.0.0" 13727 + checksum: 10/e652448bc915f9c21b9916678ed58f5314c831f0a284d190a340c0370296c71918e0cdc1156a17b12d1993941b302f0881e23fb9c395079e2065a7d2f33d0199 11836 13728 languageName: node 11837 13729 linkType: hard 11838 13730 ··· 12237 14129 languageName: node 12238 14130 linkType: hard 12239 14131 14132 + "listhen@npm:^1.7.2": 14133 + version: 1.7.2 14134 + resolution: "listhen@npm:1.7.2" 14135 + dependencies: 14136 + "@parcel/watcher": "npm:^2.4.1" 14137 + "@parcel/watcher-wasm": "npm:^2.4.1" 14138 + citty: "npm:^0.1.6" 14139 + clipboardy: "npm:^4.0.0" 14140 + consola: "npm:^3.2.3" 14141 + crossws: "npm:^0.2.0" 14142 + defu: "npm:^6.1.4" 14143 + get-port-please: "npm:^3.1.2" 14144 + h3: "npm:^1.10.2" 14145 + http-shutdown: "npm:^1.2.2" 14146 + jiti: "npm:^1.21.0" 14147 + mlly: "npm:^1.6.1" 14148 + node-forge: "npm:^1.3.1" 14149 + pathe: "npm:^1.1.2" 14150 + std-env: "npm:^3.7.0" 14151 + ufo: "npm:^1.4.0" 14152 + untun: "npm:^0.1.3" 14153 + uqr: "npm:^0.1.2" 14154 + bin: 14155 + listen: bin/listhen.mjs 14156 + listhen: bin/listhen.mjs 14157 + checksum: 10/42634382736042709a58e3c10fad3b99c9750252e5ba14314092bc9d47be27cd9e5ce9449dc631f479d68299db6c4c90afb93b833b3d8a94a8dc99c19c6f888b 14158 + languageName: node 14159 + linkType: hard 14160 + 12240 14161 "listr2@npm:~8.2.1": 12241 14162 version: 8.2.1 12242 14163 resolution: "listr2@npm:8.2.1" ··· 12251 14172 languageName: node 12252 14173 linkType: hard 12253 14174 14175 + "lit-element@npm:^3.3.0": 14176 + version: 3.3.3 14177 + resolution: "lit-element@npm:3.3.3" 14178 + dependencies: 14179 + "@lit-labs/ssr-dom-shim": "npm:^1.1.0" 14180 + "@lit/reactive-element": "npm:^1.3.0" 14181 + lit-html: "npm:^2.8.0" 14182 + checksum: 10/7968e7f3ce3994911f27c4c54acc956488c91d8af81677cce3d6f0c2eaea45cceb79b064077159392238d6e43d46015a950269db9914fea8913566aacb17eaa1 14183 + languageName: node 14184 + linkType: hard 14185 + 14186 + "lit-html@npm:^2.8.0": 14187 + version: 2.8.0 14188 + resolution: "lit-html@npm:2.8.0" 14189 + dependencies: 14190 + "@types/trusted-types": "npm:^2.0.2" 14191 + checksum: 10/3503e55e2927c2ff94773cf041fc4128f92291869c9192f36eacb7f95132d11f6b329e5b910ab60a4456349cd2e6d23b33d83291b24d557bcd6b904d6314ac1a 14192 + languageName: node 14193 + linkType: hard 14194 + 14195 + "lit@npm:2.8.0": 14196 + version: 2.8.0 14197 + resolution: "lit@npm:2.8.0" 14198 + dependencies: 14199 + "@lit/reactive-element": "npm:^1.6.0" 14200 + lit-element: "npm:^3.3.0" 14201 + lit-html: "npm:^2.8.0" 14202 + checksum: 10/aa64c1136b855ba328d41157dba67657d480345aeec3c1dd829abeb67719d759c9ff2ade9903f9cfb4f9d012b16087034aaa5b33f1182e70c615765562e3251b 14203 + languageName: node 14204 + linkType: hard 14205 + 12254 14206 "load-json-file@npm:6.2.0": 12255 14207 version: 6.2.0 12256 14208 resolution: "load-json-file@npm:6.2.0" ··· 12345 14297 version: 3.0.3 12346 14298 resolution: "lodash.isboolean@npm:3.0.3" 12347 14299 checksum: 10/b70068b4a8b8837912b54052557b21fc4774174e3512ed3c5b94621e5aff5eb6c68089d0a386b7e801d679cd105d2e35417978a5e99071750aa2ed90bffd0250 14300 + languageName: node 14301 + linkType: hard 14302 + 14303 + "lodash.isequal@npm:4.5.0": 14304 + version: 4.5.0 14305 + resolution: "lodash.isequal@npm:4.5.0" 14306 + checksum: 10/82fc58a83a1555f8df34ca9a2cd300995ff94018ac12cc47c349655f0ae1d4d92ba346db4c19bbfc90510764e0c00ddcc985a358bdcd4b3b965abf8f2a48a214 12348 14307 languageName: node 12349 14308 linkType: hard 12350 14309 ··· 12670 14629 languageName: node 12671 14630 linkType: hard 12672 14631 14632 + "media-query-parser@npm:^2.0.2": 14633 + version: 2.0.2 14634 + resolution: "media-query-parser@npm:2.0.2" 14635 + dependencies: 14636 + "@babel/runtime": "npm:^7.12.5" 14637 + checksum: 10/9dff3ed135149944717a8687567f4fda1d39d28637f265c6ce7efe5ed55cd88ed49136c912ee0c7f3a6e5debc50b1ff969db609d862318f1af97f48752b08b0b 14638 + languageName: node 14639 + linkType: hard 14640 + 12673 14641 "memoize-one@npm:^5.0.0": 12674 14642 version: 5.2.1 12675 14643 resolution: "memoize-one@npm:5.2.1" ··· 12942 14910 languageName: node 12943 14911 linkType: hard 12944 14912 12945 - "micromatch@npm:^4.0.2, micromatch@npm:^4.0.4, micromatch@npm:~4.0.7": 14913 + "micro-ftch@npm:^0.3.1": 14914 + version: 0.3.1 14915 + resolution: "micro-ftch@npm:0.3.1" 14916 + checksum: 10/a7ab07d25e28ec4ae492ce4542ea9b06eee85538742b3b1263b247366ee8872f2c5ce9c8651138b2f1d22c8212f691a7b8b5384fe86ead5aff1852e211f1c035 14917 + languageName: node 14918 + linkType: hard 14919 + 14920 + "micromatch@npm:^4.0.2, micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:~4.0.7": 12946 14921 version: 4.0.7 12947 14922 resolution: "micromatch@npm:4.0.7" 12948 14923 dependencies: ··· 13020 14995 version: 1.0.1 13021 14996 resolution: "min-indent@npm:1.0.1" 13022 14997 checksum: 10/bfc6dd03c5eaf623a4963ebd94d087f6f4bbbfd8c41329a7f09706b0cb66969c4ddd336abeb587bc44bc6f08e13bf90f0b374f9d71f9f01e04adc2cd6f083ef1 14998 + languageName: node 14999 + linkType: hard 15000 + 15001 + "minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": 15002 + version: 1.0.1 15003 + resolution: "minimalistic-assert@npm:1.0.1" 15004 + checksum: 10/cc7974a9268fbf130fb055aff76700d7e2d8be5f761fb5c60318d0ed010d839ab3661a533ad29a5d37653133385204c503bfac995aaa4236f4e847461ea32ba7 15005 + languageName: node 15006 + linkType: hard 15007 + 15008 + "minimalistic-crypto-utils@npm:^1.0.1": 15009 + version: 1.0.1 15010 + resolution: "minimalistic-crypto-utils@npm:1.0.1" 15011 + checksum: 10/6e8a0422b30039406efd4c440829ea8f988845db02a3299f372fceba56ffa94994a9c0f2fd70c17f9969eedfbd72f34b5070ead9656a34d3f71c0bd72583a0ed 13023 15012 languageName: node 13024 15013 linkType: hard 13025 15014 ··· 13186 15175 languageName: node 13187 15176 linkType: hard 13188 15177 15178 + "mipd@npm:0.0.7": 15179 + version: 0.0.7 15180 + resolution: "mipd@npm:0.0.7" 15181 + peerDependencies: 15182 + typescript: ">=5.0.4" 15183 + peerDependenciesMeta: 15184 + typescript: 15185 + optional: true 15186 + checksum: 10/c14dffef0ef7a3e71469aee553f5735f4a6a9f9a2b47ca02798040f2e006261c2e7e8b26ee0dc56a815c04d5612eb4be1eed474e7bb4e496eb0f5ada2fe1d2e7 15187 + languageName: node 15188 + linkType: hard 15189 + 13189 15190 "mixin-object@npm:^2.0.1": 13190 15191 version: 2.0.1 13191 15192 resolution: "mixin-object@npm:2.0.1" ··· 13216 15217 languageName: node 13217 15218 linkType: hard 13218 15219 15220 + "mlly@npm:^1.6.1, mlly@npm:^1.7.1": 15221 + version: 1.7.1 15222 + resolution: "mlly@npm:1.7.1" 15223 + dependencies: 15224 + acorn: "npm:^8.11.3" 15225 + pathe: "npm:^1.1.2" 15226 + pkg-types: "npm:^1.1.1" 15227 + ufo: "npm:^1.5.3" 15228 + checksum: 10/c1ef3989e95fb6c6c27a238330897b01f46507020501f45a681f2cae453f982e38dcb0e45aa65f672ea7280945d4a729d266f17a8acb187956f312b0cafddf61 15229 + languageName: node 15230 + linkType: hard 15231 + 15232 + "modern-ahocorasick@npm:^1.0.0": 15233 + version: 1.0.1 15234 + resolution: "modern-ahocorasick@npm:1.0.1" 15235 + checksum: 10/ec83479f406511f37a966d66ce1c2b1701bb4a2cc2aabbbc257001178c9fbc48ce748c88eb10dfe72ba8b7f991a0bc7f1fa14683f444685edd1a9eeb32ecbc1e 15236 + languageName: node 15237 + linkType: hard 15238 + 13219 15239 "modify-values@npm:^1.0.1": 13220 15240 version: 1.0.1 13221 15241 resolution: "modify-values@npm:1.0.1" ··· 13223 15243 languageName: node 13224 15244 linkType: hard 13225 15245 15246 + "motion@npm:10.16.2": 15247 + version: 10.16.2 15248 + resolution: "motion@npm:10.16.2" 15249 + dependencies: 15250 + "@motionone/animation": "npm:^10.15.1" 15251 + "@motionone/dom": "npm:^10.16.2" 15252 + "@motionone/svelte": "npm:^10.16.2" 15253 + "@motionone/types": "npm:^10.15.1" 15254 + "@motionone/utils": "npm:^10.15.1" 15255 + "@motionone/vue": "npm:^10.16.2" 15256 + checksum: 10/2470f12b97371eb876337b355ad158c545622b2cc7c83b0ba540d2c02afedb49990e78898e520b8f74cccc9ecf11d366ae005a35c60e92178fadd7434860a966 15257 + languageName: node 15258 + linkType: hard 15259 + 15260 + "mri@npm:^1.2.0": 15261 + version: 1.2.0 15262 + resolution: "mri@npm:1.2.0" 15263 + checksum: 10/6775a1d2228bb9d191ead4efc220bd6be64f943ad3afd4dcb3b3ac8fc7b87034443f666e38805df38e8d047b29f910c3cc7810da0109af83e42c82c73bd3f6bc 15264 + languageName: node 15265 + linkType: hard 15266 + 13226 15267 "mrmime@npm:^1.0.0": 13227 15268 version: 1.0.1 13228 15269 resolution: "mrmime@npm:1.0.1" ··· 13251 15292 languageName: node 13252 15293 linkType: hard 13253 15294 15295 + "multiformats@npm:^9.4.2": 15296 + version: 9.9.0 15297 + resolution: "multiformats@npm:9.9.0" 15298 + checksum: 10/ad55c7d480d22f4258a68fd88aa2aab744fe0cb1e68d732fc886f67d858b37e3aa6c2cec12b2960ead7730d43be690931485238569952d8a3d7f90fdc726c652 15299 + languageName: node 15300 + linkType: hard 15301 + 13254 15302 "multimatch@npm:5.0.0": 13255 15303 version: 5.0.0 13256 15304 resolution: "multimatch@npm:5.0.0" ··· 13309 15357 languageName: node 13310 15358 linkType: hard 13311 15359 15360 + "napi-wasm@npm:^1.1.0": 15361 + version: 1.1.0 15362 + resolution: "napi-wasm@npm:1.1.0" 15363 + checksum: 10/767781f07ccaca846a6036a2df7686c9decc1b4fd6ad30ba782c94829476ec5610acc41e4caf7df94ebf0bed4abd4d34539979d0d85b025127c8a41be6259375 15364 + languageName: node 15365 + linkType: hard 15366 + 13312 15367 "ncp@npm:~2.0.0": 13313 15368 version: 2.0.0 13314 15369 resolution: "ncp@npm:2.0.0" ··· 13360 15415 languageName: node 13361 15416 linkType: hard 13362 15417 15418 + "node-addon-api@npm:^2.0.0": 15419 + version: 2.0.2 15420 + resolution: "node-addon-api@npm:2.0.2" 15421 + dependencies: 15422 + node-gyp: "npm:latest" 15423 + checksum: 10/e4ce4daac5b2fefa6b94491b86979a9c12d9cceba571d2c6df1eb5859f9da68e5dc198f128798e1785a88aafee6e11f4992dcccd4bf86bec90973927d158bd60 15424 + languageName: node 15425 + linkType: hard 15426 + 15427 + "node-addon-api@npm:^5.0.0": 15428 + version: 5.1.0 15429 + resolution: "node-addon-api@npm:5.1.0" 15430 + dependencies: 15431 + node-gyp: "npm:latest" 15432 + checksum: 10/595f59ffb4630564f587c502119cbd980d302e482781021f3b479f5fc7e41cf8f2f7280fdc2795f32d148e4f3259bd15043c52d4a3442796aa6f1ae97b959636 15433 + languageName: node 15434 + linkType: hard 15435 + 15436 + "node-addon-api@npm:^7.0.0": 15437 + version: 7.1.1 15438 + resolution: "node-addon-api@npm:7.1.1" 15439 + dependencies: 15440 + node-gyp: "npm:latest" 15441 + checksum: 10/ee1e1ed6284a2f8cd1d59ac6175ecbabf8978dcf570345e9a8095a9d0a2b9ced591074ae77f9009287b00c402352b38aa9322a34f2199cdc9f567b842a636b94 15442 + languageName: node 15443 + linkType: hard 15444 + 13363 15445 "node-dir@npm:^0.1.17": 13364 15446 version: 0.1.17 13365 15447 resolution: "node-dir@npm:0.1.17" 13366 15448 dependencies: 13367 15449 minimatch: "npm:^3.0.2" 13368 15450 checksum: 10/281fdea12d9c080a7250e5b5afefa3ab39426d40753ec8126a2d1e67f189b8824723abfed74f5d8549c5d78352d8c489fe08d0b067d7684c87c07283d38374a5 15451 + languageName: node 15452 + linkType: hard 15453 + 15454 + "node-fetch-native@npm:^1.6.2, node-fetch-native@npm:^1.6.3, node-fetch-native@npm:^1.6.4": 15455 + version: 1.6.4 15456 + resolution: "node-fetch-native@npm:1.6.4" 15457 + checksum: 10/39c4c6d0c2a4bed1444943e1647ad0d79eb6638cf159bc37dffeafd22cffcf6a998e006aa1f3dd1d9d2258db7d78dee96b44bee4ba0bbaf0440ed348794f2543 13369 15458 languageName: node 13370 15459 linkType: hard 13371 15460 ··· 13401 15490 version: 1.3.1 13402 15491 resolution: "node-forge@npm:1.3.1" 13403 15492 checksum: 10/05bab6868633bf9ad4c3b1dd50ec501c22ffd69f556cdf169a00998ca1d03e8107a6032ba013852f202035372021b845603aeccd7dfcb58cdb7430013b3daa8d 15493 + languageName: node 15494 + linkType: hard 15495 + 15496 + "node-gyp-build@npm:^4.2.0, node-gyp-build@npm:^4.3.0": 15497 + version: 4.8.1 15498 + resolution: "node-gyp-build@npm:4.8.1" 15499 + bin: 15500 + node-gyp-build: bin.js 15501 + node-gyp-build-optional: optional.js 15502 + node-gyp-build-test: build-test.js 15503 + checksum: 10/b9297770f96a92e5f2b854f3fd5e4bd418df81d7785a81ab60cec5cf2e5e72dc2c3319808978adc572cfa3885e6b12338cb5f4034bed2cab35f0d76a4b75ccdf 13404 15504 languageName: node 13405 15505 linkType: hard 13406 15506 ··· 13746 15846 languageName: node 13747 15847 linkType: hard 13748 15848 15849 + "obj-multiplex@npm:^1.0.0": 15850 + version: 1.0.0 15851 + resolution: "obj-multiplex@npm:1.0.0" 15852 + dependencies: 15853 + end-of-stream: "npm:^1.4.0" 15854 + once: "npm:^1.4.0" 15855 + readable-stream: "npm:^2.3.3" 15856 + checksum: 10/6bdcb7d48a1cd4458a7ff0be0b3c1dc58e8e9e6504f937c10b1eac096a3d459b85d7ba32bdd9a45382bb238e245eb42ebcd91430c72f04b0a57c97f846f2d06f 15857 + languageName: node 15858 + linkType: hard 15859 + 13749 15860 "object-assign@npm:^4.0.1, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": 13750 15861 version: 4.1.1 13751 15862 resolution: "object-assign@npm:4.1.1" ··· 13796 15907 languageName: node 13797 15908 linkType: hard 13798 15909 15910 + "ofetch@npm:^1.3.3": 15911 + version: 1.3.4 15912 + resolution: "ofetch@npm:1.3.4" 15913 + dependencies: 15914 + destr: "npm:^2.0.3" 15915 + node-fetch-native: "npm:^1.6.3" 15916 + ufo: "npm:^1.5.3" 15917 + checksum: 10/41630a6d8adeddb03fc9a9ae435d7da58a364e84df254640a3965ae5246fd627ef752ef46bc083996c2bfafa56837f1e8c6b69f07a97b5da4fa98f2c98119c0f 15918 + languageName: node 15919 + linkType: hard 15920 + 15921 + "ohash@npm:^1.1.3": 15922 + version: 1.1.3 15923 + resolution: "ohash@npm:1.1.3" 15924 + checksum: 10/80a3528285f61588600c8c4f091a67f55fbc141f4eec4b3c30182468053042eef5a9684780e963f98a71ec068f3de56d42920c6417bf8f79ab14aeb75ac0bb39 15925 + languageName: node 15926 + linkType: hard 15927 + 15928 + "on-exit-leak-free@npm:^0.2.0": 15929 + version: 0.2.0 15930 + resolution: "on-exit-leak-free@npm:0.2.0" 15931 + checksum: 10/36a3a1baea964dc01088884e9d87824cc1a3304ae702e7c688bdb5deec61fbb79325977dd6cba5988f60ad40fedc6ef31ec705adf65b4b042bc0d2686186c0dd 15932 + languageName: node 15933 + linkType: hard 15934 + 13799 15935 "on-finished@npm:2.4.1": 13800 15936 version: 2.4.1 13801 15937 resolution: "on-finished@npm:2.4.1" ··· 13955 16091 os-homedir: "npm:^1.0.0" 13956 16092 os-tmpdir: "npm:^1.0.0" 13957 16093 checksum: 10/779d261920f2a13e5e18cf02446484f12747d3f2ff82280912f52b213162d43d312647a40c332373cbccd5e3fb8126915d3bfea8dde4827f70f82da76e52d359 16094 + languageName: node 16095 + linkType: hard 16096 + 16097 + "outdent@npm:^0.8.0": 16098 + version: 0.8.0 16099 + resolution: "outdent@npm:0.8.0" 16100 + checksum: 10/a556c5c308705ad4e3441be435f2b2cf014cb5f9753a24cbd080eadc473b988c77d0d529a6a9a57c3931fb4178e5a81d668cc4bc49892b668191a5d0ba3df76e 13958 16101 languageName: node 13959 16102 linkType: hard 13960 16103 ··· 14295 16438 languageName: node 14296 16439 linkType: hard 14297 16440 16441 + "pathe@npm:^1.1.1, pathe@npm:^1.1.2": 16442 + version: 1.1.2 16443 + resolution: "pathe@npm:1.1.2" 16444 + checksum: 10/f201d796351bf7433d147b92c20eb154a4e0ea83512017bf4ec4e492a5d6e738fb45798be4259a61aa81270179fce11026f6ff0d3fa04173041de044defe9d80 16445 + languageName: node 16446 + linkType: hard 16447 + 14298 16448 "performant-array-to-tree@npm:^1.11.0": 14299 16449 version: 1.11.0 14300 16450 resolution: "performant-array-to-tree@npm:1.11.0" ··· 14332 16482 languageName: node 14333 16483 linkType: hard 14334 16484 14335 - "pify@npm:5.0.0": 16485 + "pify@npm:5.0.0, pify@npm:^5.0.0": 14336 16486 version: 5.0.0 14337 16487 resolution: "pify@npm:5.0.0" 14338 16488 checksum: 10/443e3e198ad6bfa8c0c533764cf75c9d5bc976387a163792fb553ffe6ce923887cf14eebf5aea9b7caa8eab930da8c33612990ae85bd8c2bc18bedb9eae94ecb ··· 14360 16510 languageName: node 14361 16511 linkType: hard 14362 16512 16513 + "pino-abstract-transport@npm:v0.5.0": 16514 + version: 0.5.0 16515 + resolution: "pino-abstract-transport@npm:0.5.0" 16516 + dependencies: 16517 + duplexify: "npm:^4.1.2" 16518 + split2: "npm:^4.0.0" 16519 + checksum: 10/d304a104e5cb0c3fef62ea544a4a39bf2472a602cdd7ddb136b0671b9c324ad93fa7888825c4cf33e624802436e897081ba92440f40518b9f2dbdbc0c889e409 16520 + languageName: node 16521 + linkType: hard 16522 + 16523 + "pino-std-serializers@npm:^4.0.0": 16524 + version: 4.0.0 16525 + resolution: "pino-std-serializers@npm:4.0.0" 16526 + checksum: 10/cec586f9634ef0e6582f62bc8fc5ca5b6e5e11ab88fe3950c66fb0fd5d6690f66bc39cd3f27216b925d2963ad5c3bba415718819ac20ebe0390c7d056cbfea1b 16527 + languageName: node 16528 + linkType: hard 16529 + 16530 + "pino@npm:7.11.0": 16531 + version: 7.11.0 16532 + resolution: "pino@npm:7.11.0" 16533 + dependencies: 16534 + atomic-sleep: "npm:^1.0.0" 16535 + fast-redact: "npm:^3.0.0" 16536 + on-exit-leak-free: "npm:^0.2.0" 16537 + pino-abstract-transport: "npm:v0.5.0" 16538 + pino-std-serializers: "npm:^4.0.0" 16539 + process-warning: "npm:^1.0.0" 16540 + quick-format-unescaped: "npm:^4.0.3" 16541 + real-require: "npm:^0.1.0" 16542 + safe-stable-stringify: "npm:^2.1.0" 16543 + sonic-boom: "npm:^2.2.1" 16544 + thread-stream: "npm:^0.15.1" 16545 + bin: 16546 + pino: bin.js 16547 + checksum: 10/1c7b4b52fea76e0bc5d8b1190a0fee24279cb16d76fdb5833b32b64256fd8a94d641574b850faba5be72514f04045206b6d902a9a3f5ceae2a4296687088e073 16548 + languageName: node 16549 + linkType: hard 16550 + 14363 16551 "pirates@npm:^4.0.1, pirates@npm:^4.0.6": 14364 16552 version: 4.0.6 14365 16553 resolution: "pirates@npm:4.0.6" ··· 14385 16573 languageName: node 14386 16574 linkType: hard 14387 16575 16576 + "pkg-types@npm:^1.1.1": 16577 + version: 1.1.3 16578 + resolution: "pkg-types@npm:1.1.3" 16579 + dependencies: 16580 + confbox: "npm:^0.1.7" 16581 + mlly: "npm:^1.7.1" 16582 + pathe: "npm:^1.1.2" 16583 + checksum: 10/06c03ca679ea8e3a1ea7cb74e92af1a486a6081401aac35f6aa51fb6f0855cd86bbfc713f9bfdaaa730815b5ae147b4d6a838710b550c1c4b3f54a6653ff04a3 16584 + languageName: node 16585 + linkType: hard 16586 + 14388 16587 "plist@npm:^3.0.5": 14389 16588 version: 3.1.0 14390 16589 resolution: "plist@npm:3.1.0" ··· 14403 16602 languageName: node 14404 16603 linkType: hard 14405 16604 16605 + "pngjs@npm:^5.0.0": 16606 + version: 5.0.0 16607 + resolution: "pngjs@npm:5.0.0" 16608 + checksum: 10/345781644740779752505af2fea3e9043f6c7cc349b18e1fb8842796360d1624791f0c24d33c0f27b05658373f90ffaa177a849e932e5fea1f540cef3975f3c9 16609 + languageName: node 16610 + linkType: hard 16611 + 16612 + "pony-cause@npm:^2.1.10": 16613 + version: 2.1.11 16614 + resolution: "pony-cause@npm:2.1.11" 16615 + checksum: 10/ed7d0bb6e3e69f753080bf736b71f40e6ae4c13ec0c8c473ff73345345c088819966fdd68a62ad7482d464bf41176cf9421f5f63715d1a4532005eedc099db55 16616 + languageName: node 16617 + linkType: hard 16618 + 14406 16619 "possible-typed-array-names@npm:^1.0.0": 14407 16620 version: 1.0.0 14408 16621 resolution: "possible-typed-array-names@npm:1.0.0" ··· 14435 16648 picocolors: "npm:^1.0.1" 14436 16649 source-map-js: "npm:^1.2.0" 14437 16650 checksum: 10/ad9c1add892c96433b9a5502878201ede4a20c4ce02d056251f61f8d9a3e5426dab3683fe5a086edfa78a1a19f2b4988c8cea02c5122136d29758cb5a17e2621 16651 + languageName: node 16652 + linkType: hard 16653 + 16654 + "preact@npm:^10.16.0": 16655 + version: 10.23.1 16656 + resolution: "preact@npm:10.23.1" 16657 + checksum: 10/ab90545445e805005627f0cf5cbd505b553877a5fc98e7bad8e93a7e223b973d38c8fb3368f75bb60265d23fee98b7086c738bf8ee06b7ff8527fb0c00d0698f 14438 16658 languageName: node 14439 16659 linkType: hard 14440 16660 ··· 14507 16727 languageName: node 14508 16728 linkType: hard 14509 16729 16730 + "process-warning@npm:^1.0.0": 16731 + version: 1.0.0 16732 + resolution: "process-warning@npm:1.0.0" 16733 + checksum: 10/8736d11d8d71c349d176e210305e84d74b13af06efb3c779377b056bfd608257d1e4e32b8fbbf90637c900f0313e40f7c9f583140884f667a21fc10a869b840c 16734 + languageName: node 16735 + linkType: hard 16736 + 16737 + "process@npm:^0.11.10": 16738 + version: 0.11.10 16739 + resolution: "process@npm:0.11.10" 16740 + checksum: 10/dbaa7e8d1d5cf375c36963ff43116772a989ef2bb47c9bdee20f38fd8fc061119cf38140631cf90c781aca4d3f0f0d2c834711952b728953f04fd7d238f59f5b 16741 + languageName: node 16742 + linkType: hard 16743 + 14510 16744 "proggy@npm:^2.0.0": 14511 16745 version: 2.0.0 14512 16746 resolution: "proggy@npm:2.0.0" ··· 14636 16870 languageName: node 14637 16871 linkType: hard 14638 16872 16873 + "proxy-compare@npm:2.5.1": 16874 + version: 2.5.1 16875 + resolution: "proxy-compare@npm:2.5.1" 16876 + checksum: 10/64b6277d08d89f0b2c468a84decf43f82a4e88da7075651e6adebc69d1b87fadc17cfeb43c024c00b65faa3f0908f7ac1e61f5f6849a404a547a742e6aa527a6 16877 + languageName: node 16878 + linkType: hard 16879 + 14639 16880 "proxy-from-env@npm:^1.1.0": 14640 16881 version: 1.1.0 14641 16882 resolution: "proxy-from-env@npm:1.1.0" ··· 14660 16901 languageName: node 14661 16902 linkType: hard 14662 16903 16904 + "qr-code-styling@npm:^1.6.0-rc.1": 16905 + version: 1.6.0-rc.1 16906 + resolution: "qr-code-styling@npm:1.6.0-rc.1" 16907 + dependencies: 16908 + qrcode-generator: "npm:^1.4.3" 16909 + checksum: 10/5654e75497eae7123143bd8fc87afae3b03e01b24f7cbd2c08df20e84f412d0ac1309191c89c9590396b8d38ba37ef15ea6461713c7cea0c710f8a2dbdeec892 16910 + languageName: node 16911 + linkType: hard 16912 + 16913 + "qrcode-generator@npm:^1.4.3": 16914 + version: 1.4.4 16915 + resolution: "qrcode-generator@npm:1.4.4" 16916 + checksum: 10/65b2bba237d1f230eba0d08ae4267d04f326859c2265775ade99191be1b522158b623fcc0b613bbfc9d4edbbafb928fc41c66d61053b333f2eb0bcedb2ebadca 16917 + languageName: node 16918 + linkType: hard 16919 + 16920 + "qrcode-terminal-nooctal@npm:^0.12.1": 16921 + version: 0.12.1 16922 + resolution: "qrcode-terminal-nooctal@npm:0.12.1" 16923 + bin: 16924 + qrcode-terminal: bin/qrcode-terminal.js 16925 + checksum: 10/8f437f9e95d8211c3b4eb3de572abd8e9695efa51b327e68e843fcbc2f017e32d6407caf4d8a8dca64d2d1270cf1cc1b16ebb6f2a69a1f891df430e8efdef66a 16926 + languageName: node 16927 + linkType: hard 16928 + 14663 16929 "qrcode-terminal@npm:0.11.0": 14664 16930 version: 0.11.0 14665 16931 resolution: "qrcode-terminal@npm:0.11.0" ··· 14669 16935 languageName: node 14670 16936 linkType: hard 14671 16937 14672 - "query-string@npm:^7.1.3": 16938 + "qrcode@npm:1.5.3": 16939 + version: 1.5.3 16940 + resolution: "qrcode@npm:1.5.3" 16941 + dependencies: 16942 + dijkstrajs: "npm:^1.0.1" 16943 + encode-utf8: "npm:^1.0.3" 16944 + pngjs: "npm:^5.0.0" 16945 + yargs: "npm:^15.3.1" 16946 + bin: 16947 + qrcode: bin/qrcode 16948 + checksum: 10/823642d59a81ba5f406a1e78415fee37fd53856038f49a85c4ca7aa32ba6b8505ab059a832718ac16612bed75aa2a18584faae38cf3c25e2c90fb19b8c55fe46 16949 + languageName: node 16950 + linkType: hard 16951 + 16952 + "query-string@npm:7.1.3, query-string@npm:^7.1.3": 14673 16953 version: 7.1.3 14674 16954 resolution: "query-string@npm:7.1.3" 14675 16955 dependencies: ··· 14704 16984 languageName: node 14705 16985 linkType: hard 14706 16986 16987 + "quick-format-unescaped@npm:^4.0.3": 16988 + version: 4.0.4 16989 + resolution: "quick-format-unescaped@npm:4.0.4" 16990 + checksum: 10/591eca457509a99368b623db05248c1193aa3cedafc9a077d7acab09495db1231017ba3ad1b5386e5633271edd0a03b312d8640a59ee585b8516a42e15438aa7 16991 + languageName: node 16992 + linkType: hard 16993 + 14707 16994 "quick-lru@npm:^4.0.1": 14708 16995 version: 4.0.1 14709 16996 resolution: "quick-lru@npm:4.0.1" ··· 14717 17004 dependencies: 14718 17005 w-json: "npm:1.3.10" 14719 17006 checksum: 10/ebe24b41e9f855af9f61747d7f3a511a78bc11c1841eaf3cbf98b385e91a0a982a3f724e2bf24d737642efc9b510585b5c54d25c098cc6850bdad15a22b36636 17007 + languageName: node 17008 + linkType: hard 17009 + 17010 + "radix3@npm:^1.1.2": 17011 + version: 1.1.2 17012 + resolution: "radix3@npm:1.1.2" 17013 + checksum: 10/5ed01a8e4b753e325c6ecb01d993de77f690e548ef9e149e7dc403ee7b109c2cb41e3d09bc3ce004d872c67c8dca1d556dbf7808b1ac7df9f86994e57d757557 14720 17014 languageName: node 14721 17015 linkType: hard 14722 17016 ··· 14979 17273 languageName: node 14980 17274 linkType: hard 14981 17275 17276 + "react-native-webview@npm:^11.26.0": 17277 + version: 11.26.1 17278 + resolution: "react-native-webview@npm:11.26.1" 17279 + dependencies: 17280 + escape-string-regexp: "npm:2.0.0" 17281 + invariant: "npm:2.2.4" 17282 + peerDependencies: 17283 + react: "*" 17284 + react-native: "*" 17285 + checksum: 10/d64123c73e7795096434135a1bec2aef5caf71a4c1c95b1416cc528bc55f5c4a89df2d311ad3637594f120e864b5798e2c4ea4eb7153bf938ad167c54e7a7e61 17286 + languageName: node 17287 + linkType: hard 17288 + 14982 17289 "react-native@npm:*, react-native@npm:0.74.3": 14983 17290 version: 0.74.3 14984 17291 resolution: "react-native@npm:0.74.3" ··· 15039 17346 languageName: node 15040 17347 linkType: hard 15041 17348 15042 - "react-remove-scroll-bar@npm:^2.3.3": 17349 + "react-remove-scroll-bar@npm:^2.3.3, react-remove-scroll-bar@npm:^2.3.4": 15043 17350 version: 2.3.6 15044 17351 resolution: "react-remove-scroll-bar@npm:2.3.6" 15045 17352 dependencies: ··· 15074 17381 languageName: node 15075 17382 linkType: hard 15076 17383 17384 + "react-remove-scroll@npm:2.5.7": 17385 + version: 2.5.7 17386 + resolution: "react-remove-scroll@npm:2.5.7" 17387 + dependencies: 17388 + react-remove-scroll-bar: "npm:^2.3.4" 17389 + react-style-singleton: "npm:^2.2.1" 17390 + tslib: "npm:^2.1.0" 17391 + use-callback-ref: "npm:^1.3.0" 17392 + use-sidecar: "npm:^1.1.2" 17393 + peerDependencies: 17394 + "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 17395 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 17396 + peerDependenciesMeta: 17397 + "@types/react": 17398 + optional: true 17399 + checksum: 10/a1285d118e734855be6a1cf6c83a2ee39d8c5a5c3c336a1e9b80ab571326669bf39a52607f1889337c559c18b9e5fd5a0772fa82f748de3fcfe114ee6f772cc6 17400 + languageName: node 17401 + linkType: hard 17402 + 15077 17403 "react-shallow-renderer@npm:^16.15.0": 15078 17404 version: 16.15.0 15079 17405 resolution: "react-shallow-renderer@npm:16.15.0" ··· 15182 17508 languageName: node 15183 17509 linkType: hard 15184 17510 15185 - "readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.1.1, readable-stream@npm:^3.4.0": 15186 - version: 3.6.2 15187 - resolution: "readable-stream@npm:3.6.2" 15188 - dependencies: 15189 - inherits: "npm:^2.0.3" 15190 - string_decoder: "npm:^1.1.1" 15191 - util-deprecate: "npm:^1.0.1" 15192 - checksum: 10/d9e3e53193adcdb79d8f10f2a1f6989bd4389f5936c6f8b870e77570853561c362bee69feca2bbb7b32368ce96a85504aa4cedf7cf80f36e6a9de30d64244048 15193 - languageName: node 15194 - linkType: hard 15195 - 15196 - "readable-stream@npm:~2.3.6": 17511 + "readable-stream@npm:^2.3.3, readable-stream@npm:~2.3.6": 15197 17512 version: 2.3.8 15198 17513 resolution: "readable-stream@npm:2.3.8" 15199 17514 dependencies: ··· 15208 17523 languageName: node 15209 17524 linkType: hard 15210 17525 17526 + "readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.1.1, readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0, readable-stream@npm:^3.6.2": 17527 + version: 3.6.2 17528 + resolution: "readable-stream@npm:3.6.2" 17529 + dependencies: 17530 + inherits: "npm:^2.0.3" 17531 + string_decoder: "npm:^1.1.1" 17532 + util-deprecate: "npm:^1.0.1" 17533 + checksum: 10/d9e3e53193adcdb79d8f10f2a1f6989bd4389f5936c6f8b870e77570853561c362bee69feca2bbb7b32368ce96a85504aa4cedf7cf80f36e6a9de30d64244048 17534 + languageName: node 17535 + linkType: hard 17536 + 17537 + "readable-stream@npm:^3.6.2 || ^4.4.2": 17538 + version: 4.5.2 17539 + resolution: "readable-stream@npm:4.5.2" 17540 + dependencies: 17541 + abort-controller: "npm:^3.0.0" 17542 + buffer: "npm:^6.0.3" 17543 + events: "npm:^3.3.0" 17544 + process: "npm:^0.11.10" 17545 + string_decoder: "npm:^1.3.0" 17546 + checksum: 10/01b128a559c5fd76a898495f858cf0a8839f135e6a69e3409f986e88460134791657eb46a2ff16826f331682a3c4d0c5a75cef5e52ef259711021ba52b1c2e82 17547 + languageName: node 17548 + linkType: hard 17549 + 15211 17550 "readdirp@npm:~3.6.0": 15212 17551 version: 3.6.0 15213 17552 resolution: "readdirp@npm:3.6.0" ··· 15221 17560 version: 1.3.0 15222 17561 resolution: "readline@npm:1.3.0" 15223 17562 checksum: 10/2cb7c274333fe1ed55e1bd06c670a32bd9eae5324d8e1fafb9af5c128dfde85601d59defe47947788b0682d5e9efeae6b88ea5fe233d5236a02f382a0b0ad4c3 17563 + languageName: node 17564 + linkType: hard 17565 + 17566 + "real-require@npm:^0.1.0": 17567 + version: 0.1.0 17568 + resolution: "real-require@npm:0.1.0" 17569 + checksum: 10/0ba1c440dc9b7777d35a97f755312bf236be0847249f76cc9789c5c08d141f5d80b8564888e6a94ed0253fabf597b6892f8502c4e5658fb98f88642633a39723 15224 17570 languageName: node 15225 17571 linkType: hard 15226 17572 ··· 15569 17915 languageName: node 15570 17916 linkType: hard 15571 17917 17918 + "rollup-plugin-visualizer@npm:^5.9.2": 17919 + version: 5.12.0 17920 + resolution: "rollup-plugin-visualizer@npm:5.12.0" 17921 + dependencies: 17922 + open: "npm:^8.4.0" 17923 + picomatch: "npm:^2.3.1" 17924 + source-map: "npm:^0.7.4" 17925 + yargs: "npm:^17.5.1" 17926 + peerDependencies: 17927 + rollup: 2.x || 3.x || 4.x 17928 + peerDependenciesMeta: 17929 + rollup: 17930 + optional: true 17931 + bin: 17932 + rollup-plugin-visualizer: dist/bin/cli.js 17933 + checksum: 10/47358feb672291d6edcfd94197577c192a84c24cb644119425dae8241fb6f5a52556efd0c501f38b276c07534642a80c0885ef681babb474e83c7b5a3b475b84 17934 + languageName: node 17935 + linkType: hard 17936 + 15572 17937 "run-async@npm:^2.4.0": 15573 17938 version: 2.4.1 15574 17939 resolution: "run-async@npm:2.4.1" ··· 15638 18003 languageName: node 15639 18004 linkType: hard 15640 18005 18006 + "safe-stable-stringify@npm:^2.1.0": 18007 + version: 2.4.3 18008 + resolution: "safe-stable-stringify@npm:2.4.3" 18009 + checksum: 10/a6c192bbefe47770a11072b51b500ed29be7b1c15095371c1ee1dc13e45ce48ee3c80330214c56764d006c485b88bd0b24940d868948170dddc16eed312582d8 18010 + languageName: node 18011 + linkType: hard 18012 + 15641 18013 "safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": 15642 18014 version: 2.1.2 15643 18015 resolution: "safer-buffer@npm:2.1.2" ··· 15682 18054 languageName: node 15683 18055 linkType: hard 15684 18056 18057 + "secp256k1@npm:^5.0.0": 18058 + version: 5.0.0 18059 + resolution: "secp256k1@npm:5.0.0" 18060 + dependencies: 18061 + elliptic: "npm:^6.5.4" 18062 + node-addon-api: "npm:^5.0.0" 18063 + node-gyp: "npm:latest" 18064 + node-gyp-build: "npm:^4.2.0" 18065 + checksum: 10/6e146c876ef202dbfbb35836d6ccd0ea3779dc09bad632bb9e0fe2e702848a4ee96638f39da54895430de832232d6292d858529e2eda56db3ddda13e40d7facc 18066 + languageName: node 18067 + linkType: hard 18068 + 15685 18069 "selfsigned@npm:^2.4.1": 15686 18070 version: 2.4.1 15687 18071 resolution: "selfsigned@npm:2.4.1" ··· 15836 18220 version: 1.0.0 15837 18221 resolution: "sf-symbols-typescript@npm:1.0.0" 15838 18222 checksum: 10/008ddfcadceb33ec29fb182104516234cc3f771254619696918481744bc28be51070f226859e4dfc2faf5f094dd8ca13e0364b2bb3d22e8cf044ce37f749df0b 18223 + languageName: node 18224 + linkType: hard 18225 + 18226 + "sha.js@npm:^2.4.11": 18227 + version: 2.4.11 18228 + resolution: "sha.js@npm:2.4.11" 18229 + dependencies: 18230 + inherits: "npm:^2.0.1" 18231 + safe-buffer: "npm:^5.0.1" 18232 + bin: 18233 + sha.js: ./bin.js 18234 + checksum: 10/d833bfa3e0a67579a6ce6e1bc95571f05246e0a441dd8c76e3057972f2a3e098465687a4369b07e83a0375a88703577f71b5b2e966809e67ebc340dbedb478c7 15839 18235 languageName: node 15840 18236 linkType: hard 15841 18237 ··· 16042 18438 languageName: node 16043 18439 linkType: hard 16044 18440 18441 + "socket.io-client@npm:^4.5.1": 18442 + version: 4.7.5 18443 + resolution: "socket.io-client@npm:4.7.5" 18444 + dependencies: 18445 + "@socket.io/component-emitter": "npm:~3.1.0" 18446 + debug: "npm:~4.3.2" 18447 + engine.io-client: "npm:~6.5.2" 18448 + socket.io-parser: "npm:~4.2.4" 18449 + checksum: 10/a9e118081dc1669a63af3abd9defce94f85c8ed8d9146cd7a77665b5f1f78baf0b9f4155cf0fce7770856f97493416551abcba686f02778045f4768ceaafed5c 18450 + languageName: node 18451 + linkType: hard 18452 + 18453 + "socket.io-parser@npm:~4.2.4": 18454 + version: 4.2.4 18455 + resolution: "socket.io-parser@npm:4.2.4" 18456 + dependencies: 18457 + "@socket.io/component-emitter": "npm:~3.1.0" 18458 + debug: "npm:~4.3.1" 18459 + checksum: 10/4be500a9ff7e79c50ec25af11048a3ed34b4c003a9500d656786a1e5bceae68421a8394cf3eb0aa9041f85f36c1a9a737617f4aee91a42ab4ce16ffb2aa0c89c 18460 + languageName: node 18461 + linkType: hard 18462 + 16045 18463 "socks-proxy-agent@npm:^8.0.3": 16046 18464 version: 8.0.4 16047 18465 resolution: "socks-proxy-agent@npm:8.0.4" ··· 16063 18481 languageName: node 16064 18482 linkType: hard 16065 18483 18484 + "sonic-boom@npm:^2.2.1": 18485 + version: 2.8.0 18486 + resolution: "sonic-boom@npm:2.8.0" 18487 + dependencies: 18488 + atomic-sleep: "npm:^1.0.0" 18489 + checksum: 10/05351d9f44bac59b2a4ab42ee22bf81b8c3bbd22db20183d78d5f2067557eb623e0eaf93b2bc0f8417bee92ca372bc26e0d83e3bdb0ffebcc33738ac1c191876 18490 + languageName: node 18491 + linkType: hard 18492 + 16066 18493 "sonner@npm:^0.3.5": 16067 18494 version: 0.3.5 16068 18495 resolution: "sonner@npm:0.3.5" ··· 16113 18540 languageName: node 16114 18541 linkType: hard 16115 18542 16116 - "source-map@npm:^0.7.3": 18543 + "source-map@npm:^0.7.3, source-map@npm:^0.7.4": 16117 18544 version: 0.7.4 16118 18545 resolution: "source-map@npm:0.7.4" 16119 18546 checksum: 10/a0f7c9b797eda93139842fd28648e868a9a03ea0ad0d9fa6602a0c1f17b7fb6a7dcca00c144476cccaeaae5042e99a285723b1a201e844ad67221bf5d428f1dc ··· 16170 18597 languageName: node 16171 18598 linkType: hard 16172 18599 18600 + "split2@npm:^4.0.0": 18601 + version: 4.2.0 18602 + resolution: "split2@npm:4.2.0" 18603 + checksum: 10/09bbefc11bcf03f044584c9764cd31a252d8e52cea29130950b26161287c11f519807c5e54bd9e5804c713b79c02cefe6a98f4688630993386be353e03f534ab 18604 + languageName: node 18605 + linkType: hard 18606 + 16173 18607 "split@npm:^1.0.1": 16174 18608 version: 1.0.1 16175 18609 resolution: "split@npm:1.0.1" ··· 16241 18675 languageName: node 16242 18676 linkType: hard 16243 18677 18678 + "std-env@npm:^3.7.0": 18679 + version: 3.7.0 18680 + resolution: "std-env@npm:3.7.0" 18681 + checksum: 10/6ee0cca1add3fd84656b0002cfbc5bfa20340389d9ba4720569840f1caa34bce74322aef4c93f046391583e50649d0cf81a5f8fe1d411e50b659571690a45f12 18682 + languageName: node 18683 + linkType: hard 18684 + 16244 18685 "stream-buffers@npm:2.2.x, stream-buffers@npm:~2.2.0": 16245 18686 version: 2.2.0 16246 18687 resolution: "stream-buffers@npm:2.2.0" ··· 16352 18793 languageName: node 16353 18794 linkType: hard 16354 18795 16355 - "string_decoder@npm:^1.1.1": 18796 + "string_decoder@npm:^1.1.1, string_decoder@npm:^1.3.0": 16356 18797 version: 1.3.0 16357 18798 resolution: "string_decoder@npm:1.3.0" 16358 18799 dependencies: ··· 16538 18979 languageName: node 16539 18980 linkType: hard 16540 18981 18982 + "superstruct@npm:^1.0.3": 18983 + version: 1.0.4 18984 + resolution: "superstruct@npm:1.0.4" 18985 + checksum: 10/9b3fd70a08c5ad3ea78b5c6b7ab90d31dde71af10448208d296c3d29ba2e55dfd817dfef75957163ee032163d04c4b2e0cb2fddff30313516aa60f748c1a48da 18986 + languageName: node 18987 + linkType: hard 18988 + 16541 18989 "supports-color@npm:^5.3.0": 16542 18990 version: 5.5.0 16543 18991 resolution: "supports-color@npm:5.5.0" ··· 16579 19027 version: 1.0.0 16580 19028 resolution: "supports-preserve-symlinks-flag@npm:1.0.0" 16581 19029 checksum: 10/a9dc19ae2220c952bd2231d08ddeecb1b0328b61e72071ff4000c8384e145cc07c1c0bdb3b5a1cb06e186a7b2790f1dee793418b332f6ddf320de25d9125be7e 19030 + languageName: node 19031 + linkType: hard 19032 + 19033 + "system-architecture@npm:^0.1.0": 19034 + version: 0.1.0 19035 + resolution: "system-architecture@npm:0.1.0" 19036 + checksum: 10/ca0dd793c45c354ab57dd7fc8ce7dc9923a6e07382bd3b22eb5b08f55ddb0217c390d00767549c5155fd4ce7ef23ffdd8cfb33dd4344cbbd37837d085a50f6f0 16582 19037 languageName: node 16583 19038 linkType: hard 16584 19039 ··· 16804 19259 dependencies: 16805 19260 any-promise: "npm:^1.0.0" 16806 19261 checksum: 10/486e1283a867440a904e36741ff1a177faa827cf94d69506f7e3ae4187b9afdf9ec368b3d8da225c192bfe2eb943f3f0080594156bf39f21b57cd1411e2e7f6d 19262 + languageName: node 19263 + linkType: hard 19264 + 19265 + "thread-stream@npm:^0.15.1": 19266 + version: 0.15.2 19267 + resolution: "thread-stream@npm:0.15.2" 19268 + dependencies: 19269 + real-require: "npm:^0.1.0" 19270 + checksum: 10/ca0a4f5bf45db88b48b41af0299455eaa8f01dd3ef8279e7ba6909c295b3ab79ddf576b595cbbceb4dbdf4012b17c6449805092926163fcbf30ac1604cb595b1 16807 19271 languageName: node 16808 19272 linkType: hard 16809 19273 ··· 16927 19391 languageName: node 16928 19392 linkType: hard 16929 19393 16930 - "tslib@npm:^2.0.0, tslib@npm:^2.0.1, tslib@npm:^2.1.0, tslib@npm:^2.3.0, tslib@npm:^2.4.0": 19394 + "tslib@npm:1.14.1": 19395 + version: 1.14.1 19396 + resolution: "tslib@npm:1.14.1" 19397 + checksum: 10/7dbf34e6f55c6492637adb81b555af5e3b4f9cc6b998fb440dac82d3b42bdc91560a35a5fb75e20e24a076c651438234da6743d139e4feabf0783f3cdfe1dddb 19398 + languageName: node 19399 + linkType: hard 19400 + 19401 + "tslib@npm:^2.0.0, tslib@npm:^2.0.1, tslib@npm:^2.1.0, tslib@npm:^2.3.0, tslib@npm:^2.3.1, tslib@npm:^2.4.0": 16931 19402 version: 2.6.3 16932 19403 resolution: "tslib@npm:2.6.3" 16933 19404 checksum: 10/52109bb681f8133a2e58142f11a50e05476de4f075ca906d13b596ae5f7f12d30c482feb0bff167ae01cfc84c5803e575a307d47938999246f5a49d174fc558c ··· 17115 19586 languageName: node 17116 19587 linkType: hard 17117 19588 17118 - "ua-parser-js@npm:^1.0.35": 19589 + "ua-parser-js@npm:^1.0.35, ua-parser-js@npm:^1.0.37": 17119 19590 version: 1.0.38 17120 19591 resolution: "ua-parser-js@npm:1.0.38" 17121 19592 checksum: 10/f2345e9bd0f9c5f85bcaa434535fae88f4bb891538e568106f0225b2c2937fbfbeb5782bd22320d07b6b3d68b350b8861574c1d7af072ff9b2362fb72d326fd9 ··· 17129 19600 languageName: node 17130 19601 linkType: hard 17131 19602 19603 + "ufo@npm:^1.4.0, ufo@npm:^1.5.3": 19604 + version: 1.5.4 19605 + resolution: "ufo@npm:1.5.4" 19606 + checksum: 10/a885ed421e656aea6ca64e9727b8118a9488715460b6f1a0f0427118adfe2f2830fe7c1d5bd9c5c754a332e6807516551cd663ea67ce9ed6a4e3edc739916335 19607 + languageName: node 19608 + linkType: hard 19609 + 17132 19610 "uglify-js@npm:^3.1.4": 17133 19611 version: 3.19.0 17134 19612 resolution: "uglify-js@npm:3.19.0" ··· 17138 19616 languageName: node 17139 19617 linkType: hard 17140 19618 19619 + "uint8arrays@npm:3.1.0": 19620 + version: 3.1.0 19621 + resolution: "uint8arrays@npm:3.1.0" 19622 + dependencies: 19623 + multiformats: "npm:^9.4.2" 19624 + checksum: 10/caf1cd6a1cdbd7c59d6c8698c06a6d603380942b5745b3fddcd1b16f7a84a4f351fb8c6ac41f4cb2c59c226bb6d954733a6e20a42dec6f3fd266a02270a5088d 19625 + languageName: node 19626 + linkType: hard 19627 + 19628 + "uint8arrays@npm:^3.0.0": 19629 + version: 3.1.1 19630 + resolution: "uint8arrays@npm:3.1.1" 19631 + dependencies: 19632 + multiformats: "npm:^9.4.2" 19633 + checksum: 10/536e70273c040484aa7d522031a9dbca1fe8c06eb58a3ace1064ba68825b4e2764d4a0b604a1c451e7b8be0986dc94f23a419cfe9334bd116716074a2d29b33d 19634 + languageName: node 19635 + linkType: hard 19636 + 17141 19637 "unbox-primitive@npm:^1.0.2": 17142 19638 version: 1.0.2 17143 19639 resolution: "unbox-primitive@npm:1.0.2" ··· 17147 19643 has-symbols: "npm:^1.0.3" 17148 19644 which-boxed-primitive: "npm:^1.0.2" 17149 19645 checksum: 10/06e1ee41c1095e37281cb71a975cb3350f7cb470a0665d2576f02cc9564f623bd90cfc0183693b8a7fdf2d242963dcc3010b509fa3ac683f540c765c0f3e7e43 19646 + languageName: node 19647 + linkType: hard 19648 + 19649 + "uncrypto@npm:^0.1.3": 19650 + version: 0.1.3 19651 + resolution: "uncrypto@npm:0.1.3" 19652 + checksum: 10/0020f74b0ce34723196d8982a73bb7f40cff455a41b8f88ae146b86885f4e66e41a1241fe80a887505c3bd2c7f07ed362b6ed041968370073c40a98496e6a737 17150 19653 languageName: node 17151 19654 linkType: hard 17152 19655 ··· 17170 19673 version: 6.19.2 17171 19674 resolution: "undici@npm:6.19.2" 17172 19675 checksum: 10/f4895c0c1e2fcde18076ac98965c231875811b8e14ceab1a7b19e940ed1a2fce69e0864e1186bfdc9347dffe0f39a00daf6dd5e7c0169b2b33de59a859dc2f1d 19676 + languageName: node 19677 + linkType: hard 19678 + 19679 + "unenv@npm:^1.9.0": 19680 + version: 1.10.0 19681 + resolution: "unenv@npm:1.10.0" 19682 + dependencies: 19683 + consola: "npm:^3.2.3" 19684 + defu: "npm:^6.1.4" 19685 + mime: "npm:^3.0.0" 19686 + node-fetch-native: "npm:^1.6.4" 19687 + pathe: "npm:^1.1.2" 19688 + checksum: 10/23198e150fd3b4db4d7abe444b75ee05a0d36768bd6d94a6aaf5dca830db82e707ccc0f6cca22671327b62c5cd85ada08d4665bf7652afec9de0bdc7a4546249 19689 + languageName: node 19690 + linkType: hard 19691 + 19692 + "unfetch@npm:^4.2.0": 19693 + version: 4.2.0 19694 + resolution: "unfetch@npm:4.2.0" 19695 + checksum: 10/d4924178060b6828d858acef3ce2baea69acd3f3f9e2429fd503a0ed0d2b1ed0ee107786aceadfd167ce884fad12d22b5288eb865a3ea036979b8358b8555c9a 17173 19696 languageName: node 17174 19697 linkType: hard 17175 19698 ··· 17275 19798 languageName: node 17276 19799 linkType: hard 17277 19800 19801 + "unstorage@npm:^1.9.0": 19802 + version: 1.10.2 19803 + resolution: "unstorage@npm:1.10.2" 19804 + dependencies: 19805 + anymatch: "npm:^3.1.3" 19806 + chokidar: "npm:^3.6.0" 19807 + destr: "npm:^2.0.3" 19808 + h3: "npm:^1.11.1" 19809 + listhen: "npm:^1.7.2" 19810 + lru-cache: "npm:^10.2.0" 19811 + mri: "npm:^1.2.0" 19812 + node-fetch-native: "npm:^1.6.2" 19813 + ofetch: "npm:^1.3.3" 19814 + ufo: "npm:^1.4.0" 19815 + peerDependencies: 19816 + "@azure/app-configuration": ^1.5.0 19817 + "@azure/cosmos": ^4.0.0 19818 + "@azure/data-tables": ^13.2.2 19819 + "@azure/identity": ^4.0.1 19820 + "@azure/keyvault-secrets": ^4.8.0 19821 + "@azure/storage-blob": ^12.17.0 19822 + "@capacitor/preferences": ^5.0.7 19823 + "@netlify/blobs": ^6.5.0 || ^7.0.0 19824 + "@planetscale/database": ^1.16.0 19825 + "@upstash/redis": ^1.28.4 19826 + "@vercel/kv": ^1.0.1 19827 + idb-keyval: ^6.2.1 19828 + ioredis: ^5.3.2 19829 + peerDependenciesMeta: 19830 + "@azure/app-configuration": 19831 + optional: true 19832 + "@azure/cosmos": 19833 + optional: true 19834 + "@azure/data-tables": 19835 + optional: true 19836 + "@azure/identity": 19837 + optional: true 19838 + "@azure/keyvault-secrets": 19839 + optional: true 19840 + "@azure/storage-blob": 19841 + optional: true 19842 + "@capacitor/preferences": 19843 + optional: true 19844 + "@netlify/blobs": 19845 + optional: true 19846 + "@planetscale/database": 19847 + optional: true 19848 + "@upstash/redis": 19849 + optional: true 19850 + "@vercel/kv": 19851 + optional: true 19852 + idb-keyval: 19853 + optional: true 19854 + ioredis: 19855 + optional: true 19856 + checksum: 10/2ed14d4755447fbb383e98294ca383ec19fdcfbff1c6a46a6d5cf3c322e2f77eb9b71e8a135338daa32229adb6d087076c5321d44674bf1fd6df0b3e00b10f78 19857 + languageName: node 19858 + linkType: hard 19859 + 19860 + "untun@npm:^0.1.3": 19861 + version: 0.1.3 19862 + resolution: "untun@npm:0.1.3" 19863 + dependencies: 19864 + citty: "npm:^0.1.5" 19865 + consola: "npm:^3.2.3" 19866 + pathe: "npm:^1.1.1" 19867 + bin: 19868 + untun: bin/untun.mjs 19869 + checksum: 10/6a096002ca13b8442ad1d40840088888cfaa28626eefdd132cd0fd3d3b956af121a9733b7bda32647608e278fb13332d2b72e2c319a27dc55dbc8e709a2f61d4 19870 + languageName: node 19871 + linkType: hard 19872 + 17278 19873 "upath@npm:2.0.1": 17279 19874 version: 2.0.1 17280 19875 resolution: "upath@npm:2.0.1" ··· 17293 19888 bin: 17294 19889 update-browserslist-db: cli.js 17295 19890 checksum: 10/d70b9efeaf4601aadb1a4f6456a7a5d9118e0063d995866b8e0c5e0cf559482671dab6ce7b079f9536b06758a344fbd83f974b965211e1c6e8d1958540b0c24c 19891 + languageName: node 19892 + linkType: hard 19893 + 19894 + "uqr@npm:^0.1.2": 19895 + version: 0.1.2 19896 + resolution: "uqr@npm:0.1.2" 19897 + checksum: 10/31f1fe7d7a8121a2670712234524763160985b053e7eb8af7925a131bcde0df11641e15129d988358032da603185456d08dd72b26b507897272eb9640273bfa6 17296 19898 languageName: node 17297 19899 linkType: hard 17298 19900 ··· 17361 19963 languageName: node 17362 19964 linkType: hard 17363 19965 19966 + "utf-8-validate@npm:^5.0.2": 19967 + version: 5.0.10 19968 + resolution: "utf-8-validate@npm:5.0.10" 19969 + dependencies: 19970 + node-gyp: "npm:latest" 19971 + node-gyp-build: "npm:^4.3.0" 19972 + checksum: 10/b89cbc13b4badad04828349ebb7aa2ab1edcb02b46ab12ce0ba5b2d6886d684ad4e93347819e3c8d36224c8742422d2dca69f5cc16c72ae4d7eeecc0c5cb544b 19973 + languageName: node 19974 + linkType: hard 19975 + 17364 19976 "util-deprecate@npm:^1.0.1, util-deprecate@npm:^1.0.2, util-deprecate@npm:~1.0.1": 17365 19977 version: 1.0.2 17366 19978 resolution: "util-deprecate@npm:1.0.2" ··· 17368 19980 languageName: node 17369 19981 linkType: hard 17370 19982 17371 - "util@npm:^0.12.3, util@npm:^0.12.5": 19983 + "util@npm:^0.12.3, util@npm:^0.12.4, util@npm:^0.12.5": 17372 19984 version: 0.12.5 17373 19985 resolution: "util@npm:0.12.5" 17374 19986 dependencies: ··· 17457 20069 languageName: node 17458 20070 linkType: hard 17459 20071 20072 + "valtio@npm:1.11.2": 20073 + version: 1.11.2 20074 + resolution: "valtio@npm:1.11.2" 20075 + dependencies: 20076 + proxy-compare: "npm:2.5.1" 20077 + use-sync-external-store: "npm:1.2.0" 20078 + peerDependencies: 20079 + "@types/react": ">=16.8" 20080 + react: ">=16.8" 20081 + peerDependenciesMeta: 20082 + "@types/react": 20083 + optional: true 20084 + react: 20085 + optional: true 20086 + checksum: 10/a259f5af204b801668e019855813a8f702c9558961395bb5847f583119428b997efb9b0e6feb5d6e48a76a9b541173a10fdfdb1527a7bd14477a0e0c5beba914 20087 + languageName: node 20088 + linkType: hard 20089 + 17460 20090 "vary@npm:~1.1.2": 17461 20091 version: 1.1.2 17462 20092 resolution: "vary@npm:1.1.2" ··· 17464 20094 languageName: node 17465 20095 linkType: hard 17466 20096 20097 + "viem@npm:2.x, viem@npm:^2.1.1": 20098 + version: 2.18.6 20099 + resolution: "viem@npm:2.18.6" 20100 + dependencies: 20101 + "@adraffy/ens-normalize": "npm:1.10.0" 20102 + "@noble/curves": "npm:1.4.0" 20103 + "@noble/hashes": "npm:1.4.0" 20104 + "@scure/bip32": "npm:1.4.0" 20105 + "@scure/bip39": "npm:1.3.0" 20106 + abitype: "npm:1.0.5" 20107 + isows: "npm:1.0.4" 20108 + webauthn-p256: "npm:0.0.5" 20109 + ws: "npm:8.17.1" 20110 + peerDependencies: 20111 + typescript: ">=5.0.4" 20112 + peerDependenciesMeta: 20113 + typescript: 20114 + optional: true 20115 + checksum: 10/b51b50db0ebc134788eacd768f95938cc57b053bea51b4df871abf4ddb48cbbf5d349bc3df1cb8ebc15c84f65087ef99a4458472f697c22cd87e6994f0ebeecf 20116 + languageName: node 20117 + linkType: hard 20118 + 17467 20119 "vlq@npm:^1.0.0": 17468 20120 version: 1.0.1 17469 20121 resolution: "vlq@npm:1.0.1" ··· 17478 20130 languageName: node 17479 20131 linkType: hard 17480 20132 20133 + "wagmi@npm:2": 20134 + version: 2.12.2 20135 + resolution: "wagmi@npm:2.12.2" 20136 + dependencies: 20137 + "@wagmi/connectors": "npm:5.1.2" 20138 + "@wagmi/core": "npm:2.13.1" 20139 + use-sync-external-store: "npm:1.2.0" 20140 + peerDependencies: 20141 + "@tanstack/react-query": ">=5.0.0" 20142 + react: ">=18" 20143 + typescript: ">=5.0.4" 20144 + viem: 2.x 20145 + peerDependenciesMeta: 20146 + typescript: 20147 + optional: true 20148 + checksum: 10/c8faa9677f9c3700bb69d425a5461719d506481f7faa2af7428dafa41132e251b423547db9da28b35ddf1a90c3f8bba346d03ffea46b4606419e412a33808d7c 20149 + languageName: node 20150 + linkType: hard 20151 + 17481 20152 "walk-up-path@npm:^3.0.1": 17482 20153 version: 3.0.1 17483 20154 resolution: "walk-up-path@npm:3.0.1" ··· 17527 20198 version: 3.3.3 17528 20199 resolution: "web-streams-polyfill@npm:3.3.3" 17529 20200 checksum: 10/8e7e13501b3834094a50abe7c0b6456155a55d7571312b89570012ef47ec2a46d766934768c50aabad10a9c30dd764a407623e8bfcc74fcb58495c29130edea9 20201 + languageName: node 20202 + linkType: hard 20203 + 20204 + "webauthn-p256@npm:0.0.5": 20205 + version: 0.0.5 20206 + resolution: "webauthn-p256@npm:0.0.5" 20207 + dependencies: 20208 + "@noble/curves": "npm:^1.4.0" 20209 + "@noble/hashes": "npm:^1.4.0" 20210 + checksum: 10/6bf5d1857dfb99ecb3b318af06eddea874c10135e6ebb9f046270f5cbb162933bc6caf77aedb033e14c09971dda544a5fb367ac545e4ec8001b309ba517555cf 20211 + languageName: node 20212 + linkType: hard 20213 + 20214 + "webextension-polyfill@npm:>=0.10.0 <1.0": 20215 + version: 0.12.0 20216 + resolution: "webextension-polyfill@npm:0.12.0" 20217 + checksum: 10/77e648b958b573ef075e75a0c180e2bbd74dee17b3145e86d21fcbb168c4999e4a311654fe634b8178997bee9b35ea5808d8d3d3e5ff2ad138f197f4f0ea75d9 20218 + languageName: node 20219 + linkType: hard 20220 + 20221 + "webextension-polyfill@npm:^0.10.0": 20222 + version: 0.10.0 20223 + resolution: "webextension-polyfill@npm:0.10.0" 20224 + checksum: 10/51ff30ebed4b1aa802b7f0347f05021b2fe492078bb1a597223d43995fcee96e2da8f914a2f6e36f988c1877ed5ab36ca7077f2f3ab828955151a59e4c01bf7e 17530 20225 languageName: node 17531 20226 linkType: hard 17532 20227 ··· 17783 20478 languageName: node 17784 20479 linkType: hard 17785 20480 20481 + "ws@npm:8.17.1, ws@npm:~8.17.1": 20482 + version: 8.17.1 20483 + resolution: "ws@npm:8.17.1" 20484 + peerDependencies: 20485 + bufferutil: ^4.0.1 20486 + utf-8-validate: ">=5.0.2" 20487 + peerDependenciesMeta: 20488 + bufferutil: 20489 + optional: true 20490 + utf-8-validate: 20491 + optional: true 20492 + checksum: 10/4264ae92c0b3e59c7e309001e93079b26937aab181835fb7af79f906b22cd33b6196d96556dafb4e985742dd401e99139572242e9847661fdbc96556b9e6902d 20493 + languageName: node 20494 + linkType: hard 20495 + 17786 20496 "ws@npm:^6.2.2": 17787 20497 version: 6.2.3 17788 20498 resolution: "ws@npm:6.2.3" ··· 17863 20573 languageName: node 17864 20574 linkType: hard 17865 20575 17866 - "xtend@npm:~4.0.1": 20576 + "xmlhttprequest-ssl@npm:~2.0.0": 20577 + version: 2.0.0 20578 + resolution: "xmlhttprequest-ssl@npm:2.0.0" 20579 + checksum: 10/3c2edfce0c49c7a494ed16c87e6897c9e3eba29763a5505526de83ddefd195d224fa5cdf41092298c99cd6ee473c9f259a0679f6ff3b8a9535dcd09900db91f9 20580 + languageName: node 20581 + linkType: hard 20582 + 20583 + "xtend@npm:^4.0.1, xtend@npm:~4.0.1": 17867 20584 version: 4.0.2 17868 20585 resolution: "xtend@npm:4.0.2" 17869 20586 checksum: 10/ac5dfa738b21f6e7f0dd6e65e1b3155036d68104e67e5d5d1bde74892e327d7e5636a076f625599dc394330a731861e87343ff184b0047fef1360a7ec0a5a36a ··· 17931 20648 languageName: node 17932 20649 linkType: hard 17933 20650 17934 - "yargs@npm:17.7.2, yargs@npm:^17.6.2, yargs@npm:^17.7.2": 20651 + "yargs@npm:17.7.2, yargs@npm:^17.5.1, yargs@npm:^17.6.2, yargs@npm:^17.7.2": 17935 20652 version: 17.7.2 17936 20653 resolution: "yargs@npm:17.7.2" 17937 20654 dependencies: ··· 17946 20663 languageName: node 17947 20664 linkType: hard 17948 20665 17949 - "yargs@npm:^15.1.0": 20666 + "yargs@npm:^15.1.0, yargs@npm:^15.3.1": 17950 20667 version: 15.4.1 17951 20668 resolution: "yargs@npm:15.4.1" 17952 20669 dependencies: ··· 17984 20701 version: 0.1.0 17985 20702 resolution: "yocto-queue@npm:0.1.0" 17986 20703 checksum: 10/f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 20704 + languageName: node 20705 + linkType: hard 20706 + 20707 + "zustand@npm:4.4.1": 20708 + version: 4.4.1 20709 + resolution: "zustand@npm:4.4.1" 20710 + dependencies: 20711 + use-sync-external-store: "npm:1.2.0" 20712 + peerDependencies: 20713 + "@types/react": ">=16.8" 20714 + immer: ">=9.0" 20715 + react: ">=16.8" 20716 + peerDependenciesMeta: 20717 + "@types/react": 20718 + optional: true 20719 + immer: 20720 + optional: true 20721 + react: 20722 + optional: true 20723 + checksum: 10/e6e21cbb7200bd9eca35c8f385d8b4c06949581f4e19a11c473fe2df5b756997e7d4747eb9f54ee918b9a378c62e3f2f6eadba9d24f9eb4351cc50ad27832c13 17987 20724 languageName: node 17988 20725 linkType: hard 17989 20726