Live video on the AT Protocol

app: add bluesky oauth, proof-of-post PDS indexing

See merge request aquareum-tv/aquareum!76

Changelog: feature

+4060 -2231
+3
README.md
··· 36 36 37 37 **App Development** 38 38 39 + Building the Android version requires Java 17. On Ubuntu you can run 40 + `sudo apt install openjdk-17-jdk`. 41 + 39 42 ``` 40 43 cd js/app 41 44
+81 -1
go.mod
··· 11 11 git.aquareum.tv/aquareum-tv/c2pa-go v0.0.0-20240913223408-68f9878542d4 12 12 github.com/NYTimes/gziphandler v1.1.1 13 13 github.com/ThalesGroup/crypto11 v0.0.0-00010101000000-000000000000 14 + github.com/bluesky-social/indigo v0.0.0-20241119234843-9198b7903723 14 15 github.com/decred/dcrd/dcrec/secp256k1 v1.0.4 15 16 github.com/dunglas/httpsfv v1.0.2 16 17 github.com/ethereum/go-ethereum v1.14.7 ··· 20 21 github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 21 22 github.com/golang/glog v1.2.0 22 23 github.com/google/uuid v1.6.0 24 + github.com/ipfs/go-cid v0.4.1 23 25 github.com/johncgriffin/overflow v0.0.0-20211019200055-46fa312c352c 24 26 github.com/julienschmidt/httprouter v1.3.0 25 27 github.com/livepeer/lpms v0.0.0-20240812093642-b5181eb92cb2 ··· 69 71 dario.cat/mergo v1.0.0 // indirect 70 72 filippo.io/edwards25519 v1.1.0 // indirect 71 73 github.com/BurntSushi/toml v1.4.0 // indirect 74 + github.com/DataDog/zstd v1.4.5 // indirect 72 75 github.com/MicahParks/keyfunc v1.9.0 // indirect 73 76 github.com/Microsoft/go-winio v0.6.2 // indirect 74 77 github.com/ProtonMail/go-crypto v1.0.0 // indirect 78 + github.com/RussellLuo/slidingwindow v0.0.0-20200528002341-535bb99d338b // indirect 79 + github.com/beorn7/perks v1.0.1 // indirect 75 80 github.com/bits-and-blooms/bitset v1.10.0 // indirect 76 81 github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect 82 + github.com/carlmjohnson/versioninfo v0.22.5 // indirect 83 + github.com/cespare/xxhash/v2 v2.3.0 // indirect 77 84 github.com/cloudflare/circl v1.3.7 // indirect 85 + github.com/cockroachdb/errors v1.11.3 // indirect 86 + github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce // indirect 87 + github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect 88 + github.com/cockroachdb/pebble v1.1.2 // indirect 89 + github.com/cockroachdb/redact v1.1.5 // indirect 90 + github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 // indirect 78 91 github.com/consensys/bavard v0.1.13 // indirect 79 92 github.com/consensys/gnark-crypto v0.12.1 // indirect 80 93 github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect ··· 82 95 github.com/cyphar/filepath-securejoin v0.2.4 // indirect 83 96 github.com/deckarep/golang-set/v2 v2.6.0 // indirect 84 97 github.com/decred/dcrd/dcrec/secp256k1/v2 v2.0.0 // indirect 85 - github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 // indirect 98 + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 // indirect 86 99 github.com/emirpasic/gods v1.18.1 // indirect 87 100 github.com/ethereum/c-kzg-4844 v1.0.0 // indirect 88 101 github.com/felixge/httpsnoop v1.0.4 // indirect 89 102 github.com/fsnotify/fsnotify v1.6.0 // indirect 103 + github.com/getsentry/sentry-go v0.27.0 // indirect 90 104 github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect 91 105 github.com/go-git/go-billy/v5 v5.5.0 // indirect 92 106 github.com/go-logr/logr v1.4.2 // indirect 93 107 github.com/go-logr/stdr v1.2.2 // indirect 94 108 github.com/go-sql-driver/mysql v1.8.1 // indirect 109 + github.com/gogo/protobuf v1.3.2 // indirect 95 110 github.com/golang-jwt/jwt/v4 v4.5.0 // indirect 96 111 github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect 97 112 github.com/golang/protobuf v1.5.4 // indirect 113 + github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect 98 114 github.com/google/s2a-go v0.1.7 // indirect 99 115 github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect 100 116 github.com/googleapis/gax-go/v2 v2.12.5 // indirect 117 + github.com/gorilla/websocket v1.5.1 // indirect 101 118 github.com/hashicorp/errwrap v1.1.0 // indirect 119 + github.com/hashicorp/go-cleanhttp v0.5.2 // indirect 102 120 github.com/hashicorp/go-multierror v1.1.1 // indirect 121 + github.com/hashicorp/go-retryablehttp v0.7.5 // indirect 103 122 github.com/hashicorp/go-version v1.4.0 // indirect 123 + github.com/hashicorp/golang-lru v1.0.2 // indirect 124 + github.com/hashicorp/golang-lru/arc/v2 v2.0.6 // indirect 125 + github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect 104 126 github.com/holiman/uint256 v1.3.0 // indirect 127 + github.com/ipfs/bbloom v0.0.4 // indirect 128 + github.com/ipfs/go-block-format v0.2.0 // indirect 129 + github.com/ipfs/go-blockservice v0.5.2 // indirect 130 + github.com/ipfs/go-datastore v0.6.0 // indirect 131 + github.com/ipfs/go-ipfs-blockstore v1.3.1 // indirect 132 + github.com/ipfs/go-ipfs-ds-help v1.1.1 // indirect 133 + github.com/ipfs/go-ipfs-exchange-interface v0.2.1 // indirect 134 + github.com/ipfs/go-ipfs-util v0.0.3 // indirect 135 + github.com/ipfs/go-ipld-cbor v0.1.0 // indirect 136 + github.com/ipfs/go-ipld-format v0.6.0 // indirect 137 + github.com/ipfs/go-ipld-legacy v0.2.1 // indirect 138 + github.com/ipfs/go-libipfs v0.7.0 // indirect 139 + github.com/ipfs/go-log v1.0.5 // indirect 140 + github.com/ipfs/go-log/v2 v2.5.1 // indirect 141 + github.com/ipfs/go-merkledag v0.11.0 // indirect 142 + github.com/ipfs/go-metrics-interface v0.0.1 // indirect 143 + github.com/ipfs/go-verifcid v0.0.3 // indirect 144 + github.com/ipld/go-car v0.6.1-0.20230509095817-92d28eb23ba4 // indirect 145 + github.com/ipld/go-car/v2 v2.13.1 // indirect 146 + github.com/ipld/go-codec-dagpb v1.6.0 // indirect 147 + github.com/ipld/go-ipld-prime v0.21.0 // indirect 148 + github.com/jackc/pgpassfile v1.0.0 // indirect 149 + github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 // indirect 150 + github.com/jackc/pgx/v5 v5.5.5 // indirect 151 + github.com/jackc/puddle/v2 v2.2.1 // indirect 105 152 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect 153 + github.com/jbenet/goprocess v0.1.4 // indirect 106 154 github.com/jstemmer/go-junit-report v1.0.0 // indirect 107 155 github.com/kevinburke/ssh_config v1.2.0 // indirect 156 + github.com/klauspost/compress v1.17.3 // indirect 157 + github.com/klauspost/cpuid/v2 v2.2.7 // indirect 158 + github.com/kr/pretty v0.3.1 // indirect 159 + github.com/kr/text v0.2.0 // indirect 108 160 github.com/livepeer/m3u8 v0.11.1 // indirect 109 161 github.com/mattn/go-pointer v0.0.1 // indirect 162 + github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect 110 163 github.com/miekg/pkcs11 v1.1.1 // indirect 164 + github.com/minio/sha256-simd v1.0.1 // indirect 111 165 github.com/mitchellh/gox v1.0.1 // indirect 112 166 github.com/mitchellh/iochan v1.0.0 // indirect 113 167 github.com/mmcloughlin/addchain v0.4.0 // indirect 168 + github.com/mr-tron/base58 v1.2.0 // indirect 169 + github.com/multiformats/go-base32 v0.1.0 // indirect 170 + github.com/multiformats/go-base36 v0.2.0 // indirect 171 + github.com/multiformats/go-multibase v0.2.0 // indirect 172 + github.com/multiformats/go-multicodec v0.9.0 // indirect 173 + github.com/multiformats/go-multihash v0.2.3 // indirect 174 + github.com/multiformats/go-varint v0.0.7 // indirect 175 + github.com/opentracing/opentracing-go v1.2.0 // indirect 176 + github.com/petar/GoLLRB v0.0.0-20210522233825-ae3b015fd3e9 // indirect 114 177 github.com/pjbgf/sha1cd v0.3.0 // indirect 115 178 github.com/pkg/errors v0.9.1 // indirect 179 + github.com/polydawn/refmt v0.89.1-0.20221221234430-40501e09de1f // indirect 116 180 github.com/pquerna/cachecontrol v0.0.0-20180517163645-1555304b9b35 // indirect 181 + github.com/prometheus/client_golang v1.17.0 // indirect 182 + github.com/prometheus/client_model v0.5.0 // indirect 183 + github.com/prometheus/common v0.45.0 // indirect 184 + github.com/prometheus/procfs v0.12.0 // indirect 185 + github.com/rogpeppe/go-internal v1.12.0 // indirect 117 186 github.com/russross/blackfriday/v2 v2.1.0 // indirect 118 187 github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect 119 188 github.com/sirupsen/logrus v1.9.3 // indirect 120 189 github.com/skeema/knownhosts v1.2.2 // indirect 190 + github.com/spaolacci/murmur3 v1.1.0 // indirect 121 191 github.com/stretchr/objx v0.5.2 // indirect 122 192 github.com/supranational/blst v0.3.11 // indirect 123 193 github.com/thales-e-security/pool v0.0.2 // indirect 124 194 github.com/urfave/cli/v2 v2.27.5 // indirect 195 + github.com/whyrusleeping/cbor v0.0.0-20171005072247-63513f603b11 // indirect 196 + github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e // indirect 125 197 github.com/xanzy/ssh-agent v0.3.3 // indirect 126 198 github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect 199 + gitlab.com/yawning/secp256k1-voi v0.0.0-20230925100816-f2616030848b // indirect 200 + gitlab.com/yawning/tuplehash v0.0.0-20230713102510-df83abbf9a02 // indirect 127 201 go.opencensus.io v0.24.0 // indirect 128 202 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect 129 203 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect 130 204 go.opentelemetry.io/otel v1.24.0 // indirect 131 205 go.opentelemetry.io/otel/metric v1.24.0 // indirect 132 206 go.opentelemetry.io/otel/trace v1.24.0 // indirect 207 + go.uber.org/atomic v1.11.0 // indirect 208 + go.uber.org/multierr v1.11.0 // indirect 209 + go.uber.org/zap v1.26.0 // indirect 133 210 golang.org/x/crypto v0.27.0 // indirect 134 211 golang.org/x/oauth2 v0.21.0 // indirect 135 212 golang.org/x/text v0.20.0 // indirect 136 213 golang.org/x/time v0.5.0 // indirect 214 + golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect 137 215 google.golang.org/appengine/v2 v2.0.2 // indirect 138 216 google.golang.org/genproto v0.0.0-20240722135656-d784300faade // indirect 139 217 google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 // indirect ··· 142 220 google.golang.org/protobuf v1.35.1 // indirect 143 221 gopkg.in/warnings.v0 v0.1.2 // indirect 144 222 gorm.io/driver/mysql v1.5.6 // indirect 223 + gorm.io/driver/postgres v1.5.7 // indirect 224 + lukechampine.com/blake3 v1.2.1 // indirect 145 225 rsc.io/tmplfunc v0.0.3 // indirect 146 226 )
+284 -18
go.sum
··· 37 37 github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= 38 38 github.com/ProtonMail/go-crypto v1.0.0 h1:LRuvITjQWX+WIfr930YHG2HNfjR1uOfyf5vE0kC2U78= 39 39 github.com/ProtonMail/go-crypto v1.0.0/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= 40 + github.com/RussellLuo/slidingwindow v0.0.0-20200528002341-535bb99d338b h1:5/++qT1/z812ZqBvqQt6ToRswSuPZ/B33m6xVHRzADU= 41 + github.com/RussellLuo/slidingwindow v0.0.0-20200528002341-535bb99d338b/go.mod h1:4+EPqMRApwwE/6yo6CxiHoSnBzjRr3jsqer7frxP8y4= 40 42 github.com/StackExchange/wmi v1.2.1 h1:VIkavFPXSjcnS+O8yTq7NI32k0R5Aj+v39y29VYDOSA= 41 43 github.com/StackExchange/wmi v1.2.1/go.mod h1:rcmrprowKIVzvc+NUiLncP2uuArMWLCbu9SBzvHz7e8= 42 44 github.com/VictoriaMetrics/fastcache v1.12.2 h1:N0y9ASrJ0F6h0QaC3o6uJb3NIZ9VKLjCM7NQbSmF7WI= 43 45 github.com/VictoriaMetrics/fastcache v1.12.2/go.mod h1:AmC+Nzz1+3G2eCPapF6UcsnkThDcMsQicp4xDukwJYI= 46 + github.com/alexbrainman/goissue34681 v0.0.0-20191006012335-3fc7a47baff5 h1:iW0a5ljuFxkLGPNem5Ui+KBjFJzKg4Fv2fnxe4dvzpM= 47 + github.com/alexbrainman/goissue34681 v0.0.0-20191006012335-3fc7a47baff5/go.mod h1:Y2QMoi1vgtOIfc+6DhrMOGkLoGzqSV2rKp4Sm+opsyA= 44 48 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= 45 49 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= 46 50 github.com/aquareum-tv/crypto11 v0.0.0-20240821184406-43336abc768f h1:XSnkt/A222mS2ZeUMKQHoFVljHQHNMEEDxV/kRhltsM= ··· 49 53 github.com/aquareum-tv/lpms v0.0.0-20240828210246-5ac9b407751e/go.mod h1:z5ROP1l5OzAKSoqVRLc34MjUdueil6wHSecQYV7llIw= 50 54 github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= 51 55 github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= 56 + github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= 57 + github.com/benbjohnson/clock v1.3.0 h1:ip6w0uFQkncKQ979AypyG0ER7mqUSBdKLOgAle/AT8A= 58 + github.com/benbjohnson/clock v1.3.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= 52 59 github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= 53 60 github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= 54 61 github.com/bits-and-blooms/bitset v1.10.0 h1:ePXTeiPEazB5+opbv5fr8umg2R/1NlzgDsyepwsSr88= 55 62 github.com/bits-and-blooms/bitset v1.10.0/go.mod h1:7hO7Gc7Pp1vODcmWvKMRA9BNmbv6a/7QIWpPxHddWR8= 63 + github.com/bluesky-social/indigo v0.0.0-20241119234843-9198b7903723 h1:Is+KjMLL4Kp/Hvua18c3puZqhojEsoqyvMidszNH3Oo= 64 + github.com/bluesky-social/indigo v0.0.0-20241119234843-9198b7903723/go.mod h1:DRpwvwteIrSsbmyf6Mf+3NIy/s6LKrKLJFnqUh1eEsQ= 56 65 github.com/btcsuite/btcd/btcec/v2 v2.2.0 h1:fzn1qaOt32TuLjFlkzYSsBC35Q3KUjT1SwPxiMSCF5k= 57 66 github.com/btcsuite/btcd/btcec/v2 v2.2.0/go.mod h1:U7MHm051Al6XmscBQ0BoNydpOTsFAn707034b5nY8zU= 58 67 github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1 h1:q0rUy8C/TYNBQS1+CGKw68tLOFYSNEs0TFnxxnS9+4U= 59 68 github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= 60 69 github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= 70 + github.com/carlmjohnson/versioninfo v0.22.5 h1:O00sjOLUAFxYQjlN/bzYTuZiS0y6fWDQjMRvwtKgwwc= 71 + github.com/carlmjohnson/versioninfo v0.22.5/go.mod h1:QT9mph3wcVfISUKd0i9sZfVrPviHuSF+cUtLjm2WSf8= 61 72 github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= 62 73 github.com/cespare/cp v0.1.0 h1:SE+dxFebS7Iik5LK0tsi1k9ZCxEaFX4AjQmoyA+1dJk= 63 74 github.com/cespare/cp v0.1.0/go.mod h1:SOGHArjBr4JWaSDEVpWpo/hNg6RoKrls6Oh40hiwW+s= ··· 68 79 github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= 69 80 github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= 70 81 github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= 82 + github.com/cockroachdb/datadriven v1.0.3-0.20230413201302-be42291fc80f h1:otljaYPt5hWxV3MUfO5dFPFiOXg9CyG5/kCfayTqsJ4= 83 + github.com/cockroachdb/datadriven v1.0.3-0.20230413201302-be42291fc80f/go.mod h1:a9RdTaap04u637JoCzcUoIcDmvwSUtcUFtT/C3kJlTU= 71 84 github.com/cockroachdb/errors v1.11.3 h1:5bA+k2Y6r+oz/6Z/RFlNeVCesGARKuC6YymtcDrbC/I= 72 85 github.com/cockroachdb/errors v1.11.3/go.mod h1:m4UIW4CDjx+R5cybPsNrRbreomiFqt8o1h1wUVazSd8= 73 86 github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce h1:giXvy4KSc/6g/esnpM7Geqxka4WSqI1SZc7sMJFd3y4= 74 87 github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce/go.mod h1:9/y3cnZ5GKakj/H4y9r9GTjCvAFta7KLgSHPJJYc52M= 75 88 github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b h1:r6VH0faHjZeQy818SGhaone5OnYfxFR/+AzdY3sf5aE= 76 89 github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b/go.mod h1:Vz9DsVWQQhf3vs21MhPMZpMGSht7O/2vFW2xusFUVOs= 77 - github.com/cockroachdb/pebble v1.1.1 h1:XnKU22oiCLy2Xn8vp1re67cXg4SAasg/WDt1NtcRFaw= 78 - github.com/cockroachdb/pebble v1.1.1/go.mod h1:4exszw1r40423ZsmkG/09AFEG83I0uDgfujJdbL6kYU= 90 + github.com/cockroachdb/pebble v1.1.2 h1:CUh2IPtR4swHlEj48Rhfzw6l/d0qA31fItcIszQVIsA= 91 + github.com/cockroachdb/pebble v1.1.2/go.mod h1:4exszw1r40423ZsmkG/09AFEG83I0uDgfujJdbL6kYU= 79 92 github.com/cockroachdb/redact v1.1.5 h1:u1PMllDkdFfPWaNGMyLD1+so+aq3uUItthCFqzwPJ30= 80 93 github.com/cockroachdb/redact v1.1.5/go.mod h1:BVNblN9mBWFyMyqK1k3AAiSxhvhfK2oOZZ2lK+dpvRg= 81 94 github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 h1:zuQyyAKVxetITBuuhv3BI9cMrmStnpT18zmgmTxunpo= ··· 84 97 github.com/consensys/bavard v0.1.13/go.mod h1:9ItSMtA/dXMAiL7BG6bqW2m3NdSEObYWoH223nGHukI= 85 98 github.com/consensys/gnark-crypto v0.12.1 h1:lHH39WuuFgVHONRl3J0LRBtuYdQTumFSDtJF7HpyG8M= 86 99 github.com/consensys/gnark-crypto v0.12.1/go.mod h1:v2Gy7L/4ZRosZ7Ivs+9SfUDr0f5UlG+EM5t7MPHiLuY= 100 + github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= 87 101 github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc= 88 102 github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= 89 103 github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c h1:uQYC5Z1mdLRPrZhHjHxufI8+2UG/i25QG92j0Er9p6I= 90 104 github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c/go.mod h1:geZJZH3SzKCqnz5VT0q/DyIG/tvu/dZk+VIfXicupJs= 91 105 github.com/crate-crypto/go-kzg-4844 v1.0.0 h1:TsSgHwrkTKecKJ4kadtHi4b3xHW5dCFUDFnUp1TsawI= 92 106 github.com/crate-crypto/go-kzg-4844 v1.0.0/go.mod h1:1kMhvPgI0Ky3yIa+9lFySEBUBXkYxeOi8ZF1sYioxhc= 107 + github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= 108 + github.com/cskr/pubsub v1.0.2 h1:vlOzMhl6PFn60gRlTQQsIfVwaPB/B/8MziK8FhEPt/0= 109 + github.com/cskr/pubsub v1.0.2/go.mod h1:/8MzYXk/NJAz782G8RPkFzXTZVu63VotefPnR9TIRis= 93 110 github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= 94 111 github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= 95 112 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= ··· 106 123 github.com/decred/dcrd/dcrec/secp256k1 v1.0.4/go.mod h1:00z7mJdugt+GBAzPN1QrDRGCXxyKUiexEHu6ukxEw3k= 107 124 github.com/decred/dcrd/dcrec/secp256k1/v2 v2.0.0 h1:3GIJYXQDAKpLEFriGFN8SbSffak10UXHGdIcFaMPykY= 108 125 github.com/decred/dcrd/dcrec/secp256k1/v2 v2.0.0/go.mod h1:3s92l0paYkZoIHuj4X93Teg/HB7eGM9x/zokGw+u4mY= 109 - github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 h1:YLtO71vCjJRCBcrPMtQ9nqBsqpA1m5sE92cU+pd5Mcc= 110 - github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs= 126 + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 h1:8UrgZ3GkP4i/CLijOJx79Yu+etlyjdBU4sfcs2WYQMs= 127 + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0/go.mod h1:v57UDF4pDQJcEfFUCRop3lJL149eHGSe9Jvczhzjo/0= 111 128 github.com/dunglas/httpsfv v1.0.2 h1:iERDp/YAfnojSDJ7PW3dj1AReJz4MrwbECSSE59JWL0= 112 129 github.com/dunglas/httpsfv v1.0.2/go.mod h1:zID2mqw9mFsnt7YC3vYQ9/cjq30q41W+1AnDwH8TiMg= 113 130 github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= ··· 126 143 github.com/ethereum/go-verkle v0.1.1-0.20240306133620-7d920df305f0/go.mod h1:D9AJLVXSyZQXJQVk8oh1EwjISE+sJTn2duYIZC0dy3w= 127 144 github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= 128 145 github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= 146 + github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= 147 + github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= 129 148 github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= 130 149 github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= 131 150 github.com/getsentry/sentry-go v0.27.0 h1:Pv98CIbtB3LkMWmXi4Joa5OOcwbmnX88sF5qbK3r3Ps= 132 151 github.com/getsentry/sentry-go v0.27.0/go.mod h1:lc76E2QywIyW8WuBnwl8Lc4bkmQH4+w1gwTf25trprY= 133 152 github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= 134 153 github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= 154 + github.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxIA= 155 + github.com/go-errors/errors v1.4.2/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= 135 156 github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= 136 157 github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= 137 158 github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= ··· 151 172 github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= 152 173 github.com/go-ole/go-ole v1.3.0 h1:Dt6ye7+vXGIKZ7Xtk4s6/xVdGDQynvom7xCFEdWr6uE= 153 174 github.com/go-ole/go-ole v1.3.0/go.mod h1:5LS6F96DhAwUc7C+1HLexzMXY1xGRSryjyPPKW6zv78= 175 + github.com/go-redis/redis v6.15.9+incompatible h1:K0pv1D7EQUjfyoMql+r/jZqCLizCGKFlFgcHWWmHQjg= 176 + github.com/go-redis/redis v6.15.9+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= 154 177 github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= 155 178 github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= 156 179 github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= 180 + github.com/go-yaml/yaml v2.1.0+incompatible/go.mod h1:w2MrLa16VYP0jy6N7M5kHaCkaLENm+P+Tv+MfurjSw0= 157 181 github.com/gofrs/flock v0.8.1 h1:+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw= 158 182 github.com/gofrs/flock v0.8.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU= 159 183 github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= ··· 198 222 github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= 199 223 github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= 200 224 github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= 225 + github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8= 226 + github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo= 201 227 github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= 202 228 github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= 229 + github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= 203 230 github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= 204 231 github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= 205 232 github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= ··· 210 237 github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0= 211 238 github.com/googleapis/gax-go/v2 v2.12.5 h1:8gw9KZK8TiVKB6q3zHY3SBzLnrGp6HQjyfYBYGmXdxA= 212 239 github.com/googleapis/gax-go/v2 v2.12.5/go.mod h1:BUDKcWo+RaKq5SC9vVYL0wLADa3VcfswbOMMRmB9H3E= 240 + github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8= 241 + github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= 242 + github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= 243 + github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= 213 244 github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= 214 245 github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= 215 246 github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= 247 + github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= 248 + github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48= 249 + github.com/hashicorp/go-hclog v0.9.2 h1:CG6TE5H9/JXsFWJCfoIVpKFIkFe6ysEuHirp4DxCsHI= 250 + github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= 216 251 github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= 217 252 github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= 253 + github.com/hashicorp/go-retryablehttp v0.7.5 h1:bJj+Pj19UZMIweq/iie+1u5YCdGrnxCT9yvm0e+Nd5M= 254 + github.com/hashicorp/go-retryablehttp v0.7.5/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8= 218 255 github.com/hashicorp/go-version v1.0.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= 219 256 github.com/hashicorp/go-version v1.4.0 h1:aAQzgqIrRKRa7w75CKpbBxYsmUoPjzVm1W59ca1L0J4= 220 257 github.com/hashicorp/go-version v1.4.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= 258 + github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c= 259 + github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= 260 + github.com/hashicorp/golang-lru/arc/v2 v2.0.6 h1:4NU7uP5vSoK6TbaMj3NtY478TTAWLso/vL1gpNrInHg= 261 + github.com/hashicorp/golang-lru/arc/v2 v2.0.6/go.mod h1:cfdDIX05DWvYV6/shsxDfa/OVcRieOt+q4FnM8x+Xno= 262 + github.com/hashicorp/golang-lru/v2 v2.0.7 h1:a+bsQ5rvGLjzHuww6tVxozPZFVghXaHOwFs4luLUK2k= 263 + github.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= 221 264 github.com/holiman/uint256 v1.3.0 h1:4wdcm/tnd0xXdu7iS3ruNvxkWwrb4aeBQv19ayYn8F4= 222 265 github.com/holiman/uint256 v1.3.0/go.mod h1:EOMSn4q6Nyt9P6efbI3bueV4e1b3dGlUCXeiRV4ng7E= 266 + github.com/huin/goupnp v1.3.0 h1:UvLUlWDNpoUdYzb2TCn+MuTWtcjXKSza2n6CBdQ0xXc= 267 + github.com/huin/goupnp v1.3.0/go.mod h1:gnGPsThkYa7bFi/KWmEysQRf48l2dvR5bxr2OFckNX8= 268 + github.com/ipfs/bbloom v0.0.4 h1:Gi+8EGJ2y5qiD5FbsbpX/TMNcJw8gSqr7eyjHa4Fhvs= 269 + github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0= 270 + github.com/ipfs/go-bitfield v1.1.0 h1:fh7FIo8bSwaJEh6DdTWbCeZ1eqOaOkKFI74SCnsWbGA= 271 + github.com/ipfs/go-bitfield v1.1.0/go.mod h1:paqf1wjq/D2BBmzfTVFlJQ9IlFOZpg422HL0HqsGWHU= 272 + github.com/ipfs/go-bitswap v0.11.0 h1:j1WVvhDX1yhG32NTC9xfxnqycqYIlhzEzLXG/cU1HyQ= 273 + github.com/ipfs/go-bitswap v0.11.0/go.mod h1:05aE8H3XOU+LXpTedeAS0OZpcO1WFsj5niYQH9a1Tmk= 274 + github.com/ipfs/go-block-format v0.2.0 h1:ZqrkxBA2ICbDRbK8KJs/u0O3dlp6gmAuuXUJNiW1Ycs= 275 + github.com/ipfs/go-block-format v0.2.0/go.mod h1:+jpL11nFx5A/SPpsoBn6Bzkra/zaArfSmsknbPMYgzM= 276 + github.com/ipfs/go-blockservice v0.5.2 h1:in9Bc+QcXwd1apOVM7Un9t8tixPKdaHQFdLSUM1Xgk8= 277 + github.com/ipfs/go-blockservice v0.5.2/go.mod h1:VpMblFEqG67A/H2sHKAemeH9vlURVavlysbdUI632yk= 278 + github.com/ipfs/go-bs-sqlite3 v0.0.0-20221122195556-bfcee1be620d h1:9V+GGXCuOfDiFpdAHz58q9mKLg447xp0cQKvqQrAwYE= 279 + github.com/ipfs/go-bs-sqlite3 v0.0.0-20221122195556-bfcee1be620d/go.mod h1:pMbnFyNAGjryYCLCe59YDLRv/ujdN+zGJBT1umlvYRM= 280 + github.com/ipfs/go-cid v0.4.1 h1:A/T3qGvxi4kpKWWcPC/PgbvDA2bjVLO7n4UeVwnbs/s= 281 + github.com/ipfs/go-cid v0.4.1/go.mod h1:uQHwDeX4c6CtyrFwdqyhpNcxVewur1M7l7fNU7LKwZk= 282 + github.com/ipfs/go-datastore v0.6.0 h1:JKyz+Gvz1QEZw0LsX1IBn+JFCJQH4SJVFtM4uWU0Myk= 283 + github.com/ipfs/go-datastore v0.6.0/go.mod h1:rt5M3nNbSO/8q1t4LNkLyUwRs8HupMeN/8O4Vn9YAT8= 284 + github.com/ipfs/go-detect-race v0.0.1 h1:qX/xay2W3E4Q1U7d9lNs1sU9nvguX0a7319XbyQ6cOk= 285 + github.com/ipfs/go-detect-race v0.0.1/go.mod h1:8BNT7shDZPo99Q74BpGMK+4D8Mn4j46UU0LZ723meps= 286 + github.com/ipfs/go-ds-flatfs v0.5.1 h1:ZCIO/kQOS/PSh3vcF1H6a8fkRGS7pOfwfPdx4n/KJH4= 287 + github.com/ipfs/go-ds-flatfs v0.5.1/go.mod h1:RWTV7oZD/yZYBKdbVIFXTX2fdY2Tbvl94NsWqmoyAX4= 288 + github.com/ipfs/go-ipfs-blockstore v1.3.1 h1:cEI9ci7V0sRNivqaOr0elDsamxXFxJMMMy7PTTDQNsQ= 289 + github.com/ipfs/go-ipfs-blockstore v1.3.1/go.mod h1:KgtZyc9fq+P2xJUiCAzbRdhhqJHvsw8u2Dlqy2MyRTE= 290 + github.com/ipfs/go-ipfs-blocksutil v0.0.1 h1:Eh/H4pc1hsvhzsQoMEP3Bke/aW5P5rVM1IWFJMcGIPQ= 291 + github.com/ipfs/go-ipfs-blocksutil v0.0.1/go.mod h1:Yq4M86uIOmxmGPUHv/uI7uKqZNtLb449gwKqXjIsnRk= 292 + github.com/ipfs/go-ipfs-chunker v0.0.5 h1:ojCf7HV/m+uS2vhUGWcogIIxiO5ubl5O57Q7NapWLY8= 293 + github.com/ipfs/go-ipfs-chunker v0.0.5/go.mod h1:jhgdF8vxRHycr00k13FM8Y0E+6BoalYeobXmUyTreP8= 294 + github.com/ipfs/go-ipfs-delay v0.0.1 h1:r/UXYyRcddO6thwOnhiznIAiSvxMECGgtv35Xs1IeRQ= 295 + github.com/ipfs/go-ipfs-delay v0.0.1/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= 296 + github.com/ipfs/go-ipfs-ds-help v1.1.1 h1:B5UJOH52IbcfS56+Ul+sv8jnIV10lbjLF5eOO0C66Nw= 297 + github.com/ipfs/go-ipfs-ds-help v1.1.1/go.mod h1:75vrVCkSdSFidJscs8n4W+77AtTpCIAdDGAwjitJMIo= 298 + github.com/ipfs/go-ipfs-exchange-interface v0.2.1 h1:jMzo2VhLKSHbVe+mHNzYgs95n0+t0Q69GQ5WhRDZV/s= 299 + github.com/ipfs/go-ipfs-exchange-interface v0.2.1/go.mod h1:MUsYn6rKbG6CTtsDp+lKJPmVt3ZrCViNyH3rfPGsZ2E= 300 + github.com/ipfs/go-ipfs-exchange-offline v0.3.0 h1:c/Dg8GDPzixGd0MC8Jh6mjOwU57uYokgWRFidfvEkuA= 301 + github.com/ipfs/go-ipfs-exchange-offline v0.3.0/go.mod h1:MOdJ9DChbb5u37M1IcbrRB02e++Z7521fMxqCNRrz9s= 302 + github.com/ipfs/go-ipfs-pq v0.0.3 h1:YpoHVJB+jzK15mr/xsWC574tyDLkezVrDNeaalQBsTE= 303 + github.com/ipfs/go-ipfs-pq v0.0.3/go.mod h1:btNw5hsHBpRcSSgZtiNm/SLj5gYIZ18AKtv3kERkRb4= 304 + github.com/ipfs/go-ipfs-routing v0.3.0 h1:9W/W3N+g+y4ZDeffSgqhgo7BsBSJwPMcyssET9OWevc= 305 + github.com/ipfs/go-ipfs-routing v0.3.0/go.mod h1:dKqtTFIql7e1zYsEuWLyuOU+E0WJWW8JjbTPLParDWo= 306 + github.com/ipfs/go-ipfs-util v0.0.3 h1:2RFdGez6bu2ZlZdI+rWfIdbQb1KudQp3VGwPtdNCmE0= 307 + github.com/ipfs/go-ipfs-util v0.0.3/go.mod h1:LHzG1a0Ig4G+iZ26UUOMjHd+lfM84LZCrn17xAKWBvs= 308 + github.com/ipfs/go-ipld-cbor v0.1.0 h1:dx0nS0kILVivGhfWuB6dUpMa/LAwElHPw1yOGYopoYs= 309 + github.com/ipfs/go-ipld-cbor v0.1.0/go.mod h1:U2aYlmVrJr2wsUBU67K4KgepApSZddGRDWBYR0H4sCk= 310 + github.com/ipfs/go-ipld-format v0.6.0 h1:VEJlA2kQ3LqFSIm5Vu6eIlSxD/Ze90xtc4Meten1F5U= 311 + github.com/ipfs/go-ipld-format v0.6.0/go.mod h1:g4QVMTn3marU3qXchwjpKPKgJv+zF+OlaKMyhJ4LHPg= 312 + github.com/ipfs/go-ipld-legacy v0.2.1 h1:mDFtrBpmU7b//LzLSypVrXsD8QxkEWxu5qVxN99/+tk= 313 + github.com/ipfs/go-ipld-legacy v0.2.1/go.mod h1:782MOUghNzMO2DER0FlBR94mllfdCJCkTtDtPM51otM= 314 + github.com/ipfs/go-libipfs v0.7.0 h1:Mi54WJTODaOL2/ZSm5loi3SwI3jI2OuFWUrQIkJ5cpM= 315 + github.com/ipfs/go-libipfs v0.7.0/go.mod h1:KsIf/03CqhICzyRGyGo68tooiBE2iFbI/rXW7FhAYr0= 316 + github.com/ipfs/go-log v1.0.5 h1:2dOuUCB1Z7uoczMWgAyDck5JLb72zHzrMnGnCNNbvY8= 317 + github.com/ipfs/go-log v1.0.5/go.mod h1:j0b8ZoR+7+R99LD9jZ6+AJsrzkPbSXbZfGakb5JPtIo= 318 + github.com/ipfs/go-log/v2 v2.1.3/go.mod h1:/8d0SH3Su5Ooc31QlL1WysJhvyOTDCjcCZ9Axpmri6g= 319 + github.com/ipfs/go-log/v2 v2.5.1 h1:1XdUzF7048prq4aBjDQQ4SL5RxftpRGdXhNRwKSAlcY= 320 + github.com/ipfs/go-log/v2 v2.5.1/go.mod h1:prSpmC1Gpllc9UYWxDiZDreBYw7zp4Iqp1kOLU9U5UI= 321 + github.com/ipfs/go-merkledag v0.11.0 h1:DgzwK5hprESOzS4O1t/wi6JDpyVQdvm9Bs59N/jqfBY= 322 + github.com/ipfs/go-merkledag v0.11.0/go.mod h1:Q4f/1ezvBiJV0YCIXvt51W/9/kqJGH4I1LsA7+djsM4= 323 + github.com/ipfs/go-metrics-interface v0.0.1 h1:j+cpbjYvu4R8zbleSs36gvB7jR+wsL2fGD6n0jO4kdg= 324 + github.com/ipfs/go-metrics-interface v0.0.1/go.mod h1:6s6euYU4zowdslK0GKHmqaIZ3j/b/tL7HTWtJ4VPgWY= 325 + github.com/ipfs/go-peertaskqueue v0.8.1 h1:YhxAs1+wxb5jk7RvS0LHdyiILpNmRIRnZVztekOF0pg= 326 + github.com/ipfs/go-peertaskqueue v0.8.1/go.mod h1:Oxxd3eaK279FxeydSPPVGHzbwVeHjatZ2GA8XD+KbPU= 327 + github.com/ipfs/go-unixfsnode v1.8.0 h1:yCkakzuE365glu+YkgzZt6p38CSVEBPgngL9ZkfnyQU= 328 + github.com/ipfs/go-unixfsnode v1.8.0/go.mod h1:HxRu9HYHOjK6HUqFBAi++7DVoWAHn0o4v/nZ/VA+0g8= 329 + github.com/ipfs/go-verifcid v0.0.3 h1:gmRKccqhWDocCRkC+a59g5QW7uJw5bpX9HWBevXa0zs= 330 + github.com/ipfs/go-verifcid v0.0.3/go.mod h1:gcCtGniVzelKrbk9ooUSX/pM3xlH73fZZJDzQJRvOUw= 331 + github.com/ipld/go-car v0.6.1-0.20230509095817-92d28eb23ba4 h1:oFo19cBmcP0Cmg3XXbrr0V/c+xU9U1huEZp8+OgBzdI= 332 + github.com/ipld/go-car v0.6.1-0.20230509095817-92d28eb23ba4/go.mod h1:6nkFF8OmR5wLKBzRKi7/YFJpyYR7+oEn1DX+mMWnlLA= 333 + github.com/ipld/go-car/v2 v2.13.1 h1:KnlrKvEPEzr5IZHKTXLAEub+tPrzeAFQVRlSQvuxBO4= 334 + github.com/ipld/go-car/v2 v2.13.1/go.mod h1:QkdjjFNGit2GIkpQ953KBwowuoukoM75nP/JI1iDJdo= 335 + github.com/ipld/go-codec-dagpb v1.6.0 h1:9nYazfyu9B1p3NAgfVdpRco3Fs2nFC72DqVsMj6rOcc= 336 + github.com/ipld/go-codec-dagpb v1.6.0/go.mod h1:ANzFhfP2uMJxRBr8CE+WQWs5UsNa0pYtmKZ+agnUw9s= 337 + github.com/ipld/go-ipld-prime v0.21.0 h1:n4JmcpOlPDIxBcY037SVfpd1G+Sj1nKZah0m6QH9C2E= 338 + github.com/ipld/go-ipld-prime v0.21.0/go.mod h1:3RLqy//ERg/y5oShXXdx5YIp50cFGOanyMctpPjsvxQ= 339 + github.com/ipld/go-ipld-prime/storage/bsadapter v0.0.0-20230102063945-1a409dc236dd h1:gMlw/MhNr2Wtp5RwGdsW23cs+yCuj9k2ON7i9MiJlRo= 340 + github.com/ipld/go-ipld-prime/storage/bsadapter v0.0.0-20230102063945-1a409dc236dd/go.mod h1:wZ8hH8UxeryOs4kJEJaiui/s00hDSbE37OKsL47g+Sw= 223 341 github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= 224 342 github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= 225 343 github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 h1:L0QtFUgDarD7Fpv9jeVMgy/+Ec0mtnmYuImjTz6dtDA= ··· 228 346 github.com/jackc/pgx/v5 v5.5.5/go.mod h1:ez9gk+OAat140fv9ErkZDYFWmXLfV+++K0uAOiwgm1A= 229 347 github.com/jackc/puddle/v2 v2.2.1 h1:RhxXJtFG022u4ibrCSMSiu5aOq1i77R3OHKNJj77OAk= 230 348 github.com/jackc/puddle/v2 v2.2.1/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= 349 + github.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus= 350 + github.com/jackpal/go-nat-pmp v1.0.2/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= 351 + github.com/jbenet/go-cienv v0.1.0/go.mod h1:TqNnHUmJgXau0nCzC7kXWeotg3J9W34CUv5Djy1+FlA= 231 352 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= 232 353 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= 354 + github.com/jbenet/goprocess v0.1.4 h1:DRGOFReOMqqDNXwW70QkacFW0YN9QnwLV0Vqk+3oU0o= 355 + github.com/jbenet/goprocess v0.1.4/go.mod h1:5yspPrukOVuOLORacaBi858NqyClJPQxYZlqdZVfqY4= 233 356 github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= 234 357 github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= 235 358 github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= ··· 238 361 github.com/johncgriffin/overflow v0.0.0-20211019200055-46fa312c352c/go.mod h1:B9OPZOhZ3FIi6bu54lAgCMzXLh11Z7ilr3rOr/ClP+E= 239 362 github.com/jstemmer/go-junit-report v1.0.0 h1:8X1gzZpR+nVQLAht+L/foqOeX2l9DTZoaIPbEQHxsds= 240 363 github.com/jstemmer/go-junit-report v1.0.0/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= 364 + github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo= 365 + github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= 241 366 github.com/julienschmidt/httprouter v1.3.0 h1:U0609e9tgbseu3rBINet9P48AI/D3oJs4dN7jwJOQ1U= 242 367 github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= 243 368 github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4= 244 369 github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= 245 - github.com/klauspost/compress v1.16.0 h1:iULayQNOReoYUe+1qtKOqw9CwJv3aNQu8ivo7lw1HU4= 246 - github.com/klauspost/compress v1.16.0/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= 370 + github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= 371 + github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= 372 + github.com/klauspost/compress v1.17.3 h1:qkRjuerhUU1EmXLYGkSH6EZL+vPSxIrYjLNAK4slzwA= 373 + github.com/klauspost/compress v1.17.3/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= 374 + github.com/klauspost/cpuid/v2 v2.2.7 h1:ZWSB3igEs+d0qvnxR/ZBzXVmxkgt8DdzP6m9pfuVLDM= 375 + github.com/klauspost/cpuid/v2 v2.2.7/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= 376 + github.com/koron/go-ssdp v0.0.3 h1:JivLMY45N76b4p/vsWGOKewBQu6uf39y8l+AQ7sDKx8= 377 + github.com/koron/go-ssdp v0.0.3/go.mod h1:b2MxI6yh02pKrsyNoQUsk4+YNikaGhe4894J+Q5lDvA= 247 378 github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= 248 379 github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= 249 380 github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= ··· 255 386 github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= 256 387 github.com/leanovate/gopter v0.2.9 h1:fQjYxZaynp97ozCzfOyOuAGOU4aU/z37zf/tOujFk7c= 257 388 github.com/leanovate/gopter v0.2.9/go.mod h1:U2L/78B+KVFIx2VmW6onHJQzXtFb+p5y3y2Sh+Jxxv8= 389 + github.com/libp2p/go-buffer-pool v0.1.0 h1:oK4mSFcQz7cTQIfqbe4MIj9gLW+mnanjyFtc6cdF0Y8= 390 + github.com/libp2p/go-buffer-pool v0.1.0/go.mod h1:N+vh8gMqimBzdKkSMVuydVDq+UV5QTWy5HSiZacSbPg= 391 + github.com/libp2p/go-cidranger v1.1.0 h1:ewPN8EZ0dd1LSnrtuwd4709PXVcITVeuwbag38yPW7c= 392 + github.com/libp2p/go-cidranger v1.1.0/go.mod h1:KWZTfSr+r9qEo9OkI9/SIEeAtw+NNoU0dXIXt15Okic= 393 + github.com/libp2p/go-libp2p v0.25.1 h1:YK+YDCHpYyTvitKWVxa5PfElgIpOONU01X5UcLEwJGA= 394 + github.com/libp2p/go-libp2p v0.25.1/go.mod h1:xnK9/1d9+jeQCVvi/f1g12KqtVi/jP/SijtKV1hML3g= 395 + github.com/libp2p/go-libp2p-asn-util v0.2.0 h1:rg3+Os8jbnO5DxkC7K/Utdi+DkY3q/d1/1q+8WeNAsw= 396 + github.com/libp2p/go-libp2p-asn-util v0.2.0/go.mod h1:WoaWxbHKBymSN41hWSq/lGKJEca7TNm58+gGJi2WsLI= 397 + github.com/libp2p/go-libp2p-record v0.2.0 h1:oiNUOCWno2BFuxt3my4i1frNrt7PerzB3queqa1NkQ0= 398 + github.com/libp2p/go-libp2p-record v0.2.0/go.mod h1:I+3zMkvvg5m2OcSdoL0KPljyJyvNDFGKX7QdlpYUcwk= 399 + github.com/libp2p/go-libp2p-testing v0.12.0 h1:EPvBb4kKMWO29qP4mZGyhVzUyR25dvfUIK5WDu6iPUA= 400 + github.com/libp2p/go-libp2p-testing v0.12.0/go.mod h1:KcGDRXyN7sQCllucn1cOOS+Dmm7ujhfEyXQL5lvkcPg= 401 + github.com/libp2p/go-msgio v0.3.0 h1:mf3Z8B1xcFN314sWX+2vOTShIE0Mmn2TXn3YCUQGNj0= 402 + github.com/libp2p/go-msgio v0.3.0/go.mod h1:nyRM819GmVaF9LX3l03RMh10QdOroF++NBbxAb0mmDM= 403 + github.com/libp2p/go-nat v0.1.0 h1:MfVsH6DLcpa04Xr+p8hmVRG4juse0s3J8HyNWYHffXg= 404 + github.com/libp2p/go-nat v0.1.0/go.mod h1:X7teVkwRHNInVNWQiO/tAiAVRwSr5zoRz4YSTC3uRBM= 405 + github.com/libp2p/go-netroute v0.2.1 h1:V8kVrpD8GK0Riv15/7VN6RbUQ3URNZVosw7H2v9tksU= 406 + github.com/libp2p/go-netroute v0.2.1/go.mod h1:hraioZr0fhBjG0ZRXJJ6Zj2IVEVNx6tDTFQfSmcq7mQ= 258 407 github.com/livepeer/joy4 v0.1.2-0.20191121080656-b2fea45cbded/go.mod h1:xkDdm+akniYxVT9KW1Y2Y7Hso6aW+rZObz3nrA9yTHw= 259 408 github.com/livepeer/m3u8 v0.11.1 h1:VkUJzfNTyjy9mqsgp5JPvouwna8wGZMvd/gAfT5FinU= 260 409 github.com/livepeer/m3u8 v0.11.1/go.mod h1:IUqAtwWPAG2CblfQa4SVzTQoDcEMPyfNOaBSxqHMS04= 261 410 github.com/lmittmann/tint v1.0.4 h1:LeYihpJ9hyGvE0w+K2okPTGUdVLfng1+nDNVR4vWISc= 262 411 github.com/lmittmann/tint v1.0.4/go.mod h1:HIS3gSy7qNwGCj+5oRjAutErFBl4BzdQP6cJZ0NfMwE= 412 + github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= 263 413 github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= 264 414 github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= 265 415 github.com/mattn/go-pointer v0.0.1 h1:n+XhsuGeVO6MEAp7xyEukFINEa+Quek5psIR/ylA6o0= ··· 268 418 github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= 269 419 github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= 270 420 github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= 271 - github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI= 272 - github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= 421 + github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= 422 + github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= 273 423 github.com/microsoft/go-mssqldb v0.17.0 h1:Fto83dMZPnYv1Zwx5vHHxpNraeEaUlQ/hhHLgZiaenE= 274 424 github.com/microsoft/go-mssqldb v0.17.0/go.mod h1:OkoNGhGEs8EZqchVTtochlXruEhEOaO4S0d2sB5aeGQ= 425 + github.com/miekg/dns v1.1.50 h1:DQUfb9uc6smULcREF09Uc+/Gd46YWqJd5DbpPE9xkcA= 426 + github.com/miekg/dns v1.1.50/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME= 275 427 github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU= 276 428 github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= 429 + github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM= 430 + github.com/minio/sha256-simd v1.0.1/go.mod h1:Pz6AKMiUdngCLpeTL/RJY1M9rUuPMYujV5xJjtbRSN8= 277 431 github.com/mitchellh/gox v1.0.1 h1:x0jD3dcHk9a9xPSDN6YEL4xL6Qz0dvNYm8yZqui5chI= 278 432 github.com/mitchellh/gox v1.0.1/go.mod h1:ED6BioOGXMswlXa2zxfh/xdd5QhwYliBFn9V18Ap4z4= 279 433 github.com/mitchellh/iochan v1.0.0 h1:C+X3KsSTLFVBr/tK1eYN/vs4rJcvsiLU338UhYPJWeY= ··· 281 435 github.com/mmcloughlin/addchain v0.4.0 h1:SobOdjm2xLj1KkXN5/n0xTIWyZA2+s99UCY1iPfkHRY= 282 436 github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqkyU72HC5wJ4RlU= 283 437 github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= 438 + github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= 439 + github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= 440 + github.com/multiformats/go-base32 v0.1.0 h1:pVx9xoSPqEIQG8o+UbAe7DNi51oej1NtK+aGkbLYxPE= 441 + github.com/multiformats/go-base32 v0.1.0/go.mod h1:Kj3tFY6zNr+ABYMqeUNeGvkIC/UYgtWibDcT0rExnbI= 442 + github.com/multiformats/go-base36 v0.2.0 h1:lFsAbNOGeKtuKozrtBsAkSVhv1p9D0/qedU9rQyccr0= 443 + github.com/multiformats/go-base36 v0.2.0/go.mod h1:qvnKE++v+2MWCfePClUEjE78Z7P2a1UV0xHgWc0hkp4= 444 + github.com/multiformats/go-multiaddr v0.8.0 h1:aqjksEcqK+iD/Foe1RRFsGZh8+XFiGo7FgUCZlpv3LU= 445 + github.com/multiformats/go-multiaddr v0.8.0/go.mod h1:Fs50eBDWvZu+l3/9S6xAE7ZYj6yhxlvaVZjakWN7xRs= 446 + github.com/multiformats/go-multiaddr-dns v0.3.1 h1:QgQgR+LQVt3NPTjbrLLpsaT2ufAA2y0Mkk+QRVJbW3A= 447 + github.com/multiformats/go-multiaddr-dns v0.3.1/go.mod h1:G/245BRQ6FJGmryJCrOuTdB37AMA5AMOVuO6NY3JwTk= 448 + github.com/multiformats/go-multiaddr-fmt v0.1.0 h1:WLEFClPycPkp4fnIzoFoV9FVd49/eQsuaL3/CWe167E= 449 + github.com/multiformats/go-multiaddr-fmt v0.1.0/go.mod h1:hGtDIW4PU4BqJ50gW2quDuPVjyWNZxToGUh/HwTZYJo= 450 + github.com/multiformats/go-multibase v0.2.0 h1:isdYCVLvksgWlMW9OZRYJEa9pZETFivncJHmHnnd87g= 451 + github.com/multiformats/go-multibase v0.2.0/go.mod h1:bFBZX4lKCA/2lyOFSAoKH5SS6oPyjtnzK/XTFDPkNuk= 452 + github.com/multiformats/go-multicodec v0.9.0 h1:pb/dlPnzee/Sxv/j4PmkDRxCOi3hXTz3IbPKOXWJkmg= 453 + github.com/multiformats/go-multicodec v0.9.0/go.mod h1:L3QTQvMIaVBkXOXXtVmYE+LI16i14xuaojr/H7Ai54k= 454 + github.com/multiformats/go-multihash v0.2.3 h1:7Lyc8XfX/IY2jWb/gI7JP+o7JEq9hOa7BFvVU9RSh+U= 455 + github.com/multiformats/go-multihash v0.2.3/go.mod h1:dXgKXCXjBzdscBLk9JkjINiEsCKRVch90MdaGiKsvSM= 456 + github.com/multiformats/go-multistream v0.4.1 h1:rFy0Iiyn3YT0asivDUIR05leAdwZq3de4741sbiSdfo= 457 + github.com/multiformats/go-multistream v0.4.1/go.mod h1:Mz5eykRVAjJWckE2U78c6xqdtyNUEhKSM0Lwar2p77Q= 458 + github.com/multiformats/go-varint v0.0.7 h1:sWSGR+f/eu5ABZA2ZpYKBILXTTs9JWpdEM/nEGOHFS8= 459 + github.com/multiformats/go-varint v0.0.7/go.mod h1:r8PUYw/fD/SjBCiKOoDlGF6QawOELpZAu9eioSos/OU= 284 460 github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= 285 461 github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= 286 462 github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= 287 463 github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= 464 + github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= 465 + github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= 288 466 github.com/orandin/slog-gorm v1.3.2 h1:C0lKDQPAx/pF+8K2HL7bdShPwOEJpPM0Bn80zTzxU1g= 289 467 github.com/orandin/slog-gorm v1.3.2/go.mod h1:MoZ51+b7xE9lwGNPYEhxcUtRNrYzjdcKvA8QXQQGEPA= 468 + github.com/petar/GoLLRB v0.0.0-20210522233825-ae3b015fd3e9 h1:1/WtZae0yGtPq+TI6+Tv1WTxkukpXeMlviSxvL7SRgk= 469 + github.com/petar/GoLLRB v0.0.0-20210522233825-ae3b015fd3e9/go.mod h1:x3N5drFsm2uilKKuuYo6LdyD8vZAW55sH/9w+pbo1sw= 290 470 github.com/peterbourgon/ff/v3 v3.3.1 h1:XSWvXxeNdgeppLNGGJEAOiXRdX2YMF/LuZfdnqQ1SNc= 291 471 github.com/peterbourgon/ff/v3 v3.3.1/go.mod h1:zjJVUhx+twciwfDl0zBcFzl4dW8axCRyXE/eKY9RztQ= 472 + github.com/pingcap/errors v0.11.4 h1:lFuQV/oaUMGcD2tqt+01ROSmJs75VG1ToEOkZIZ4nE4= 473 + github.com/pingcap/errors v0.11.4/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8= 292 474 github.com/piprate/json-gold v0.5.0 h1:RmGh1PYboCFcchVFuh2pbSWAZy4XJaqTMU4KQYsApbM= 293 475 github.com/piprate/json-gold v0.5.0/go.mod h1:WZ501QQMbZZ+3pXFPhQKzNwS1+jls0oqov3uQ2WasLs= 294 476 github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= 295 477 github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= 478 + github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= 479 + github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= 296 480 github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= 297 481 github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= 298 482 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= 299 483 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= 484 + github.com/polydawn/refmt v0.89.1-0.20221221234430-40501e09de1f h1:VXTQfuJj9vKR4TCkEuWIckKvdHFeJH/huIFJ9/cXOB0= 485 + github.com/polydawn/refmt v0.89.1-0.20221221234430-40501e09de1f/go.mod h1:/zvteZs/GwLtCgZ4BL6CBsk9IKIlexP43ObX9AxTqTw= 300 486 github.com/pquerna/cachecontrol v0.0.0-20180517163645-1555304b9b35 h1:J9b7z+QKAmPf4YLrFg6oQUotqHQeUNWwkvo7jZp1GLU= 301 487 github.com/pquerna/cachecontrol v0.0.0-20180517163645-1555304b9b35/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= 302 - github.com/prometheus/client_golang v1.12.0 h1:C+UIj/QWtmqY13Arb8kwMt5j34/0Z2iKamrJ+ryC0Gg= 303 - github.com/prometheus/client_golang v1.12.0/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= 488 + github.com/prometheus/client_golang v1.17.0 h1:rl2sfwZMtSthVU752MqfjQozy7blglC+1SOtjMAMh+Q= 489 + github.com/prometheus/client_golang v1.17.0/go.mod h1:VeL+gMmOAxkS2IqfCq0ZmHSL+LjWfWDUmp1mBz9JgUY= 304 490 github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= 305 - github.com/prometheus/client_model v0.2.1-0.20210607210712-147c58e9608a h1:CmF68hwI0XsOQ5UwlBopMi2Ow4Pbg32akc4KIVCOm+Y= 306 - github.com/prometheus/client_model v0.2.1-0.20210607210712-147c58e9608a/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= 307 - github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= 308 - github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= 309 - github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= 310 - github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= 491 + github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw= 492 + github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI= 493 + github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= 494 + github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY= 495 + github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo= 496 + github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= 311 497 github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= 312 498 github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= 499 + github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= 500 + github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= 313 501 github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= 314 502 github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= 315 503 github.com/rs/cors v1.7.0 h1:+88SsELBHx5r+hZ8TCkggzSstaWNbDvThkVK8H6f9ik= 316 504 github.com/rs/cors v1.7.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= 505 + github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= 317 506 github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= 318 507 github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= 319 508 github.com/samber/slog-http v1.4.0 h1:s2hSzMlQBFDIPTUBDm6G+SGfv7F4xR9q8edjxtY6aho= ··· 322 511 github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= 323 512 github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible h1:Bn1aCHHRnjv4Bl16T8rcaFjYSrGrIZvpiGO6P3Q4GpU= 324 513 github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= 514 + github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= 325 515 github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= 326 516 github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= 327 517 github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= ··· 329 519 github.com/skeema/knownhosts v1.2.2/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= 330 520 github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e h1:MRM5ITcdelLK2j1vwZ3Je0FKVCfqOLp5zO6trqMLYs0= 331 521 github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e/go.mod h1:XV66xRDqSt+GTGFMVlhk3ULuV0y9ZmzeVGR4mloJI3M= 522 + github.com/smartystreets/assertions v1.2.0 h1:42S6lae5dvLc7BrLu/0ugRtcFVjoJNMC/N3yZFZkDFs= 523 + github.com/smartystreets/assertions v1.2.0/go.mod h1:tcbTF8ujkAEcZ8TElKY+i30BzYlVhC/LOxJk7iOWnoo= 524 + github.com/smartystreets/goconvey v1.7.2 h1:9RBaZCeXEQ3UselpuwUQHltGVXvdwm6cv1hgR6gDIPg= 525 + github.com/smartystreets/goconvey v1.7.2/go.mod h1:Vw0tHAZW6lzCRk3xgdin6fKYcG+G3Pg9vgXWeJpQFMM= 526 + github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI= 527 + github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= 332 528 github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= 333 529 github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= 334 530 github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= ··· 353 549 github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= 354 550 github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk= 355 551 github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= 552 + github.com/urfave/cli v1.22.10/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= 356 553 github.com/urfave/cli/v2 v2.27.5 h1:WoHEJLdsXr6dDWoJgMq/CboDmyY/8HMMH1fTECbih+w= 357 554 github.com/urfave/cli/v2 v2.27.5/go.mod h1:3Sevf16NykTbInEnD0yKkjDAeZDS0A6bzhBH5hrMvTQ= 555 + github.com/warpfork/go-testmark v0.12.1 h1:rMgCpJfwy1sJ50x0M0NgyphxYYPMOODIJHhsXyEHU0s= 556 + github.com/warpfork/go-testmark v0.12.1/go.mod h1:kHwy7wfvGSPh1rQJYKayD4AbtNaeyZdcGi9tNJTaa5Y= 557 + github.com/warpfork/go-wish v0.0.0-20220906213052-39a1cc7a02d0 h1:GDDkbFiaK8jsSDJfjId/PEGEShv6ugrt4kYsC5UIDaQ= 558 + github.com/warpfork/go-wish v0.0.0-20220906213052-39a1cc7a02d0/go.mod h1:x6AKhvSSexNrVSrViXSHUEbICjmGXhtgABaHIySUSGw= 559 + github.com/whyrusleeping/cbor v0.0.0-20171005072247-63513f603b11 h1:5HZfQkwe0mIfyDmc1Em5GqlNRzcdtlv4HTNmdpt7XH0= 560 + github.com/whyrusleeping/cbor v0.0.0-20171005072247-63513f603b11/go.mod h1:Wlo/SzPmxVp6vXpGt/zaXhHH0fn4IxgqZc82aKg6bpQ= 561 + github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e h1:28X54ciEwwUxyHn9yrZfl5ojgF4CBNLWX7LR0rvBkf4= 562 + github.com/whyrusleeping/cbor-gen v0.2.1-0.20241030202151-b7a6831be65e/go.mod h1:pM99HXyEbSQHcosHc0iW7YFmwnscr+t9Te4ibko05so= 563 + github.com/whyrusleeping/chunker v0.0.0-20181014151217-fe64bd25879f h1:jQa4QT2UP9WYv2nzyawpKMOCl+Z/jW7djv2/J50lj9E= 564 + github.com/whyrusleeping/chunker v0.0.0-20181014151217-fe64bd25879f/go.mod h1:p9UJB6dDgdPgMJZs7UjUOdulKyRr9fqkS+6JKAInPy8= 358 565 github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= 359 566 github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= 360 567 github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 h1:gEOO8jv9F4OT7lGCjxCBTO/36wtF6j2nSip77qHd4x4= 361 568 github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1/go.mod h1:Ohn+xnUBiLI6FVj/9LpzZWtj1/D6lUovWYBkxHVV3aM= 569 + github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= 570 + github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= 571 + github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= 362 572 github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= 363 573 gitlab.com/gitlab-org/release-cli v0.18.0 h1:vVNxGRIy4w4FIo0ucO8ZyYecSH+jwV+vdZygpBt+E/0= 364 574 gitlab.com/gitlab-org/release-cli v0.18.0/go.mod h1:VRzoYTcZ/1CgyaQBKbz0LIfjigKGUh0leWA1f1cLAFc= 575 + gitlab.com/yawning/secp256k1-voi v0.0.0-20230925100816-f2616030848b h1:CzigHMRySiX3drau9C6Q5CAbNIApmLdat5jPMqChvDA= 576 + gitlab.com/yawning/secp256k1-voi v0.0.0-20230925100816-f2616030848b/go.mod h1:/y/V339mxv2sZmYYR64O07VuCpdNZqCTwO8ZcouTMI8= 577 + gitlab.com/yawning/tuplehash v0.0.0-20230713102510-df83abbf9a02 h1:qwDnMxjkyLmAFgcfgTnfJrmYKWhHnci3GjDqcZp1M3Q= 578 + gitlab.com/yawning/tuplehash v0.0.0-20230713102510-df83abbf9a02/go.mod h1:JTnUj0mpYiAsuZLmKjTx/ex3AtMowcCgnE7YNyCEP0I= 365 579 go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= 366 580 go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= 367 581 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= ··· 376 590 go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= 377 591 go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= 378 592 go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= 593 + go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= 594 + go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= 595 + go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= 596 + go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= 597 + go.uber.org/goleak v1.1.11-0.20210813005559-691160354723/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= 598 + go.uber.org/goleak v1.2.0 h1:xqgm/S+aQvhWFTtR0XK3Jvg7z8kGV8P4X14IzwN3Eqk= 599 + go.uber.org/goleak v1.2.0/go.mod h1:XJYK+MuIchqpmGmUSAzotztawfKvYLUIgg7guXrwVUo= 600 + go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= 601 + go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= 602 + go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= 603 + go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= 604 + go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= 605 + go.uber.org/zap v1.16.0/go.mod h1:MA8QOfq0BHJwdXa996Y4dYkAqRKB8/1K1QMMZVaNZjQ= 606 + go.uber.org/zap v1.19.1/go.mod h1:j3DNczoxDZroyBnOT1L/Q79cfUMGZxlv/9dzN7SM1rI= 607 + go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo= 608 + go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so= 379 609 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= 610 + golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= 611 + golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= 380 612 golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= 381 613 golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= 382 614 golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= ··· 392 624 golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= 393 625 golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= 394 626 golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= 627 + golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= 628 + golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= 629 + golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 630 + golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 631 + golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 395 632 golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= 396 633 golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= 634 + golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= 635 + golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= 397 636 golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 398 637 golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 399 638 golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 400 639 golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 401 640 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 402 641 golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 642 + golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 643 + golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= 403 644 golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= 404 645 golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= 646 + golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= 405 647 golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= 406 648 golang.org/x/net v0.0.0-20220708220712-1185a9018129/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= 407 649 golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= ··· 416 658 golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 417 659 golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 418 660 golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 661 + golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 662 + golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 663 + golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 419 664 golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 420 665 golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 421 666 golang.org/x/sync v0.9.0 h1:fEo0HyrW1GIgZdpbhCRO0PkJajUS5H9IFUztCgEo2jQ= ··· 427 672 golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 428 673 golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 429 674 golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 675 + golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 430 676 golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 677 + golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 431 678 golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 679 + golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 432 680 golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 433 681 golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 434 682 golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= ··· 461 709 golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= 462 710 golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= 463 711 golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= 712 + golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= 464 713 golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= 714 + golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= 715 + golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= 716 + golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= 465 717 golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= 718 + golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= 719 + golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= 720 + golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= 466 721 golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= 467 722 golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= 723 + golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg= 724 + golang.org/x/tools v0.23.0/go.mod h1:pnu6ufv6vQkll6szChhK3C3L/ruaIv5eBeztNG8wtsI= 468 725 golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 726 + golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 469 727 golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 728 + golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 470 729 golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= 471 730 golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= 472 731 google.golang.org/api v0.189.0 h1:equMo30LypAkdkLMBqfeIqtyAnlyig1JSZArl4XPwdI= ··· 505 764 google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= 506 765 google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= 507 766 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 767 + gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 508 768 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 509 769 gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= 510 770 gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= 771 + gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= 511 772 gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= 512 773 gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= 513 774 gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= 775 + gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= 514 776 gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= 515 777 gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= 516 778 gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= 779 + gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= 517 780 gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= 518 781 gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= 519 782 gorm.io/datatypes v1.2.4 h1:uZmGAcK/QZ0uyfCuVg0VQY1ZmV9h1fuG0tMwKByO1z4= 520 783 gorm.io/datatypes v1.2.4/go.mod h1:f4BsLcFAX67szSv8svwLRjklArSHAvHLeE3pXAS5DZI= 521 784 gorm.io/driver/mysql v1.5.6 h1:Ld4mkIickM+EliaQZQx3uOJDJHtrd70MxAUqWqlx3Y8= 522 785 gorm.io/driver/mysql v1.5.6/go.mod h1:sEtPWMiqiN1N1cMXoXmBbd8C6/l+TESwriotuRRpkDM= 523 - gorm.io/driver/postgres v1.5.0 h1:u2FXTy14l45qc3UeCJ7QaAXZmZfDDv0YrthvmRq1l0U= 524 - gorm.io/driver/postgres v1.5.0/go.mod h1:FUZXzO+5Uqg5zzwzv4KK49R8lvGIyscBOqYrtI1Ce9A= 786 + gorm.io/driver/postgres v1.5.7 h1:8ptbNJTDbEmhdr62uReG5BGkdQyeasu/FZHxI0IMGnM= 787 + gorm.io/driver/postgres v1.5.7/go.mod h1:3e019WlBaYI5o5LIdNV+LyxCMNtLOQETBXL2h4chKpA= 525 788 gorm.io/driver/sqlite v1.5.5 h1:7MDMtUZhV065SilG62E0MquljeArQZNfJnjd9i9gx3E= 526 789 gorm.io/driver/sqlite v1.5.5/go.mod h1:6NgQ7sQWAIFsPrJJl1lSNSu2TABh0ZZ/zm5fosATavE= 527 790 gorm.io/driver/sqlserver v1.4.1 h1:t4r4r6Jam5E6ejqP7N82qAJIJAht27EGT41HyPfXRw0= ··· 531 794 gorm.io/gorm v1.25.11/go.mod h1:xh7N7RHfYlNc5EmcI/El95gXusucDrQnHXe0+CgWcLQ= 532 795 honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= 533 796 honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= 797 + honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= 798 + lukechampine.com/blake3 v1.2.1 h1:YuqqRuaqsGV71BV/nm9xlI0MKUv4QC54jQnBChWbGnI= 799 + lukechampine.com/blake3 v1.2.1/go.mod h1:0OFRp7fBtAylGVCO40o87sbupkyIGgbpv1+M1k1LM6k= 534 800 rsc.io/tmplfunc v0.0.3 h1:53XFQh69AfOa8Tw0Jm7t+GV7KZhOi6jzsCzTtKbMvzU= 535 801 rsc.io/tmplfunc v0.0.3/go.mod h1:AG3sTPzElb1Io3Yg4voV9AGZJuleGAwaVRxL9M49PhA=
+2
js/app/app.config.ts
··· 110 110 favicon: "./assets/images/favicon.png", 111 111 }, 112 112 plugins: [ 113 + ["expo-sqlite", { useSQLCipher: true }], 114 + "expo-file-system", 113 115 [ 114 116 "expo-font", 115 117 {
+12 -3
js/app/components/aqlink.tsx
··· 1 1 import { Link, useNavigation } from "@react-navigation/native"; 2 2 import { NavigationProp, ParamListBase } from "@react-navigation/native"; 3 3 import usePlatform from "hooks/usePlatform"; 4 - import { Pressable } from "react-native"; 4 + import { Pressable, StyleProp, ViewStyle } from "react-native"; 5 5 6 6 // Web and native have some disagreements about link styling 7 7 // so we have a custom component that handles that 8 8 export default function AQLink({ 9 9 children, 10 10 to, 11 + style, 11 12 }: { 12 13 children: React.ReactNode; 13 14 to: { screen: string; params?: Record<string, string> }; 15 + style?: StyleProp<ViewStyle>; 14 16 }) { 15 17 const { isWeb } = usePlatform(); 16 18 const navigation = useNavigation<NavigationProp<ParamListBase>>(); 17 19 18 20 if (isWeb) { 19 - return <Link to={to as any}>{children}</Link>; 21 + return ( 22 + <Link style={style} to={to as any}> 23 + {children} 24 + </Link> 25 + ); 20 26 } 21 27 22 28 return ( 23 - <Pressable onPress={() => navigation.navigate(to.screen, to.params)}> 29 + <Pressable 30 + style={style} 31 + onPress={() => navigation.navigate(to.screen, to.params)} 32 + > 24 33 {children} 25 34 </Pressable> 26 35 );
+54 -70
js/app/components/golive.tsx
··· 1 1 import { useEffect, useState } from "react"; 2 - import { Button, Input, Label, Paragraph, TextArea, View } from "tamagui"; 2 + import { Button, Label, Paragraph, TextArea, View } from "tamagui"; 3 3 import Loading from "./loading/loading"; 4 4 import { useToastController } from "@tamagui/toast"; 5 5 import useAquareumNode from "hooks/useAquareumNode"; 6 - import { useIsFocused } from "@react-navigation/native"; 7 - import schema from "generated/eip712-schema.json"; 8 - import useWallet from "hooks/useWallet"; 6 + import { golivePost, selectUserProfile } from "features/bluesky/blueskySlice"; 7 + import { useAppDispatch, useAppSelector } from "store/hooks"; 8 + import AQLink from "./aqlink"; 9 + import { getIdentity, selectAquareum } from "features/aquareum/aquareumSlice"; 9 10 10 11 const Left = ({ children }: { children: React.ReactNode }) => { 11 12 return ( ··· 17 18 18 19 const Right = ({ children }: { children: React.ReactNode }) => { 19 20 return ( 20 - <View f={6} fb={0}> 21 + <View f={6} fb={0} alignItems="stretch"> 21 22 {children} 22 23 </View> 23 24 ); ··· 31 32 export default function GoLive() { 32 33 const toast = useToastController(); 33 34 const { url } = useAquareumNode(); 34 - const isFocused = useIsFocused(); 35 - const { address, signTypedData } = useWallet(); 36 - const [refreshTime, setRefreshTime] = useState(0); 35 + const profile = useAppSelector(selectUserProfile); 36 + const dispatch = useAppDispatch(); 37 + const aquareum = useAppSelector(selectAquareum); 37 38 useEffect(() => { 38 - (async () => { 39 - const res = await fetch(`${url}/api/settings`); 40 - const data = (await res.json()) as Settings; 41 - setId(data.id); 42 - setStreamer(data.streamer); 43 - setTitle(data.title); 44 - })(); 45 - }, [isFocused, refreshTime]); 46 - const [id, setId] = useState(""); 47 - const [streamer, setStreamer] = useState(""); 39 + if (!aquareum.identity) { 40 + dispatch(getIdentity()); 41 + } 42 + }, [aquareum.identity]); 48 43 const [title, setTitle] = useState(""); 49 44 const [loading, setLoading] = useState(false); 50 - const disabled = loading || streamer === "" || title === ""; 51 - if (id === "") { 45 + const disabled = !profile || loading || title === ""; 46 + if (!aquareum.identity) { 52 47 return ( 53 48 <View f={1} ai="center" jc="center" w="100%" p="$4"> 54 49 <Loading /> 55 50 </View> 56 51 ); 57 52 } 53 + const identity = aquareum.identity; 58 54 return ( 59 55 <View f={1} ai="center" jc="center" gap="$4" w="100%" p="$4" maxWidth={500}> 60 56 <Label w="100%"> ··· 62 58 <Paragraph>Signing Key ID</Paragraph> 63 59 </Left> 64 60 <Right> 65 - <Paragraph>{id}</Paragraph> 61 + <Paragraph>{identity.id}</Paragraph> 62 + </Right> 63 + </Label> 64 + <Label w="100%"> 65 + <Left> 66 + <Paragraph>Streamer</Paragraph> 67 + </Left> 68 + <Right> 69 + {!profile && ( 70 + <AQLink to={{ screen: "Login" }} style={{ display: "flex" }}> 71 + <Paragraph color="$accentColor">Log in with Bluesky</Paragraph> 72 + </AQLink> 73 + )} 74 + {profile && <Paragraph>@{identity.handle}</Paragraph>} 66 75 </Right> 67 76 </Label> 68 77 <Label w="100%"> 69 78 <Left> 70 - <Paragraph pb="$2">Streamer</Paragraph> 79 + <Paragraph>ATProto DID</Paragraph> 71 80 </Left> 72 81 <Right> 73 - <Input 74 - value={streamer} 75 - onChangeText={setStreamer} 76 - w="100%" 77 - size="$4" 78 - /> 82 + <Paragraph>{aquareum.identity.did}</Paragraph> 79 83 </Right> 80 84 </Label> 81 85 <Label w="100%"> ··· 98 102 opacity={disabled ? 0.5 : 1} 99 103 w="100%" 100 104 size="$4" 101 - onPress={() => { 105 + onPress={async () => { 102 106 setLoading(true); 103 - console.log(address); 104 - (async () => { 105 - try { 106 - const message = { 107 - signer: address, 108 - time: Date.now(), 109 - data: { streamer, title }, 110 - }; 111 - const toSign = { 112 - types: schema.types, 113 - domain: schema.domain as any, 114 - primaryType: "GoLive", 115 - message: message, 116 - }; 117 - const signature = await signTypedData(toSign); 118 - const res = await fetch(`${url}/api/settings/${id}`, { 119 - method: "PUT", 120 - body: JSON.stringify({ 121 - primaryType: "GoLive", 122 - domain: schema.domain, 123 - message: message, 124 - signature: signature, 125 - }), 126 - }); 127 - if (!res.ok) { 128 - const text = await res.text(); 129 - throw new Error(`http ${res.status} ${text}`); 130 - } 131 - toast.show("Settings Saved", { 132 - message: "Great job.", 133 - }); 134 - setRefreshTime(Date.now()); 135 - } catch (e) { 136 - toast.show("Failed to save settings", { 137 - message: e.message, 138 - }); 139 - throw e; 140 - } finally { 141 - setLoading(false); 142 - } 143 - })(); 107 + if (!url) { 108 + throw new Error("No node URL"); 109 + } 110 + try { 111 + await dispatch( 112 + golivePost({ 113 + nodeUrl: url, 114 + signingKey: identity.id, 115 + text: title, 116 + }), 117 + ); 118 + toast.show("Posted!", { 119 + message: `Great success!`, 120 + }); 121 + } catch (e) { 122 + toast.show("Error creating post", { 123 + message: e.mesasge, 124 + }); 125 + } finally { 126 + setLoading(false); 127 + } 144 128 }} 145 129 > 146 130 {loading ? "Loading..." : "Save"}
+34
js/app/components/login/login.tsx
··· 1 + import { Button, View, Text } from "tamagui"; 2 + import { useAppDispatch, useAppSelector } from "store/hooks"; 3 + import { 4 + login, 5 + logout, 6 + selectUserProfile, 7 + } from "features/bluesky/blueskySlice"; 8 + 9 + export default function Login() { 10 + const dispatch = useAppDispatch(); 11 + const userProfile = useAppSelector(selectUserProfile); 12 + 13 + if (userProfile) { 14 + return ( 15 + <View f={1} jc="center" ai="center"> 16 + <Text>Logged in as @{userProfile.handle}</Text> 17 + <Button onPress={() => dispatch(logout())}>Log out</Button> 18 + </View> 19 + ); 20 + } 21 + 22 + return ( 23 + <View f={1} jc="center" ai="center"> 24 + {/* <Text>{error}</Text> */} 25 + <Button 26 + onPress={async () => { 27 + dispatch(login("https://bsky.social")); 28 + }} 29 + > 30 + Log in with Bluesky 31 + </Button> 32 + </View> 33 + ); 34 + }
+2 -9
js/app/components/player/video.native.tsx
··· 1 1 import React, { useEffect } from "react"; 2 2 import { useVideoPlayer, VideoPlayerEvents, VideoView } from "expo-video"; 3 - import useAquareumNode from "hooks/useAquareumNode"; 4 - import { 5 - PlayerProps, 6 - PlayerStatus, 7 - PROTOCOL_HLS, 8 - PROTOCOL_PROGRESSIVE_MP4, 9 - PROTOCOL_PROGRESSIVE_WEBM, 10 - } from "./props"; 3 + import { PlayerProps, PlayerStatus } from "./props"; 11 4 import { srcToUrl } from "./shared"; 12 5 13 6 // export function Player() { ··· 51 44 }); 52 45 53 46 subs.push( 54 - player.addListener("playingChange", (newIsPlaying, oldIsPlaying) => { 47 + player.addListener("playingChange", (newIsPlaying) => { 55 48 if (newIsPlaying) { 56 49 props.setStatus(PlayerStatus.PLAYING); 57 50 } else {
+26 -20
js/app/components/provider/provider.shared.tsx
··· 5 5 } from "@react-navigation/native"; 6 6 import { ToastProvider, ToastViewport } from "@tamagui/toast"; 7 7 import { useFonts } from "expo-font"; 8 - import { AquareumProvider } from "hooks/useAquareumNode"; 8 + import AquareumProvider from "features/aquareum/aquareumProvider"; 9 9 import React from "react"; 10 10 import { PortalProvider, TamaguiProvider } from "tamagui"; 11 11 import config from "tamagui.config"; 12 12 import { CurrentToast } from "./CurrentToast"; 13 - 13 + import { Provider as ReduxProvider } from "react-redux"; 14 + import { store } from "store/store"; 15 + import BlueskyProvider from "features/bluesky/blueskyProvider"; 14 16 export default function Provider({ 15 17 children, 16 18 linking, ··· 21 23 return ( 22 24 <TamaguiProvider config={config} defaultTheme={"dark"}> 23 25 <NavigationContainer theme={DarkTheme} linking={linking}> 24 - <AquareumProvider> 25 - <PortalProvider> 26 - <ToastProvider 27 - swipeDirection="vertical" 28 - duration={6000} 29 - native={ 30 - [ 31 - /* uncomment the next line to do native toasts on mobile. NOTE: it'll require you making a dev build and won't work with Expo Go */ 32 - // 'mobile' 33 - ] 34 - } 35 - > 36 - <FontProvider>{children}</FontProvider> 37 - <CurrentToast /> 38 - <ToastViewport name="default" top="$8" left={0} right={0} /> 39 - </ToastProvider> 40 - </PortalProvider> 41 - </AquareumProvider> 26 + <ReduxProvider store={store}> 27 + <BlueskyProvider> 28 + <AquareumProvider> 29 + <PortalProvider> 30 + <ToastProvider 31 + swipeDirection="vertical" 32 + duration={6000} 33 + native={ 34 + [ 35 + /* uncomment the next line to do native toasts on mobile. NOTE: it'll require you making a dev build and won't work with Expo Go */ 36 + // 'mobile' 37 + ] 38 + } 39 + > 40 + <FontProvider>{children}</FontProvider> 41 + <CurrentToast /> 42 + <ToastViewport name="default" top="$8" left={0} right={0} /> 43 + </ToastProvider> 44 + </PortalProvider> 45 + </AquareumProvider> 46 + </BlueskyProvider> 47 + </ReduxProvider> 42 48 </NavigationContainer> 43 49 </TamaguiProvider> 44 50 );
+3 -3
js/app/components/provider/provider.tsx
··· 14 14 linking: LinkingOptions<ReactNavigation.RootParamList>; 15 15 }) { 16 16 return ( 17 - <SharedProvider linking={linking}> 18 - <WalletProvider>{children}</WalletProvider> 19 - </SharedProvider> 17 + <WalletProvider> 18 + <SharedProvider linking={linking}>{children}</SharedProvider> 19 + </WalletProvider> 20 20 ); 21 21 }
+6 -3
js/app/components/settings/settings.tsx
··· 1 - import { Button, Form, H3, Input, View, XStack, YStack } from "tamagui"; 1 + import { Button, Form, H3, Input, View, XStack } from "tamagui"; 2 2 import { Updates } from "./updates"; 3 3 import useAquareumNode from "hooks/useAquareumNode"; 4 4 import { useState } from "react"; 5 + import { useAppDispatch } from "store/hooks"; 6 + import { setURL } from "features/aquareum/aquareumSlice"; 5 7 6 8 export function Settings() { 7 - const { url, setUrl } = useAquareumNode(); 9 + const dispatch = useAppDispatch(); 10 + const { url } = useAquareumNode(); 8 11 const [newUrl, setNewUrl] = useState(""); 9 12 const onSubmit = () => { 10 - setUrl(newUrl); 13 + dispatch(setURL(newUrl)); 11 14 setNewUrl(""); 12 15 }; 13 16 return (
+20
js/app/features/aquareum/aquareumProvider.tsx
··· 1 + import { createContext } from "react"; 2 + import { DEFAULT_URL, selectAquareum } from "./aquareumSlice"; 3 + import { useAppSelector } from "store/hooks"; 4 + 5 + export const AquareumContext = createContext({ 6 + url: DEFAULT_URL, 7 + }); 8 + 9 + export default function AquareumProvider({ 10 + children, 11 + }: { 12 + children: React.ReactNode; 13 + }): React.ReactElement { 14 + const aquareum = useAppSelector(selectAquareum); 15 + return ( 16 + <AquareumContext.Provider value={{ url: aquareum.url }}> 17 + {children} 18 + </AquareumContext.Provider> 19 + ); 20 + }
+146
js/app/features/aquareum/aquareumSlice.tsx
··· 1 + import { createAppSlice } from "../../hooks/createSlice"; 2 + import { isWeb } from "tamagui"; 3 + import { SignTypedDataFn } from "hooks/useWallet.shared"; 4 + import schema from "generated/eip712-schema.json"; 5 + 6 + let DEFAULT_URL = process.env.EXPO_PUBLIC_AQUAREUM_URL as string; 7 + if (isWeb && process.env.EXPO_PUBLIC_WEB_TRY_LOCAL === "true") { 8 + try { 9 + DEFAULT_URL = `${window.location.protocol}//${window.location.host}`; 10 + } catch (err) { 11 + // Oh well, fall back to hardcoded. 12 + } 13 + } 14 + export { DEFAULT_URL }; 15 + 16 + export interface Identity { 17 + id: string; 18 + handle?: string; 19 + did?: string; 20 + } 21 + 22 + export interface AquareumState { 23 + url: string; 24 + identity: Identity | null; 25 + } 26 + 27 + const initialState: AquareumState = { 28 + url: DEFAULT_URL, 29 + identity: null, 30 + }; 31 + 32 + export const aquareumSlice = createAppSlice({ 33 + name: "aquareum", 34 + initialState, 35 + reducers: (create) => ({ 36 + setURL: create.reducer((state, action: { payload: string }) => { 37 + return { 38 + ...state, 39 + url: action.payload, 40 + }; 41 + }), 42 + 43 + getIdentity: create.asyncThunk( 44 + async (_, { getState }) => { 45 + const { aquareum } = getState() as { 46 + aquareum: AquareumState; 47 + }; 48 + const res = await fetch(`${aquareum.url}/api/identity`); 49 + return await res.json(); 50 + }, 51 + { 52 + pending: (state) => { 53 + // state.status = "loading"; 54 + }, 55 + fulfilled: (state, action) => { 56 + return { 57 + ...state, 58 + identity: action.payload, 59 + }; 60 + }, 61 + rejected: (state) => { 62 + console.error("loadOAuthClient rejected"); 63 + // state.status = "failed"; 64 + }, 65 + }, 66 + ), 67 + 68 + putIdentity: create.asyncThunk( 69 + async ( 70 + { 71 + handle, 72 + did, 73 + address, 74 + signTypedData, 75 + }: { 76 + handle: string; 77 + did: string; 78 + address: string; 79 + signTypedData: SignTypedDataFn; 80 + }, 81 + { getState, dispatch }, 82 + ) => { 83 + let { aquareum } = getState() as { 84 + aquareum: AquareumState; 85 + }; 86 + if (!aquareum.identity) { 87 + await dispatch(getIdentity()); 88 + } 89 + ({ aquareum } = getState() as { 90 + aquareum: AquareumState; 91 + }); 92 + if (!aquareum.identity) { 93 + throw new Error("No identity"); 94 + } 95 + const message = { 96 + signer: address, 97 + time: Date.now(), 98 + data: { handle, did }, 99 + }; 100 + const toSign = { 101 + types: schema.types, 102 + domain: schema.domain as any, 103 + primaryType: "Identity", 104 + message: message, 105 + }; 106 + const signature = await signTypedData(toSign); 107 + const res = await fetch( 108 + `${aquareum.url}/api/identity/${aquareum.identity.id}`, 109 + { 110 + method: "PUT", 111 + body: JSON.stringify({ 112 + primaryType: "Identity", 113 + domain: schema.domain, 114 + message: message, 115 + signature: signature, 116 + }), 117 + }, 118 + ); 119 + if (!res.ok) { 120 + const text = await res.text(); 121 + throw new Error(`http ${res.status} ${text}`); 122 + } 123 + 124 + return await res.json(); 125 + }, 126 + { 127 + pending: (state) => { 128 + // state.status = "loading"; 129 + }, 130 + fulfilled: (state, action) => {}, 131 + rejected: (state, err) => { 132 + console.error("putIdentity rejected", err); 133 + // state.status = "failed"; 134 + }, 135 + }, 136 + ), 137 + }), 138 + 139 + selectors: { 140 + selectAquareum: (aquareum) => aquareum, 141 + }, 142 + }); 143 + 144 + // Action creators are generated for each case reducer function. 145 + export const { getIdentity, putIdentity, setURL } = aquareumSlice.actions; 146 + export const { selectAquareum } = aquareumSlice.selectors;
+42
js/app/features/bluesky/blueskyProvider.tsx
··· 1 + import { useEffect } from "react"; 2 + import { useAppDispatch, useAppSelector } from "store/hooks"; 3 + import { 4 + getProfile, 5 + loadOAuthClient, 6 + selectOAuthSession, 7 + selectUserProfile, 8 + } from "./blueskySlice"; 9 + import { putIdentity } from "features/aquareum/aquareumSlice"; 10 + import useWallet from "hooks/useWallet"; 11 + 12 + export default function BlueskyProvider({ 13 + children, 14 + }: { 15 + children: React.ReactNode; 16 + }) { 17 + const dispatch = useAppDispatch(); 18 + useEffect(() => { 19 + dispatch(loadOAuthClient()); 20 + }, []); 21 + const oauthSession = useAppSelector(selectOAuthSession); 22 + const userProfile = useAppSelector(selectUserProfile); 23 + const wallet = useWallet(); 24 + useEffect(() => { 25 + if (oauthSession && !userProfile) { 26 + console.log("oauthSession", oauthSession); 27 + dispatch(getProfile(oauthSession.did)); 28 + } 29 + if (oauthSession && userProfile && wallet.address) { 30 + dispatch( 31 + putIdentity({ 32 + handle: userProfile.handle, 33 + did: oauthSession?.did, 34 + address: wallet.address, 35 + signTypedData: wallet.signTypedData, 36 + }), 37 + ); 38 + } 39 + console.log(wallet); 40 + }, [oauthSession, userProfile, wallet.address]); 41 + return <>{children}</>; 42 + }
+112
js/app/features/bluesky/blueskySlice.native.tsx
··· 1 + import { OAuthSession } from "@atproto/oauth-client"; 2 + import { createAppSlice } from "../../hooks/createSlice"; 3 + import { ProfileViewDetailed } from "@atproto/api/dist/client/types/app/bsky/actor/defs"; 4 + import { Agent } from "@atproto/api"; 5 + 6 + export interface BlueskyState { 7 + status: "start" | "loggedIn" | "loggedOut"; 8 + oauthState: null | string; 9 + oauthSession: null | OAuthSession; 10 + pdsAgent: null | Agent; 11 + profiles: { [key: string]: ProfileViewDetailed }; 12 + client: null; 13 + } 14 + 15 + const initialState: BlueskyState = { 16 + status: "start", 17 + oauthState: null, 18 + oauthSession: null, 19 + pdsAgent: null, 20 + profiles: {}, 21 + client: null, 22 + }; 23 + 24 + export const blueskySlice = createAppSlice({ 25 + name: "bluesky", 26 + initialState, 27 + reducers: (create) => ({ 28 + loadOAuthClient: create.asyncThunk(async (_, { getState }) => {}, { 29 + pending: (state) => { 30 + // state.status = "loading"; 31 + }, 32 + fulfilled: (state, action) => {}, 33 + rejected: (_, { error }) => {}, 34 + }), 35 + 36 + login: create.asyncThunk(async (pds: string, thunkAPI) => {}, { 37 + pending: (state) => { 38 + // state.status = "loading"; 39 + }, 40 + fulfilled: (state, action) => { 41 + return state; 42 + }, 43 + rejected: (state, action) => { 44 + console.error("login rejected", action.error); 45 + return { 46 + ...state, 47 + profiles: {}, 48 + }; 49 + // state.status = "failed"; 50 + }, 51 + }), 52 + 53 + logout: create.asyncThunk(async (_, thunkAPI) => {}, { 54 + pending: (state) => { 55 + // state.status = "loading"; 56 + }, 57 + fulfilled: (state, action) => {}, 58 + rejected: (state) => {}, 59 + }), 60 + 61 + getProfile: create.asyncThunk(async (actor: string, thunkAPI) => {}, { 62 + pending: (state) => { 63 + // state.status = "loading"; 64 + }, 65 + fulfilled: (state, action) => {}, 66 + rejected: (state, action) => {}, 67 + }), 68 + 69 + golivePost: create.asyncThunk( 70 + async ( 71 + { 72 + nodeUrl, 73 + signingKey, 74 + text, 75 + }: { nodeUrl: string; signingKey: string; text: string }, 76 + thunkAPI, 77 + ) => {}, 78 + { 79 + pending: (state) => { 80 + console.log("golivePost pending"); 81 + }, 82 + fulfilled: (state, action) => { 83 + console.log("golivePost fulfilled", action.payload); 84 + }, 85 + rejected: (state, action) => { 86 + console.error("getProfile rejected", action.error); 87 + // state.status = "failed"; 88 + }, 89 + }, 90 + ), 91 + }), 92 + 93 + // You can define your selectors here. These selectors receive the slice 94 + // state as their first argument. 95 + selectors: { 96 + selectOAuthSession: (bluesky) => bluesky.oauthSession, 97 + selectProfiles: (bluesky) => bluesky.profiles, 98 + selectUserProfile: (bluesky) => { 99 + const did = bluesky.oauthSession?.did; 100 + if (!did) return null; 101 + return bluesky.profiles[did]; 102 + }, 103 + }, 104 + }); 105 + 106 + // Action creators are generated for each case reducer function. 107 + export const { loadOAuthClient, login, getProfile, logout, golivePost } = 108 + blueskySlice.actions; 109 + 110 + // Selectors returned by `slice.selectors` take the root state as their first argument. 111 + export const { selectOAuthSession, selectProfiles, selectUserProfile } = 112 + blueskySlice.selectors;
+253
js/app/features/bluesky/blueskySlice.tsx
··· 1 + import { OAuthSession } from "@atproto/oauth-client"; 2 + import { createAppSlice } from "../../hooks/createSlice"; 3 + import { Agent } from "@atproto/api"; 4 + import { ProfileViewDetailed } from "@atproto/api/dist/client/types/app/bsky/actor/defs"; 5 + import { AquareumState } from "features/aquareum/aquareumSlice"; 6 + import createOAuthClient, { AquareumOAuthClient } from "./oauthClient"; 7 + 8 + export interface BlueskyState { 9 + status: "start" | "loggedIn" | "loggedOut"; 10 + oauthState: null | string; 11 + oauthSession: null | OAuthSession; 12 + pdsAgent: null | Agent; 13 + profiles: { [key: string]: ProfileViewDetailed }; 14 + client: null | AquareumOAuthClient; 15 + } 16 + 17 + const initialState: BlueskyState = { 18 + status: "start", 19 + oauthState: null, 20 + oauthSession: null, 21 + pdsAgent: null, 22 + profiles: {}, 23 + client: null, 24 + }; 25 + 26 + export const blueskySlice = createAppSlice({ 27 + name: "bluesky", 28 + initialState, 29 + reducers: (create) => ({ 30 + loadOAuthClient: create.asyncThunk( 31 + async (_, { getState }) => { 32 + const { aquareum } = getState() as { aquareum: AquareumState }; 33 + const client = await createOAuthClient(aquareum.url); 34 + const initResult = await client.init(); 35 + return { client, initResult }; 36 + }, 37 + { 38 + pending: (state) => { 39 + // state.status = "loading"; 40 + }, 41 + fulfilled: (state, action) => { 42 + const { client, initResult } = action.payload; 43 + console.log("loadOAuthClient fulfilled", action.payload); 44 + // sometimes the codes don't get removed from the url properly? so we do so here. 45 + const u = new URL(document.location.href); 46 + u.search = ""; 47 + window.history.replaceState(null, "", u.toString()); 48 + if (initResult && "session" in initResult) { 49 + return { 50 + ...state, 51 + client: client, 52 + oauthSession: initResult.session, 53 + pdsAgent: new Agent(initResult.session), 54 + }; 55 + } 56 + return { 57 + ...state, 58 + client: client, 59 + }; 60 + }, 61 + rejected: (_, { error }) => { 62 + console.error("loadOAuthClient rejected", error); 63 + // state.status = "failed"; 64 + }, 65 + }, 66 + ), 67 + 68 + login: create.asyncThunk( 69 + async (pds: string, thunkAPI) => { 70 + let { bluesky } = thunkAPI.getState() as { 71 + bluesky: BlueskyState; 72 + }; 73 + if (!bluesky.client) { 74 + await thunkAPI.dispatch(loadOAuthClient()); 75 + } 76 + ({ bluesky } = thunkAPI.getState() as { 77 + bluesky: BlueskyState; 78 + }); 79 + if (!bluesky.client) { 80 + throw new Error("No client"); 81 + } 82 + return await bluesky.client.authorize(pds); 83 + }, 84 + { 85 + pending: (state) => { 86 + // state.status = "loading"; 87 + }, 88 + fulfilled: (state, action) => { 89 + document.location.href = action.payload.toString(); 90 + return state; 91 + }, 92 + rejected: (state, action) => { 93 + console.error("login rejected", action.error); 94 + return { 95 + ...state, 96 + profiles: {}, 97 + }; 98 + // state.status = "failed"; 99 + }, 100 + }, 101 + ), 102 + 103 + logout: create.asyncThunk( 104 + async (_, thunkAPI) => { 105 + const { bluesky } = thunkAPI.getState() as { 106 + bluesky: BlueskyState; 107 + }; 108 + if (!bluesky.oauthSession) { 109 + throw new Error("No oauth session"); 110 + } 111 + return bluesky.oauthSession.signOut(); 112 + }, 113 + { 114 + pending: (state) => { 115 + // state.status = "loading"; 116 + }, 117 + fulfilled: (state, action) => { 118 + return { 119 + ...state, 120 + oauthSession: null, 121 + pdsAgent: null, 122 + }; 123 + }, 124 + rejected: (state) => { 125 + console.error("logout rejected"); 126 + // state.status = "failed"; 127 + }, 128 + }, 129 + ), 130 + 131 + getProfile: create.asyncThunk( 132 + async (actor: string, thunkAPI) => { 133 + const { bluesky } = thunkAPI.getState() as { 134 + bluesky: BlueskyState; 135 + }; 136 + if (!bluesky.pdsAgent) { 137 + throw new Error("No agent"); 138 + } 139 + return await bluesky.pdsAgent.getProfile({ 140 + actor: actor, 141 + }); 142 + }, 143 + { 144 + pending: (state) => { 145 + // state.status = "loading"; 146 + }, 147 + fulfilled: (state, action) => { 148 + return { 149 + ...state, 150 + profiles: { 151 + ...state.profiles, 152 + [action.meta.arg]: action.payload.data, 153 + }, 154 + }; 155 + }, 156 + rejected: (state, action) => { 157 + console.error("getProfile rejected", action.error); 158 + // state.status = "failed"; 159 + }, 160 + }, 161 + ), 162 + 163 + golivePost: create.asyncThunk( 164 + async ( 165 + { 166 + nodeUrl, 167 + signingKey, 168 + text, 169 + }: { nodeUrl: string; signingKey: string; text: string }, 170 + thunkAPI, 171 + ) => { 172 + const { bluesky } = thunkAPI.getState() as { 173 + bluesky: BlueskyState; 174 + }; 175 + if (!bluesky.pdsAgent) { 176 + throw new Error("No agent"); 177 + } 178 + const did = bluesky.oauthSession?.did; 179 + if (!did) { 180 + throw new Error("No DID"); 181 + } 182 + const profile = bluesky.profiles[did]; 183 + if (!profile) { 184 + throw new Error("No profile"); 185 + } 186 + const u = new URL(nodeUrl); 187 + const params = new URLSearchParams({ 188 + key: signingKey, 189 + did: did, 190 + time: new Date().toISOString(), 191 + }); 192 + const linkUrl = `${u.protocol}//${u.host}/${profile.handle}?${params.toString()}`; 193 + const prefix = `🔴 LIVE `; 194 + const textUrl = `${u.protocol}//${u.host}/${profile.handle}`; 195 + const suffix = ` ${text}`; 196 + const content = prefix + textUrl + suffix; 197 + const facets = [ 198 + { 199 + index: { 200 + // idk why it's off by two but it's static so let's just rock it 201 + byteStart: prefix.length + 2, 202 + byteEnd: prefix.length + textUrl.length + 2, 203 + }, 204 + features: [ 205 + { 206 + $type: "app.bsky.richtext.facet#link", 207 + uri: linkUrl, 208 + }, 209 + ], 210 + }, 211 + ]; 212 + const record = { 213 + text: content, 214 + "tv.aquareum.key": signingKey, 215 + facets, 216 + }; 217 + return await bluesky.pdsAgent.post(record); 218 + }, 219 + { 220 + pending: (state) => { 221 + console.log("golivePost pending"); 222 + }, 223 + fulfilled: (state, action) => { 224 + console.log("golivePost fulfilled", action.payload); 225 + }, 226 + rejected: (state, action) => { 227 + console.error("getProfile rejected", action.error); 228 + // state.status = "failed"; 229 + }, 230 + }, 231 + ), 232 + }), 233 + 234 + // You can define your selectors here. These selectors receive the slice 235 + // state as their first argument. 236 + selectors: { 237 + selectOAuthSession: (bluesky) => bluesky.oauthSession, 238 + selectProfiles: (bluesky) => bluesky.profiles, 239 + selectUserProfile: (bluesky) => { 240 + const did = bluesky.oauthSession?.did; 241 + if (!did) return null; 242 + return bluesky.profiles[did]; 243 + }, 244 + }, 245 + }); 246 + 247 + // Action creators are generated for each case reducer function. 248 + export const { loadOAuthClient, login, getProfile, logout, golivePost } = 249 + blueskySlice.actions; 250 + 251 + // Selectors returned by `slice.selectors` take the root state as their first argument. 252 + export const { selectOAuthSession, selectProfiles, selectUserProfile } = 253 + blueskySlice.selectors;
js/app/features/bluesky/oauthClient.native.tsx

This is a binary file and will not be displayed.

+49
js/app/features/bluesky/oauthClient.tsx
··· 1 + import { 2 + BrowserOAuthClient, 3 + OAuthClientMetadata, 4 + } from "@atproto/oauth-client-browser"; 5 + 6 + export type AquareumOAuthClient = Omit< 7 + BrowserOAuthClient, 8 + "keyset" | "serverFactory" | "jwks" 9 + >; 10 + 11 + export default async function createOAuthClient( 12 + aquareumUrl: string, 13 + ): Promise<AquareumOAuthClient> { 14 + if (!aquareumUrl) { 15 + throw new Error("aquareumUrl is required"); 16 + } 17 + let meta: OAuthClientMetadata; 18 + if ( 19 + aquareumUrl.startsWith("http://localhost") || 20 + aquareumUrl.startsWith("http://127.0.0.1") 21 + ) { 22 + const u = new URL(document.location.href); 23 + 24 + // loopback client that doesn't require interaction with the server 25 + meta = { 26 + client_id: "http://localhost?scope=atproto%20transition:generic", 27 + redirect_uris: [`${u.protocol}//${u.host}`], 28 + scope: "atproto transition:generic", 29 + token_endpoint_auth_method: "none", 30 + // jwks_uri: "https://my-app.example/jwks.json", 31 + client_name: "Loopback client", 32 + response_types: ["code"], 33 + grant_types: ["authorization_code", "refresh_token"], 34 + application_type: "native", 35 + dpop_bound_access_tokens: true, 36 + }; 37 + } else { 38 + const res = await fetch(`${aquareumUrl}/api/atproto-oauth`); 39 + meta = await res.json(); 40 + } 41 + return new BrowserOAuthClient({ 42 + handleResolver: "https://bsky.social", // backend instances should use a DNS based resolver 43 + responseMode: "query", // or "fragment" (frontend only) or "form_post" (backend only) 44 + 45 + // These must be the same metadata as the one exposed on the 46 + // "client_id" endpoint (except when using a loopback client) 47 + clientMetadata: meta, 48 + }); 49 + }
+6
js/app/hooks/createSlice.tsx
··· 1 + import { asyncThunkCreator, buildCreateSlice } from "@reduxjs/toolkit"; 2 + 3 + // `buildCreateSlice` allows us to create a slice with async thunks. 4 + export const createAppSlice = buildCreateSlice({ 5 + creators: { asyncThunk: asyncThunkCreator }, 6 + });
+2 -33
js/app/hooks/useAquareumNode.tsx
··· 1 - import { createContext, useContext, useState } from "react"; 2 - import { isWeb } from "tamagui"; 3 - 4 - let DEFAULT_URL = process.env.EXPO_PUBLIC_AQUAREUM_URL; 5 - console.log({ 6 - EXPO_PUBLIC_WEB_TRY_LOCAL: process.env.EXPO_PUBLIC_WEB_TRY_LOCAL, 7 - }); 8 - if (isWeb && process.env.EXPO_PUBLIC_WEB_TRY_LOCAL === "true") { 9 - try { 10 - DEFAULT_URL = `${window.location.protocol}//${window.location.host}`; 11 - } catch (err) { 12 - // Oh well, fall back to hardcoded. 13 - } 14 - } 15 - 16 - export const AquareumContext = createContext({ 17 - url: DEFAULT_URL, 18 - setUrl: (_: string) => {}, 19 - }); 20 - 21 - export function AquareumProvider({ 22 - url: providedUrl, 23 - children, 24 - }: { 25 - url?: string; 26 - children: React.ReactNode; 27 - }) { 28 - const [url, setUrl] = useState(providedUrl || DEFAULT_URL); 29 - const val = { url, setUrl }; 30 - return ( 31 - <AquareumContext.Provider value={val}>{children}</AquareumContext.Provider> 32 - ); 33 - } 1 + import { AquareumContext } from "features/aquareum/aquareumProvider"; 2 + import { useContext } from "react"; 34 3 35 4 export default function useAquareumNode() { 36 5 return useContext(AquareumContext);
+8 -5
js/app/hooks/useWallet.tsx
··· 7 7 RainbowKitProvider, 8 8 } from "@rainbow-me/rainbowkit"; 9 9 import React from "react"; 10 - import { View } from "react-native"; 10 + import { View as RNView, View } from "react-native"; 11 11 import { privateKeyToAccount } from "viem/accounts"; 12 12 import { arbitrum, base, mainnet, optimism, polygon } from "viem/chains"; 13 13 import { Paragraph } from "tamagui"; ··· 60 60 const { isElectron } = usePlatform(); 61 61 if (!isElectron) { 62 62 return ( 63 - <View> 63 + <RNView> 64 64 <Paragraph>ViemWalletProvider only supports electron</Paragraph> 65 - </View> 65 + </RNView> 66 66 ); 67 67 } 68 68 const [client, setClient] = useState(notActiveWallet); ··· 94 94 95 95 if (client === notActiveWallet) { 96 96 return ( 97 - <View> 97 + // This View is intentionally a RN view rather than a Tamagui view because we're outside of Tamagui's context 98 + <RNView 99 + style={{ flex: 1, justifyContent: "center", alignItems: "center" }} 100 + > 98 101 <Paragraph>Loading wallet...</Paragraph> 99 - </View> 102 + </RNView> 100 103 ); 101 104 } 102 105
+30 -22
js/app/package.json
··· 14 14 "build": "yarn run build:web && yarn run prebuild", 15 15 "build:web": "yarn run export && node exportClientExpoConfig.js > dist/expoConfig.json", 16 16 "export": "expo export --dump-sourcemap || expo export --dump-sourcemap", 17 - "check": "bash -c 'export OUT=$(mktemp -d); npx tsc -p . --outDir $OUT; rm -rf $OUT'", 18 - "prebuild": "EXPO_NO_GIT_STATUS=1 expo prebuild --clean && sed -i.bak 's/org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m/org.gradle.jvmargs=-Xmx8192m -XX:MaxMetaspaceSize=2048m/' android/gradle.properties && echo '\nnetworkTimeout=100000' >> android/gradle.properties && sed -i.bak 's/plugins { id(\"com.facebook.react.settings\") }//' android/settings.gradle && yarn run find-node", 17 + "check": "bash -c 'set -euo pipefail;export OUT=$(mktemp -d); npx tsc -p . --outDir $OUT; rm -rf $OUT'", 18 + "prebuild": "EXPO_NO_GIT_STATUS=1 expo prebuild --clean && sed -i.bak 's/org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m/org.gradle.jvmargs=-Xmx8192m -XX:MaxMetaspaceSize=2048m/' android/gradle.properties && yarn run find-node", 19 19 "postinstall": "which pod && yarn run postinstall-ios || echo 'not a mac, not installing pods'", 20 20 "postinstall-ios": "cd ios && pod install && yarn run find-node", 21 21 "find-node": "node -p '`NODE_BINARY=${process.argv[0]}`' > ios/.xcode.env.local", ··· 25 25 "preset": "jest-expo" 26 26 }, 27 27 "dependencies": { 28 + "@atproto-labs/pipe": "^0.1.0", 29 + "@atproto/jwk-jose": "^0.1.2", 30 + "@atproto/oauth-client": "^0.3.1", 31 + "@bacons/text-decoder": "^0.0.0", 28 32 "@rainbow-me/rainbowkit": "2.2.0", 29 33 "@react-native-firebase/app": "^21.3.0", 30 34 "@react-native-firebase/messaging": "^21.3.0", ··· 32 36 "@react-navigation/drawer": "^6.7.2", 33 37 "@react-navigation/native": "^6.1.18", 34 38 "@react-navigation/native-stack": "^6.11.0", 39 + "@reduxjs/toolkit": "^2.3.0", 35 40 "@tamagui/config": "^1.116.12", 36 41 "@tamagui/lucide-icons": "^1.116.12", 37 42 "@tamagui/toast": "^1.116.12", 38 43 "@tanstack/react-query": "^5.59.19", 39 - "babel-preset-expo": "^11.0.15", 44 + "babel-preset-expo": "~12.0.0", 40 45 "burnt": "^0.12.2", 41 46 "chrono-node": "^2.7.7", 42 - "expo": "~51.0.38", 43 - "expo-build-properties": "^0.12.5", 44 - "expo-dev-client": "~4.0.28", 45 - "expo-font": "~12.0.10", 46 - "expo-linking": "~6.3.1", 47 - "expo-notifications": "~0.28.19", 48 - "expo-splash-screen": "~0.27.6", 49 - "expo-status-bar": "^1.12.1", 50 - "expo-system-ui": "~3.0.7", 51 - "expo-updates": "~0.25.27", 52 - "expo-video": "^1.2.7", 53 - "expo-web-browser": "~13.0.3", 47 + "expo": "~52.0.8", 48 + "expo-build-properties": "~0.13.1", 49 + "expo-dev-client": "~5.0.3", 50 + "expo-file-system": "~18.0.4", 51 + "expo-font": "~13.0.1", 52 + "expo-linking": "~7.0.3", 53 + "expo-notifications": "~0.29.8", 54 + "expo-splash-screen": "~0.29.11", 55 + "expo-sqlite": "~15.0.3", 56 + "expo-status-bar": "~2.0.0", 57 + "expo-system-ui": "~4.0.3", 58 + "expo-updates": "~0.26.7", 59 + "expo-video": "~2.0.1", 60 + "expo-web-browser": "~14.0.1", 54 61 "hls.js": "^1.5.17", 55 62 "react": "18.3.1", 56 63 "react-dom": "18.3.1", 57 - "react-native": "0.74.6", 64 + "react-native": "0.76.2", 58 65 "react-native-gesture-handler": "~2.20.2", 59 66 "react-native-markdown-display": "^7.0.2", 60 67 "react-native-reanimated": "~3.16.1", 61 - "react-native-safe-area-context": "4.14.0", 62 - "react-native-screens": "3.35.0", 68 + "react-native-safe-area-context": "4.12.0", 69 + "react-native-screens": "~4.1.0", 63 70 "react-native-svg": "15.8.0", 64 71 "react-native-web": "^0.19.13", 65 - "react-native-webview": "13.12.3", 72 + "react-native-webview": "13.12.4", 73 + "react-redux": "^9.1.2", 66 74 "tamagui": "^1.116.12", 67 75 "ua-parser-js": "^2.0.0-rc.1", 68 76 "uuid": "^11.0.2", ··· 77 85 "@babel/plugin-transform-private-methods": "^7.25.9", 78 86 "@babel/plugin-transform-private-property-in-object": "^7.25.9", 79 87 "@babel/plugin-transform-runtime": "^7.25.9", 80 - "@expo/metro-config": "~0.18.11", 81 - "@expo/metro-runtime": "~3.2.3", 88 + "@expo/metro-config": "~0.19.0", 89 + "@expo/metro-runtime": "~4.0.0", 82 90 "@tamagui/babel-plugin": "^1.116.12", 83 91 "@tamagui/metro-plugin": "^1.116.12", 84 92 "@types/babel__plugin-transform-runtime": "^7", 85 93 "@types/react": "~18.3.12", 86 94 "@types/uuid": "^10.0.0", 87 - "typescript": "~5.6.3" 95 + "typescript": "~5.3.3" 88 96 }, 89 97 "private": true 90 98 }
+57 -2
js/app/src/router.tsx
··· 10 10 import { 11 11 ArrowLeft, 12 12 Home, 13 + LogIn, 13 14 Menu, 14 15 Settings as SettingsIcon, 15 16 Video, 17 + User, 16 18 } from "@tamagui/lucide-icons"; 17 19 import { Provider, Settings } from "components"; 18 20 import StreamList from "components/stream-list/stream-list"; 19 21 import usePlatform from "hooks/usePlatform"; 20 22 import { useEffect } from "react"; 21 - import { Pressable } from "react-native"; 23 + import { ImageBackground, ImageSourcePropType, Pressable } from "react-native"; 22 24 import { useTheme, View } from "tamagui"; 23 25 import MultiScreen from "./screens/multi"; 24 26 import StreamScreen from "./screens/stream"; 25 27 import SupportScreen from "./screens/support"; 26 28 import GoLiveScreen from "./screens/golive"; 29 + import Login from "components/login/login"; 30 + import { selectUserProfile } from "features/bluesky/blueskySlice"; 31 + import { useAppSelector } from "store/hooks"; 32 + import AQLink from "components/aqlink"; 27 33 28 34 function HomeScreen() { 29 35 return ( ··· 43 49 screens: { 44 50 StreamList: "", 45 51 Stream: { 46 - path: "stream/:user", 52 + path: ":user", 47 53 }, 48 54 }, 49 55 }, ··· 51 57 Support: "support", 52 58 Settings: "settings", 53 59 GoLive: "golive", 60 + Login: "login", 54 61 }, 55 62 }, 56 63 }; ··· 75 82 ); 76 83 }; 77 84 85 + const AvatarButton = () => { 86 + const navigation = useNavigation(); 87 + const userProfile = useAppSelector(selectUserProfile); 88 + let source: ImageSourcePropType | undefined = undefined; 89 + let opacity = 1; 90 + if (userProfile) { 91 + source = { uri: userProfile.avatar }; 92 + opacity = 0; 93 + } 94 + return ( 95 + <AQLink to={{ screen: "Login", params: {} }}> 96 + <ImageBackground 97 + source={source} 98 + style={{ 99 + width: 40, 100 + height: 40, 101 + borderRadius: 20, 102 + overflow: "hidden", 103 + marginRight: 10, 104 + backgroundColor: "black", 105 + justifyContent: "center", 106 + alignItems: "center", 107 + }} 108 + > 109 + <User opacity={opacity}></User> 110 + </ImageBackground> 111 + </AQLink> 112 + ); 113 + }; 114 + 78 115 export default function Router() { 79 116 const { initPushNotifications, isWeb, isElectron } = usePlatform(); 80 117 useEffect(() => { ··· 94 131 const theme = useTheme(); 95 132 const { isWeb, isElectron } = usePlatform(); 96 133 const navigation = useNavigation(); 134 + useEffect(() => { 135 + // const params = new URLSearchParams(document.location.search); 136 + // if (params.has("code")) { 137 + // navigation.dispatch( 138 + // CommonActions.reset({ 139 + // index: 0, 140 + // routes: [{ name: "Login" }], 141 + // }), 142 + // ); 143 + // } 144 + }, []); 97 145 return ( 98 146 <Drawer.Navigator 99 147 initialRouteName="Home" 100 148 screenOptions={{ 101 149 headerLeft: () => <NavigationButton />, 150 + headerRight: () => <AvatarButton />, 102 151 drawerActiveTintColor: theme.accentColor.val, 103 152 headerStyle: {}, 104 153 }} ··· 152 201 drawerItemStyle: { display: "none" }, 153 202 }} 154 203 /> 204 + <Drawer.Screen 205 + name="Login" 206 + component={Login} 207 + options={{ drawerIcon: () => <LogIn /> }} 208 + /> 155 209 {isElectron && ( 156 210 <Drawer.Screen 157 211 name="GoLive" ··· 174 228 headerLeft: ({ canGoBack }) => ( 175 229 <NavigationButton canGoBack={canGoBack} /> 176 230 ), 231 + headerRight: () => <AvatarButton />, 177 232 headerShown: !isWeb, 178 233 }} 179 234 >
+12
js/app/store/hooks.tsx
··· 1 + // This file serves as a central hub for re-exporting pre-typed Redux hooks. 2 + // These imports are restricted elsewhere to ensure consistent 3 + // usage of typed hooks throughout the application. 4 + // We disable the ESLint rule here because this is the designated place 5 + // for importing and re-exporting the typed versions of hooks. 6 + /* eslint-disable @typescript-eslint/no-restricted-imports */ 7 + import { useDispatch, useSelector } from "react-redux"; 8 + import type { AppDispatch, RootState } from "./store"; 9 + 10 + // Use throughout your app instead of plain `useDispatch` and `useSelector` 11 + export const useAppDispatch = useDispatch.withTypes<AppDispatch>(); 12 + export const useAppSelector = useSelector.withTypes<RootState>();
+53
js/app/store/store.tsx
··· 1 + import type { Action, ThunkAction } from "@reduxjs/toolkit"; 2 + import { combineSlices, configureStore } from "@reduxjs/toolkit"; 3 + import { setupListeners } from "@reduxjs/toolkit/query"; 4 + import { aquareumSlice } from "features/aquareum/aquareumSlice"; 5 + import { blueskySlice } from "features/bluesky/blueskySlice"; 6 + // import { counterSlice } from "../features/counter/counterSlice" 7 + // import { quotesApiSlice } from "../features/quotes/quotesApiSlice" 8 + 9 + // `combineSlices` automatically combines the reducers using 10 + // their `reducerPath`s, therefore we no longer need to call `combineReducers`. 11 + const rootReducer = combineSlices(blueskySlice, aquareumSlice); 12 + // Infer the `RootState` type from the root reducer 13 + export type RootState = ReturnType<typeof rootReducer>; 14 + 15 + // The store setup is wrapped in `makeStore` to allow reuse 16 + // when setting up tests that need the same store config 17 + export const makeStore = (preloadedState?: Partial<RootState>) => { 18 + const store = configureStore({ 19 + reducer: rootReducer, 20 + // Adding the api middleware enables caching, invalidation, polling, 21 + // and other useful features of `rtk-query`. 22 + middleware: (getDefaultMiddleware) => { 23 + return getDefaultMiddleware({ 24 + serializableCheck: { 25 + // Ignore these action types 26 + ignoredActions: [], 27 + // Ignore these field paths in all actions 28 + ignoredActionPaths: ["payload"], 29 + // Ignore these paths in the state 30 + ignoredPaths: [/^bluesky\..*/], 31 + }, 32 + }); 33 + }, 34 + preloadedState, 35 + }); 36 + // configure listeners using the provided defaults 37 + // optional, but required for `refetchOnFocus`/`refetchOnReconnect` behaviors 38 + setupListeners(store.dispatch); 39 + return store; 40 + }; 41 + 42 + export const store = makeStore(); 43 + 44 + // Infer the type of `store` 45 + export type AppStore = typeof store; 46 + // Infer the `AppDispatch` type from the store itself 47 + export type AppDispatch = AppStore["dispatch"]; 48 + export type AppThunk<ThunkReturnType = void> = ThunkAction< 49 + ThunkReturnType, 50 + RootState, 51 + unknown, 52 + Action 53 + >;
+1 -1
js/app/tsconfig.base.json
··· 10 10 "preserveSymlinks": true, 11 11 "incremental": true, 12 12 "jsx": "react-jsx", 13 - "module": "preserve", 13 + "module": "esnext", 14 14 "moduleResolution": "node", 15 15 "noEmitOnError": false, 16 16 "noImplicitAny": false,
+1 -1
js/desktop/src/env.ts
··· 14 14 } 15 15 return { 16 16 isDev: process.env["WEBPACK_SERVE"] === "true", 17 - skipNode: process.env["AQD_SKIP_NODE"] === "true", 17 + skipNode: process.env["AQD_SKIP_NODE"] !== "false", 18 18 nodeFrontend: process.env["AQD_NODE_FRONTEND"] === "true", 19 19 updateBaseUrl, 20 20 };
+4
js/desktop/src/index.ts
··· 96 96 window.webContents.toggleDevTools(); 97 97 }); 98 98 99 + globalShortcut.register("CommandOrControl+Shift+R", () => { 100 + window.webContents.reload(); 101 + }); 102 + 99 103 window.removeMenu(); 100 104 101 105 return window;
+3
package.json
··· 30 30 ], 31 31 "packageManager": "yarn@4.3.0", 32 32 "dependencies": { 33 + "@atproto/api": "^0.13.16", 34 + "@atproto/jwk-webcrypto": "^0.1.2", 35 + "@atproto/oauth-client-browser": "^0.3.1", 33 36 "firebase-admin": "^12.7.0" 34 37 } 35 38 }
+63 -16
pkg/api/api.go
··· 9 9 "log/slog" 10 10 "net" 11 11 "net/http" 12 + "net/http/httputil" 12 13 "net/url" 13 14 "os" 14 15 "strings" ··· 20 21 sloghttp "github.com/samber/slog-http" 21 22 22 23 "aquareum.tv/aquareum/js/app" 24 + "aquareum.tv/aquareum/pkg/atproto" 23 25 "aquareum.tv/aquareum/pkg/config" 24 26 "aquareum.tv/aquareum/pkg/crypto/signers/eip712" 25 27 apierrors "aquareum.tv/aquareum/pkg/errors" ··· 89 91 } 90 92 91 93 func (a *AquareumAPI) Handler(ctx context.Context) (http.Handler, error) { 92 - files, err := app.Files() 93 - if err != nil { 94 - return nil, err 95 - } 96 94 router := httprouter.New() 97 95 apiRouter := httprouter.New() 98 96 apiRouter.HandlerFunc("POST", "/api/notification", a.HandleNotification(ctx)) ··· 113 111 apiRouter.GET("/api/playback/:user/stream.jpg", a.HandleThumbnailPlayback(ctx)) 114 112 apiRouter.POST("/api/player-event", a.HandlePlayerEvent(ctx)) 115 113 apiRouter.GET("/api/segment/recent", a.HandleRecentSegments(ctx)) 116 - apiRouter.GET("/api/settings", a.HandleSettingsGET(ctx)) 117 - apiRouter.PUT("/api/settings/:id", a.HandleSettingsPUT(ctx)) 114 + apiRouter.GET("/api/identity", a.HandleIdentityGET(ctx)) 115 + apiRouter.PUT("/api/identity/:id", a.HandleIdentityPUT(ctx)) 116 + apiRouter.GET("/api/bluesky/resolve/:handle", a.HandleBlueskyResolve(ctx)) 117 + apiRouter.GET("/api/atproto-oauth", a.HandleATProtoOAuth(ctx)) 118 118 apiRouter.NotFound = a.HandleAPI404(ctx) 119 119 router.Handler("GET", "/api/*resource", apiRouter) 120 120 router.Handler("POST", "/api/*resource", apiRouter) ··· 122 122 router.Handler("PATCH", "/api/*resource", apiRouter) 123 123 router.Handler("DELETE", "/api/*resource", apiRouter) 124 124 router.GET("/dl/*params", a.HandleAppDownload(ctx)) 125 - router.NotFound = a.FileHandler(ctx, http.FileServer(AppHostingFS{http.FS(files)})) 125 + if a.CLI.FrontendProxy != "" { 126 + u, err := url.Parse(a.CLI.FrontendProxy) 127 + if err != nil { 128 + return nil, err 129 + } 130 + log.Warn(ctx, "using frontend proxy instead of bundled frontend", "destination", a.CLI.FrontendProxy) 131 + router.NotFound = &httputil.ReverseProxy{ 132 + Rewrite: func(r *httputil.ProxyRequest) { 133 + r.SetXForwarded() 134 + r.SetURL(u) 135 + }, 136 + } 137 + } else { 138 + files, err := app.Files() 139 + if err != nil { 140 + return nil, err 141 + } 142 + router.NotFound = a.FileHandler(ctx, http.FileServer(AppHostingFS{http.FS(files)})) 143 + } 126 144 handler := sloghttp.Recovery(router) 127 145 handler = cors.AllowAll().Handler(handler) 128 146 handler = sloghttp.New(slog.Default())(handler) ··· 230 248 } 231 249 } 232 250 233 - func (a *AquareumAPI) HandleSettingsPUT(ctx context.Context) httprouter.Handle { 251 + func (a *AquareumAPI) HandleIdentityPUT(ctx context.Context) httprouter.Handle { 234 252 return func(w http.ResponseWriter, req *http.Request, params httprouter.Params) { 235 253 id := params.ByName("id") 236 254 if id == "" { ··· 247 265 apierrors.WriteHTTPBadRequest(w, "could not verify signature on payload", err) 248 266 return 249 267 } 250 - golive, ok := signed.Data().(*v0.GoLive) 268 + ident, ok := signed.Data().(*v0.Identity) 251 269 if !ok { 252 270 log.Log(ctx, "got signed payload but it wasn't a golive") 253 271 apierrors.WriteHTTPBadRequest(w, "not a golive", nil) ··· 259 277 return 260 278 } 261 279 log.Log(ctx, "got signed & verified payload", "payload", signed) 262 - if err := a.Model.UpdateSettings(&model.Settings{ 263 - ID: id, 264 - Streamer: golive.Streamer, 265 - Title: golive.Title, 280 + if err := a.Model.UpdateIdentity(&model.Identity{ 281 + ID: id, 282 + Handle: ident.Handle, 283 + DID: ident.DID, 266 284 }); err != nil { 267 285 apierrors.WriteHTTPInternalServerError(w, "unable to update settings", err) 268 286 return ··· 357 375 } 358 376 } 359 377 360 - func (a *AquareumAPI) HandleSettingsGET(ctx context.Context) httprouter.Handle { 378 + func (a *AquareumAPI) HandleIdentityGET(ctx context.Context) httprouter.Handle { 361 379 return func(w http.ResponseWriter, req *http.Request, params httprouter.Params) { 362 380 id := a.MediaSigner.Pub.String() 363 381 364 - settings, err := a.Model.GetSettings(id) 382 + ident, err := a.Model.GetIdentity(id) 365 383 if err != nil { 366 384 apierrors.WriteHTTPInternalServerError(w, "unable to get settings", err) 367 385 return 368 386 } 369 387 370 - bs, err := json.Marshal(settings) 388 + bs, err := json.Marshal(ident) 371 389 if err != nil { 372 390 apierrors.WriteHTTPInternalServerError(w, "unable to marshal json", err) 373 391 return 374 392 } 393 + w.Write(bs) 394 + } 395 + } 396 + 397 + func (a *AquareumAPI) HandleBlueskyResolve(ctx context.Context) httprouter.Handle { 398 + return func(w http.ResponseWriter, req *http.Request, params httprouter.Params) { 399 + log.Log(ctx, "got bluesky notification", "params", params) 400 + key, err := atproto.SyncBlueskyRepo(ctx, params.ByName("handle"), a.Model) 401 + if err != nil { 402 + apierrors.WriteHTTPInternalServerError(w, "could not resolve aquareum key", err) 403 + return 404 + } 405 + w.Write([]byte(key)) 406 + } 407 + } 408 + 409 + func (a *AquareumAPI) HandleATProtoOAuth(ctx context.Context) httprouter.Handle { 410 + return func(w http.ResponseWriter, req *http.Request, params httprouter.Params) { 411 + host, _, err := net.SplitHostPort(req.Host) 412 + if err != nil { 413 + host = req.Host 414 + } 415 + meta := atproto.GetMetadata(host) 416 + bs, err := json.Marshal(meta) 417 + if err != nil { 418 + apierrors.WriteHTTPInternalServerError(w, "could not marshal metadata", err) 419 + return 420 + } 421 + w.Header().Set("Content-Type", "application/json") 375 422 w.Write(bs) 376 423 } 377 424 }
+32 -12
pkg/api/api_internal.go
··· 70 70 errors.WriteHTTPBadRequest(w, "user required", nil) 71 71 return 72 72 } 73 - user = a.NormalizeUser(user) 73 + user, err := a.NormalizeUser(ctx, user) 74 + if err != nil { 75 + errors.WriteHTTPBadRequest(w, "invalid user", err) 76 + return 77 + } 74 78 w.Header().Set("content-type", "text/plain") 75 79 fmt.Fprintf(w, "ffconcat version 1.0\n") 76 80 // intermittent reports that you need two here to make things work properly? shouldn't matter. ··· 85 89 errors.WriteHTTPBadRequest(w, "user required", nil) 86 90 return 87 91 } 88 - user = a.NormalizeUser(user) 92 + user, err := a.NormalizeUser(ctx, user) 93 + if err != nil { 94 + errors.WriteHTTPBadRequest(w, "invalid user", err) 95 + return 96 + } 89 97 file := <-a.MediaManager.SubscribeSegment(ctx, user) 90 98 w.Header().Set("Location", fmt.Sprintf("%s/playback/%s/segment/%s\n", a.CLI.OwnInternalURL(), user, file)) 91 99 w.WriteHeader(301) ··· 97 105 errors.WriteHTTPBadRequest(w, "user required", nil) 98 106 return 99 107 } 100 - user = a.NormalizeUser(user) 108 + user, err := a.NormalizeUser(ctx, user) 109 + if err != nil { 110 + errors.WriteHTTPBadRequest(w, "invalid user", err) 111 + return 112 + } 101 113 file := p.ByName("file") 102 114 if file == "" { 103 115 errors.WriteHTTPBadRequest(w, "file required", nil) ··· 117 129 errors.WriteHTTPBadRequest(w, "user required", nil) 118 130 return 119 131 } 120 - user = a.NormalizeUser(user) 132 + user, err := a.NormalizeUser(ctx, user) 133 + if err != nil { 134 + errors.WriteHTTPBadRequest(w, "invalid user", err) 135 + return 136 + } 121 137 w.Header().Set("Content-Type", "video/x-matroska") 122 138 w.WriteHeader(200) 123 - err := a.MediaManager.SegmentToMKVPlusOpus(ctx, user, w) 139 + err = a.MediaManager.SegmentToMKVPlusOpus(ctx, user, w) 124 140 if err != nil { 125 141 log.Log(ctx, "stream.mkv error", "error", err) 126 142 } ··· 132 148 errors.WriteHTTPBadRequest(w, "user required", nil) 133 149 return 134 150 } 135 - user = a.NormalizeUser(user) 151 + user, err := a.NormalizeUser(ctx, user) 152 + if err != nil { 153 + errors.WriteHTTPBadRequest(w, "invalid user", err) 154 + return 155 + } 136 156 var delayMS int64 = 1000 137 157 userDelay := r.URL.Query().Get("delayms") 138 158 if userDelay != "" { ··· 246 266 247 267 id := a.Signer.Hex() 248 268 249 - settings, err := a.Model.GetSettings(id) 269 + ident, err := a.Model.GetIdentity(id) 250 270 if err != nil { 251 271 errors.WriteHTTPInternalServerError(w, "unable to get settings", err) 252 272 return 253 273 } 254 274 255 - bs, err := json.Marshal(settings) 275 + bs, err := json.Marshal(ident) 256 276 if err != nil { 257 277 errors.WriteHTTPInternalServerError(w, "unable to marshal json", err) 258 278 return ··· 271 291 return 272 292 } 273 293 274 - var settings model.Settings 275 - if err := json.NewDecoder(r.Body).Decode(&settings); err != nil { 294 + var ident model.Identity 295 + if err := json.NewDecoder(r.Body).Decode(&ident); err != nil { 276 296 errors.WriteHTTPBadRequest(w, "invalid request body", err) 277 297 return 278 298 } 279 - settings.ID = id 299 + ident.ID = id 280 300 281 - if err := a.Model.UpdateSettings(&settings); err != nil { 301 + if err := a.Model.UpdateIdentity(&ident); err != nil { 282 302 errors.WriteHTTPInternalServerError(w, "unable to update settings", err) 283 303 return 284 304 }
+4 -4
pkg/api/api_test.go
··· 113 113 t.Run(tt.name, func(t *testing.T) { 114 114 cli := &config.CLI{AdminAccount: tt.adminAccount, FirebaseServiceAccount: "foo"} 115 115 a := AquareumAPI{CLI: cli, Model: mod, Signer: signer, FirebaseNotifier: &MockFirebase{}} 116 - handler := a.HandleSettingsPUT(context.Background()) 116 + handler := a.HandleIdentityPUT(context.Background()) 117 117 118 - goLive := v0.GoLive{ 119 - Streamer: "@aquareum.tv", 120 - Title: "Let's gooooooo!", 118 + goLive := v0.Identity{ 119 + DID: "did:plc:dkh4rwafdcda4ko7lewe43ml", 120 + Handle: "@aquareum.bsky.social", 121 121 } 122 122 signed, err := signer.SignMessage(goLive) 123 123 require.NoError(t, err)
+32 -6
pkg/api/playback.go
··· 12 12 "time" 13 13 14 14 "aquareum.tv/aquareum/pkg/aqtime" 15 + "aquareum.tv/aquareum/pkg/atproto" 15 16 "aquareum.tv/aquareum/pkg/errors" 16 17 "github.com/julienschmidt/httprouter" 17 18 "golang.org/x/sync/errgroup" 18 19 ) 19 20 20 - func (a *AquareumAPI) NormalizeUser(user string) string { 21 + func (a *AquareumAPI) NormalizeUser(ctx context.Context, user string) (string, error) { 21 22 alias, ok := a.Aliases[user] 22 23 if ok { 23 24 user = alias 24 25 } 25 26 user = strings.ToLower(user) 26 - return user 27 + // aquareum signing key 28 + if strings.HasPrefix(user, "0x") { 29 + return user, nil 30 + } 31 + // assume bluesky handle 32 + key, err := atproto.SyncBlueskyRepoCached(ctx, user, a.Model) 33 + if err != nil { 34 + return "", err 35 + } 36 + return key, nil 27 37 } 28 38 29 39 func (a *AquareumAPI) HandleMP4Playback(ctx context.Context) httprouter.Handle { ··· 33 43 errors.WriteHTTPBadRequest(w, "user required", nil) 34 44 return 35 45 } 36 - user = a.NormalizeUser(user) 46 + user, err := a.NormalizeUser(ctx, user) 47 + if err != nil { 48 + errors.WriteHTTPBadRequest(w, "invalid user", err) 49 + return 50 + } 37 51 var delayMS int64 = 3000 38 52 userDelay := r.URL.Query().Get("delayms") 39 53 if userDelay != "" { ··· 72 86 errors.WriteHTTPBadRequest(w, "user required", nil) 73 87 return 74 88 } 75 - user = a.NormalizeUser(user) 89 + user, err := a.NormalizeUser(ctx, user) 90 + if err != nil { 91 + errors.WriteHTTPBadRequest(w, "invalid user", err) 92 + return 93 + } 76 94 var delayMS int64 = 1000 77 95 userDelay := r.URL.Query().Get("delayms") 78 96 if userDelay != "" { ··· 147 165 errors.WriteHTTPBadRequest(w, "user required", nil) 148 166 return 149 167 } 150 - user = a.NormalizeUser(user) 168 + user, err := a.NormalizeUser(ctx, user) 169 + if err != nil { 170 + errors.WriteHTTPBadRequest(w, "invalid user", err) 171 + return 172 + } 151 173 file := p.ByName("file") 152 174 if file == "" { 153 175 errors.WriteHTTPBadRequest(w, "file required", nil) ··· 174 196 errors.WriteHTTPBadRequest(w, "user required", nil) 175 197 return 176 198 } 177 - user = a.NormalizeUser(user) 199 + user, err := a.NormalizeUser(ctx, user) 200 + if err != nil { 201 + errors.WriteHTTPBadRequest(w, "invalid user", err) 202 + return 203 + } 178 204 thumb, err := a.Model.LatestThumbnailForUser(user) 179 205 if err != nil { 180 206 errors.WriteHTTPInternalServerError(w, "could not query thumbnail", err)
+201
pkg/atproto/atproto.go
··· 1 + package atproto 2 + 3 + import ( 4 + "bytes" 5 + "context" 6 + "fmt" 7 + "sync" 8 + 9 + "aquareum.tv/aquareum/pkg/aqhttp" 10 + "aquareum.tv/aquareum/pkg/log" 11 + "aquareum.tv/aquareum/pkg/model" 12 + comatproto "github.com/bluesky-social/indigo/api/atproto" 13 + "github.com/bluesky-social/indigo/atproto/identity" 14 + "github.com/bluesky-social/indigo/atproto/syntax" 15 + "github.com/bluesky-social/indigo/repo" 16 + "github.com/bluesky-social/indigo/util" 17 + "github.com/bluesky-social/indigo/xrpc" 18 + "github.com/ipfs/go-cid" 19 + "github.com/ipfs/go-datastore" 20 + blockstore "github.com/ipfs/go-ipfs-blockstore" 21 + ) 22 + 23 + var SyncGetRepo = comatproto.SyncGetRepo 24 + var AQUAREUM_KEY = "tv.aquareum.key" 25 + 26 + // handleLocks provides per-handle synchronization 27 + var handleLocks = struct { 28 + sync.Mutex 29 + locks map[string]*sync.Mutex 30 + }{ 31 + locks: make(map[string]*sync.Mutex), 32 + } 33 + 34 + // getHandleLock returns a mutex for the given handle 35 + func getHandleLock(handle string) *sync.Mutex { 36 + handleLocks.Lock() 37 + defer handleLocks.Unlock() 38 + 39 + if lock, exists := handleLocks.locks[handle]; exists { 40 + return lock 41 + } 42 + 43 + lock := &sync.Mutex{} 44 + handleLocks.locks[handle] = lock 45 + return lock 46 + } 47 + 48 + func SyncBlueskyRepoCached(ctx context.Context, handle string, mod model.Model) (string, error) { 49 + repo, err := mod.GetRepoByHandle(handle) 50 + if err != nil { 51 + return "", fmt.Errorf("failed to get repo for %s: %w", handle, err) 52 + } 53 + if repo != nil { 54 + return repo.AquareumKey, nil 55 + } 56 + return SyncBlueskyRepo(ctx, handle, mod) 57 + } 58 + 59 + func SyncBlueskyRepo(ctx context.Context, handle string, mod model.Model) (string, error) { 60 + // Get handle-specific lock and ensure synchronized access 61 + handleLock := getHandleLock(handle) 62 + handleLock.Lock() 63 + defer handleLock.Unlock() 64 + 65 + ident, err := ResolveIdent(ctx, handle) 66 + if err != nil { 67 + return "", fmt.Errorf("failed to resolve Bluesky handle %s: %w", handle, err) 68 + } 69 + 70 + rev := "" 71 + oldRepo, err := mod.GetRepo(ident.DID.String()) 72 + if err != nil { 73 + return "", fmt.Errorf("failed to get DID record for %s: %w", ident.DID.String(), err) 74 + } 75 + if oldRepo != nil { 76 + log.Log(ctx, "found existing DID record", "did", oldRepo.DID, "version", oldRepo.Version) 77 + rev = oldRepo.Version 78 + } 79 + 80 + log.Log(ctx, "resolved bluesky identity", "did", ident.DID, "handle", ident.Handle, "pds", ident.PDSEndpoint()) 81 + xrpcc := xrpc.Client{ 82 + Host: ident.PDSEndpoint(), 83 + Client: &aqhttp.Client, 84 + } 85 + if xrpcc.Host == "" { 86 + return "", fmt.Errorf("no PDS endpoint found for Bluesky identity %s", handle) 87 + } 88 + repoBytes, err := SyncGetRepo(ctx, &xrpcc, ident.DID.String(), rev) 89 + if err != nil { 90 + return "", fmt.Errorf("failed to fetch repo for %s from PDS %s: %w", ident.DID.String(), xrpcc.Host, err) 91 + } 92 + 93 + // uncomment for saving new test cases: 94 + 95 + // timestamp := time.Now().Unix() 96 + // filename := fmt.Sprintf("%d.base64", timestamp) 97 + // encodedBytes := base64.URLEncoding.EncodeToString(repoBytes) 98 + // err = os.WriteFile(filename, []byte(encodedBytes), 0644) 99 + // if err != nil { 100 + // return "", fmt.Errorf("failed to write encoded repo bytes to file: %w", err) 101 + // } 102 + 103 + log.Log(ctx, "got diff", "bytes", len(repoBytes)) 104 + 105 + bs := blockstore.NewBlockstore(datastore.NewMapDatastore()) 106 + root, err := repo.IngestRepo(ctx, bs, bytes.NewReader(repoBytes)) 107 + if err != nil { 108 + return "", fmt.Errorf("failed to ingest repo for %s: %w", ident.DID.String(), err) 109 + } 110 + log.Log(ctx, "ingested repo", "root", root) 111 + if oldRepo != nil { 112 + oldRoot, err := cid.Decode(oldRepo.RootCID) 113 + if err != nil { 114 + return "", fmt.Errorf("failed to decode old root CID for %s: %w", ident.DID.String(), err) 115 + } 116 + if oldRoot.Equals(root) { 117 + log.Log(ctx, "no changes to repo", "root", root) 118 + return oldRepo.AquareumKey, nil 119 + } 120 + } 121 + 122 + r, err := repo.ReadRepoFromCar(ctx, bytes.NewReader(repoBytes)) 123 + if err != nil { 124 + return "", fmt.Errorf("failed to parse repo CAR data for %s: %w", ident.DID.String(), err) 125 + } 126 + 127 + // extract DID from repo commit 128 + sc := r.SignedCommit() 129 + signerDID, err := syntax.ParseDID(sc.Did) 130 + if err != nil { 131 + return "", fmt.Errorf("invalid DID in repo commit for %s: %w", ident.DID.String(), err) 132 + } 133 + if signerDID != ident.DID { 134 + return "", fmt.Errorf("signer DID %s does not match identity %s", signerDID, ident.DID.String()) 135 + } 136 + 137 + processed := 0 138 + var key string 139 + if oldRepo != nil { 140 + key = oldRepo.AquareumKey 141 + } 142 + bs = r.Blockstore() 143 + cst := util.CborStore(bs) 144 + allKeys, err := bs.AllKeysChan(ctx) 145 + if err != nil { 146 + return "", fmt.Errorf("failed to get all keys: %w", err) 147 + } 148 + for k := range allKeys { 149 + log.Log(ctx, "processing key", "key", k) 150 + rec := map[string]any{} 151 + err := cst.Get(ctx, k, &rec) 152 + if err != nil { 153 + return "", fmt.Errorf("failed to get block for key %s: %w", k, err) 154 + } 155 + log.Log(ctx, "got block", "key", k, "size", len(rec)) 156 + typ, ok := rec["$type"] 157 + if !ok { 158 + continue 159 + } 160 + if typ != "app.bsky.feed.post" { 161 + continue 162 + } 163 + processed += 1 164 + aquareumKeyAny, ok := rec[AQUAREUM_KEY] 165 + if !ok { 166 + continue 167 + } 168 + aquareumKey, ok := aquareumKeyAny.(string) 169 + if !ok { 170 + continue 171 + } 172 + key = aquareumKey 173 + } 174 + log.Log(ctx, "processed new posts", "postCount", processed) 175 + newRepo := model.Repo{ 176 + DID: ident.DID.String(), 177 + PDS: ident.PDSEndpoint(), 178 + Version: sc.Rev, 179 + AquareumKey: key, 180 + RootCID: root.String(), 181 + Handle: handle, 182 + } 183 + err = mod.UpdateRepo(&newRepo) 184 + if err != nil { 185 + return "", fmt.Errorf("failed to update DID record for %s: %w", sc.Did, err) 186 + } 187 + 188 + return key, nil 189 + } 190 + 191 + var ResolveIdent = resolveIdent 192 + 193 + func resolveIdent(ctx context.Context, arg string) (*identity.Identity, error) { 194 + id, err := syntax.ParseAtIdentifier(arg) 195 + if err != nil { 196 + return nil, err 197 + } 198 + 199 + dir := identity.DefaultDirectory() 200 + return dir.Lookup(ctx, *id) 201 + }
+112
pkg/atproto/atproto_test.go
··· 1 + package atproto 2 + 3 + import ( 4 + "context" 5 + "encoding/base64" 6 + "encoding/json" 7 + "os" 8 + "path/filepath" 9 + "testing" 10 + 11 + "aquareum.tv/aquareum/pkg/model" 12 + "github.com/bluesky-social/indigo/atproto/identity" 13 + "github.com/bluesky-social/indigo/xrpc" 14 + "github.com/stretchr/testify/require" 15 + ) 16 + 17 + func TestKeyResolution(t *testing.T) { 18 + // i wrote these tests before i renamed this and i don't wanna re-export, okay? 19 + oldAquareumKey := AQUAREUM_KEY 20 + defer func() { AQUAREUM_KEY = oldAquareumKey }() 21 + AQUAREUM_KEY = "aquareumKey" 22 + 23 + dir, err := os.MkdirTemp("", "atproto-test-*") 24 + require.NoError(t, err) 25 + defer os.RemoveAll(dir) 26 + 27 + fname := filepath.Join(dir, "db.sqlite") 28 + mod, err := model.MakeDB(fname) 29 + require.NoError(t, err) 30 + oldResolveIdent := ResolveIdent 31 + ResolveIdent = func(ctx context.Context, arg string) (*identity.Identity, error) { 32 + var doc identity.DIDDocument 33 + err = json.Unmarshal(didDoc, &doc) 34 + require.NoError(t, err) 35 + 36 + id := identity.ParseIdentity(&doc) 37 + return &id, nil 38 + } 39 + defer func() { ResolveIdent = oldResolveIdent }() 40 + oldSyncGetRepo := SyncGetRepo 41 + defer func() { SyncGetRepo = oldSyncGetRepo }() 42 + 43 + // full sync 44 + SyncGetRepo = MockSyncGetRepo(fullSync) 45 + k, err := SyncBlueskyRepo(context.Background(), "aquareum.bsky.social", mod) 46 + require.NoError(t, err) 47 + require.Equal(t, firstKey, k) 48 + 49 + // empty sync 50 + SyncGetRepo = MockSyncGetRepo(emptySync) 51 + k, err = SyncBlueskyRepo(context.Background(), "aquareum.bsky.social", mod) 52 + require.NoError(t, err) 53 + require.Equal(t, firstKey, k) 54 + 55 + // incremental sync with no changes 56 + SyncGetRepo = MockSyncGetRepo(incrementalSyncSameKey) 57 + k, err = SyncBlueskyRepo(context.Background(), "aquareum.bsky.social", mod) 58 + require.NoError(t, err) 59 + require.Equal(t, firstKey, k) 60 + 61 + // incremental sync with a new aquareum key 62 + SyncGetRepo = MockSyncGetRepo(incrementalSyncNewKey) 63 + k, err = SyncBlueskyRepo(context.Background(), "aquareum.bsky.social", mod) 64 + require.NoError(t, err) 65 + require.Equal(t, secondKey, k) 66 + } 67 + 68 + func MockSyncGetRepo(res string) func(ctx context.Context, xrpcc *xrpc.Client, did string, rev string) ([]byte, error) { 69 + return func(ctx context.Context, xrpcc *xrpc.Client, did string, rev string) ([]byte, error) { 70 + decoded, err := base64.URLEncoding.DecodeString(res) 71 + if err != nil { 72 + return nil, err 73 + } 74 + return decoded, nil 75 + } 76 + } 77 + 78 + // captured from aquareum.bsky.social pds 79 + var didDoc = []byte(` 80 + { 81 + "@context": [ 82 + "https://www.w3.org/ns/did/v1", 83 + "https://w3id.org/security/multikey/v1", 84 + "https://w3id.org/security/suites/secp256k1-2019/v1" 85 + ], 86 + "alsoKnownAs": [ 87 + "at://aquareum.bsky.social" 88 + ], 89 + "id": "did:plc:dkh4rwafdcda4ko7lewe43ml", 90 + "service": [ 91 + { 92 + "id": "#atproto_pds", 93 + "serviceEndpoint": "https://milkcap.us-west.host.bsky.network", 94 + "type": "AtprotoPersonalDataServer" 95 + } 96 + ], 97 + "verificationMethod": [ 98 + { 99 + "controller": "did:plc:dkh4rwafdcda4ko7lewe43ml", 100 + "id": "did:plc:dkh4rwafdcda4ko7lewe43ml#atproto", 101 + "publicKeyMultibase": "zQ3shMdd6GA2eefzDHPoTGmtt1D8tTfbE7MqBzrF9Dv78m5Lr", 102 + "type": "Multikey" 103 + } 104 + ] 105 + } 106 + `) 107 + var firstKey = "0x6fbe6863cf1efc713899455e526a13239d371175" 108 + var secondKey = "0xf081d6383777482868faa8d5534a5f1a7777bee8" 109 + var fullSync = `OqJlcm9vdHOB2CpYJQABcRIg8rwOSz2yxfhVsZgjPLoriASZoxACV-0nDsPTufChhC9ndmVyc2lvbgGpAQFxEiD1lx4wXXrKA3-lEka_76FDOL8Q3pMLSDBF9K6kjyhASaJhZYGkYWtYIGFwcC5ic2t5LmZlZWQucG9zdC8zbGJnY2VvcHJjazJ3YXAAYXTYKlglAAFxEiBlb4TL7j6T5EHCS1GK-CGp1CWQEgnI4ijAdWdW5PUSGGF22CpYJQABcRIg7JoAcR_XotwhnWDAJMYUechMtv8fu_w24h5CEkzOfXphbPbgAQFxEiDyvA5LPbLF-FWxmCM8uiuIBJmjEAJX7ScOw9O58KGEL6ZjZGlkeCBkaWQ6cGxjOmRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbGNyZXZtM2xiaHo3Zm1qZnIybmNzaWdYQLJdVuxKJ_H9MWWiyHEs0CHfGSWTHkSwuGec-RE7ZZT2B6tR7JQ8ozUfovYlLoa_mf_LbswCmrXIJLbdI9FAeB5kZGF0YdgqWCUAAXESIPoII-xqjgtyN-IobBCXzv9p3xi__PTUHGkTOVK9Tl98ZHByZXb2Z3ZlcnNpb24D0QEBcRIg-ggj7GqOC3I34ihsEJfO_2nfGL_89NQcaRM5Ur1OX3yiYWWBpGFrWCBhcHAuYnNreS5mZWVkLnBvc3QvM2xiZ2Nkc29lajIyd2FwAGF02CpYJQABcRIg9ZceMF16ygN_pRJGv--hQzi_EN6TC0gwRfSupI8oQElhdtgqWCUAAXESIMjKJlapR-7V4yEIHJsqS3tUsugqlklsmHY4I486V1ekYWzYKlglAAFxEiDofs8Z467E_81R8yTDTUSKkRwplLtF-xSPUoQL7ndVuJACAXESINU_reY-Ie7fBQaJWzLubV_8TShioMnyVASU35S5K7ZaomFlg6Rha1ggYXBwLmJza3kuZmVlZC5wb3N0LzNsYmdjcWduZWwyMndhcABhdPZhdtgqWCUAAXESIB0okVvvemjrqHVTVvGYAt9q9PuLU7V-RI9EqJ_RgZSWpGFrSmh6N2ZncWJjMmZhcBZhdPZhdtgqWCUAAXESIEwBqj4S9YJ1_QDbEJa2QwL_dmXgQHja0uXcF1GCvdlipGFrWBpncmFwaC5mb2xsb3cvM2xhemZvaHA2cmsyd2FwCWF09mF22CpYJQABcRIg_vrZNDHQ8ZAisJQ8oKCV6_rAP69h9rzwl8HNWhZKlqFhbPZTAXESIGVvhMvuPpPkQcJLUYr4IanUJZASCcjiKMB1Z1bk9RIYomFlgGFs2CpYJQABcRIg1T-t5j4h7t8FBolbMu5tX_xNKGKgyfJUBJTflLkrtlq_AwFxEiBMAao-EvWCdf0A2xCWtkMC_3Zl4EB42tLl3BdRgr3ZYqVkdGV4dHgddGhleSBhcmUgbm93IGRvbid0IHdvcnJ5IPCfpJdlJHR5cGVyYXBwLmJza3kuZmVlZC5wb3N0ZWxhbmdzgWJlbmVyZXBseaJkcm9vdKJjY2lkeDtiYWZ5cmVpZ2xldG8yYWNwbW5maDZxNXB3czZ4Z2JzdmpsbndmcWl0ZXcydTJhMzVrM3czd3QyNGVuYWN1cml4RmF0Oi8vZGlkOnBsYzoyem14aWtpZzJzajdncWFlemw1Z250YWUvYXBwLmJza3kuZmVlZC5wb3N0LzNsYmd2Y3VrYWNrMjVmcGFyZW50omNjaWR4O2JhZnlyZWlnbGV0bzJhY3BtbmZoNnE1cHdzNnhnYnN2amxud2ZxaXRldzJ1MmEzNWszdzN3dDI0ZW5hY3VyaXhGYXQ6Ly9kaWQ6cGxjOjJ6bXhpa2lnMnNqN2dxYWV6bDVnbnRhZS9hcHAuYnNreS5mZWVkLnBvc3QvM2xiZ3ZjdWthY2syNWljcmVhdGVkQXR4GDIwMjQtMTEtMjFUMTc6NDI6MzYuMDY2WtEBAXESIOh-zxnjrsT_zVHzJMNNRIqRHCmUu0X7FI9ShAvud1W4omFlgaRha1ggYXBwLmJza3kuZmVlZC5saWtlLzNsYmRpNDRpYWt5MmJhcABhdNgqWCUAAXESIF66hfxKLwWeDj1wC8fUC0Vts3oouA83cjytyVOZuKgOYXbYKlglAAFxEiBnRrSTDjAiSBlUXxlBHbX1riFlwwrvGeLiPrKiRVqwtmFs2CpYJQABcRIgtcl2NrLyqA87bqGCHgYFI8zrg1goxRWohu0QTqYU6V24AgFxEiBeuoX8Si8Fng49cAvH1AtFbbN6KLgPN3I8rclTmbioDqJhZYKkYWtYIGFwcC5ic2t5LmZlZWQucG9zdC8zbGJkbDN6eGlkcDJyYXAAYXTYKlglAAFxEiCliJ0EuHabX2fmYQ5LUEIZP5U1qOp9Wkodr5bSOGA6y2F22CpYJQABcRIgMkMZX3_3xRnY5shHGYJkFCuT3i_0r9YjJyrksoN5k2CkYWtKZ2FyYmNyc2Myd2FwFmF02CpYJQABcRIglmlU9IJklExqIGP4xzRd9bxftBzlRK1lEA6oXhsC8VlhdtgqWCUAAXESICB15VbgVux27OAevULqO2_FKKgdndxnw5RXfadpVUkoYWzYKlglAAFxEiAzY6Nwv73IeBv-FKpb2d6uv-E6-UJvUVNIZGGWX4OU58gBAXESIDNjo3C_vch4G_4UqlvZ3q6_4Tr5Qm9RU0hkYZZfg5TnomFlgqRha1ggYXBwLmJza3kuZmVlZC5saWtlLzNsYmh6NzJ5YXJoMmJhcABhdPZhdtgqWCUAAXESIBek7BnkUPmK5RQRrQnGyEjL-VafNR4wQdVDX4PhCItspGFrUnBvc3QvM2xiZGtyZ3NoaTUyeWFwDmF09mF22CpYJQABcRIgqeOaphsHW2DZB2ar5azxeEOTDYLTyE0BS-n4izuYuwRhbPb4AQFxEiAXpOwZ5FD5iuUUEa0JxshIy_lWnzUeMEHVQ1-D4QiLbKNlJHR5cGVyYXBwLmJza3kuZmVlZC5saWtlZ3N1YmplY3SiY2NpZHg7YmFmeXJlaWdsZXRvMmFjcG1uZmg2cTVwd3M2eGdic3ZqbG53ZnFpdGV3MnUyYTM1azN3M3d0MjRlbmFjdXJpeEZhdDovL2RpZDpwbGM6MnpteGlraWcyc2o3Z3FhZXpsNWdudGFlL2FwcC5ic2t5LmZlZWQucG9zdC8zbGJndmN1a2FjazI1aWNyZWF0ZWRBdHgYMjAyNC0xMS0yMVQxNzo0MjoyNS4wMDZadgFxEiAdKJFb73po66h1U1bxmALfavT7i1O1fkSPRKif0YGUlqRkdGV4dGRhc2RmZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGVsYW5nc4FiZW5pY3JlYXRlZEF0eBgyMDI0LTExLTIxVDAxOjI3OjUxLjk1N1qDAQFxEiDsmgBxH9ei3CGdYMAkxhR5yEy2_x-7_DbiHkISTM59eqRkdGV4dHFtb3JycmUgY2hhYWFhbmdlc2UkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RlbGFuZ3OBYmVuaWNyZWF0ZWRBdHgYMjAyNC0xMS0yMVQwMToyMToxNy43NzFaggEBcRIgyMomVqlH7tXjIQgcmypLe1Sy6CqWSWyYdjgjjzpXV6SkZHRleHRwY2hhbmdlcyB0byByZXBvIWUkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RlbGFuZ3OBYmVuaWNyZWF0ZWRBdHgYMjAyNC0xMS0yMVQwMToyMDo0OC4zNjVa_QEBcRIglmlU9IJklExqIGP4xzRd9bxftBzlRK1lEA6oXhsC8VmiYWWDpGFrWCBhcHAuYnNreS5mZWVkLnBvc3QvM2xiZ2I2Z3g2bjIyd2FwAGF09mF22CpYJQABcRIgLxBb4icJ_BQwcs-kvumagTA5e1Z68NfTPM7ThDZaAL-kYWtIY3VpenBrMndhcBgYYXT2YXbYKlglAAFxEiCWr8BqJRXiQ2c-zXT-k3IC25feECpmvXG2HI6P3CIcKaRha0ljNmtheWtjMndhcBdhdPZhdtgqWCUAAXESIEwPwWqbLz22EnCy4APTNYqpx29j3ILg7s_mMQDxOVHkYWz2iwEBcRIgTA_BapsvPbYScLLgA9M1iqnHb2PcguDuz-YxAPE5UeSkZHRleHR4GHRoaXMgaXMgQU5PVEhFUiBwb3N0IG9tZ2UkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RlbGFuZ3OBYmVuaWNyZWF0ZWRBdHgYMjAyNC0xMS0yMVQwMToxNzo1MS43NjZadgFxEiCWr8BqJRXiQ2c-zXT-k3IC25feECpmvXG2HI6P3CIcKaRkdGV4dGRhc2RmZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGVsYW5nc4FiZW5pY3JlYXRlZEF0eBgyMDI0LTExLTIxVDAxOjAyOjIyLjk5MVqUAQFxEiAvEFviJwn8FDByz6S-6ZqBMDl7Vnrw19M8ztOENloAv6RkdGV4dHghcG9zdGluZyBhZ2FpbiBmb3IgdGhlIHNhbWUgcmVhc29uZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGVsYW5nc4FiZW5pY3JlYXRlZEF0eBgyMDI0LTExLTIxVDAwOjU5OjU0LjU1N1q7AgFxEiCliJ0EuHabX2fmYQ5LUEIZP5U1qOp9Wkodr5bSOGA6y6JhZYSkYWtYIGFwcC5ic2t5LmZlZWQucG9zdC8zbGJkbDZpZGJmNDJyYXAAYXT2YXbYKlglAAFxEiDtDbTZGhHmOXf14xiPT2WvYiOXGRHzajD5nAmkU9K616Rha0lvM2o1azRvMmxhcBdhdPZhdtgqWCUAAXESIPmPTQkPb2FdtOrZSKMMn3W1z09XL5XLt36QUW4OjXCfpGFrSGJjN28zcDJpYXAYGGF09mF22CpYJQABcRIgtUiWwIJyHlbInWVdNykpIncaQhC95qGdZMZhsBO3IeykYWtIZWFlcHhqMmxhcBgYYXT2YXbYKlglAAFxEiD79pjyILG-1iQ26WLWTE4hxm3AZH9gyzITeqSVvAydWmFs9qUBAXESICB15VbgVux27OAevULqO2_FKKgdndxnw5RXfadpVUkopGR0ZXh0eDJoZWxsbyBpIGFtIG1ha2luZyBhIHBvc3QgdG8gYWR2YW5jZSBteSBtZXJrbGUgcm9vdGUkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RlbGFuZ3OBYmVuaWNyZWF0ZWRBdHgYMjAyNC0xMS0yMVQwMDo1MjozMi40Mzha5wMBcRIg-_aY8iCxvtYkNuli1kxOIcZtwGR_YMsyE3qklbwMnVqlZHRleHR4RvCflLQgTElWRSBodHRwOi8vbG9jYWxob3N0OjM4MDgwL0BhcXVhcmV1bS5ic2t5LnNvY2lhbCBEb2VzIHRoaXMgd29yaz9lJHR5cGVyYXBwLmJza3kuZmVlZC5wb3N0ZmZhY2V0c4GiZWluZGV4omdieXRlRW5kGDZpYnl0ZVN0YXJ0CmhmZWF0dXJlc4GiY3VyaXimaHR0cDovL2xvY2FsaG9zdDozODA4MC9AYXF1YXJldW0uYnNreS5zb2NpYWw_a2V5PTB4NmZiZTY4NjNjZjFlZmM3MTM4OTk0NTVlNTI2YTEzMjM5ZDM3MTE3NSZkaWQ9ZGlkJTNBcGxjJTNBZGtoNHJ3YWZkY2RhNGtvN2xld2U0M21sJnRpbWU9MjAyNC0xMS0yMFQwMCUzQTE3JTNBNDguMTE5WmUkdHlwZXgcYXBwLmJza3kucmljaHRleHQuZmFjZXQjbGlua2ljcmVhdGVkQXR4GDIwMjQtMTEtMjBUMDA6MTc6NDguMTE5WmthcXVhcmV1bUtleXgqMHg2ZmJlNjg2M2NmMWVmYzcxMzg5OTQ1NWU1MjZhMTMyMzlkMzcxMTc1qgMBcRIgtUiWwIJyHlbInWVdNykpIncaQhC95qGdZMZhsBO3IeykZHRleHR4QfCflLQgTElWRSBodHRwOi8vbG9jYWxob3N0OjM4MDgwL0BhcXVhcmV1bS5ic2t5LnNvY2lhbCBBcXVhcmV1bSAyZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGZmYWNldHOBomVpbmRleKJnYnl0ZUVuZBg2aWJ5dGVTdGFydApoZmVhdHVyZXOBomN1cml4pmh0dHA6Ly9sb2NhbGhvc3Q6MzgwODAvQGFxdWFyZXVtLmJza3kuc29jaWFsP2tleT0weDZmYmU2ODYzY2YxZWZjNzEzODk5NDU1ZTUyNmExMzIzOWQzNzExNzUmZGlkPWRpZCUzQXBsYyUzQWRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbCZ0aW1lPTIwMjQtMTEtMjBUMDAlM0ExNiUzQTA5LjUzMVplJHR5cGV4HGFwcC5ic2t5LnJpY2h0ZXh0LmZhY2V0I2xpbmtpY3JlYXRlZEF0eBgyMDI0LTExLTIwVDAwOjE2OjA5LjUzMVqoAwFxEiD5j00JD29hXbTq2UijDJ91tc9PVy-Vy7d-kFFuDo1wn6RkdGV4dHg_8J-UtCBMSVZFIGh0dHA6Ly9sb2NhbGhvc3Q6MzgwODAvQGFxdWFyZXVtLmJza3kuc29jaWFsIEFxdWFyZXVtZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGZmYWNldHOBomVpbmRleKJnYnl0ZUVuZBg2aWJ5dGVTdGFydApoZmVhdHVyZXOBomN1cml4pmh0dHA6Ly9sb2NhbGhvc3Q6MzgwODAvQGFxdWFyZXVtLmJza3kuc29jaWFsP2tleT0weDZmYmU2ODYzY2YxZWZjNzEzODk5NDU1ZTUyNmExMzIzOWQzNzExNzUmZGlkPWRpZCUzQXBsYyUzQWRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbCZ0aW1lPTIwMjQtMTEtMjBUMDAlM0ExMiUzQTU1LjU0OFplJHR5cGV4HGFwcC5ic2t5LnJpY2h0ZXh0LmZhY2V0I2xpbmtpY3JlYXRlZEF0eBgyMDI0LTExLTIwVDAwOjEyOjU1LjU0OFqkAwFxEiDtDbTZGhHmOXf14xiPT2WvYiOXGRHzajD5nAmkU9K616RkdGV4dHg78J-UtCBMSVZFIGh0dHA6Ly9sb2NhbGhvc3Q6MzgwODAvQGFxdWFyZXVtLmJza3kuc29jaWFsIGFzZGZlJHR5cGVyYXBwLmJza3kuZmVlZC5wb3N0ZmZhY2V0c4GiZWluZGV4omdieXRlRW5kGDZpYnl0ZVN0YXJ0CmhmZWF0dXJlc4GiY3VyaXimaHR0cDovL2xvY2FsaG9zdDozODA4MC9AYXF1YXJldW0uYnNreS5zb2NpYWw_a2V5PTB4NmZiZTY4NjNjZjFlZmM3MTM4OTk0NTVlNTI2YTEzMjM5ZDM3MTE3NSZkaWQ9ZGlkJTNBcGxjJTNBZGtoNHJ3YWZkY2RhNGtvN2xld2U0M21sJnRpbWU9MjAyNC0xMS0xOVQyMyUzQTIwJTNBNTQuMTA1WmUkdHlwZXgcYXBwLmJza3kucmljaHRleHQuZmFjZXQjbGlua2ljcmVhdGVkQXR4GDIwMjQtMTEtMTlUMjM6MjA6NTQuMTA1Wq0DAXESIDJDGV9_98UZ2ObIRxmCZBQrk94v9K_WIycq5LKDeZNgpGR0ZXh0eETwn5S0IExJVkUgaHR0cDovL2xvY2FsaG9zdDozODA4MC9AYXF1YXJldW0uYnNreS5zb2NpYWwgaGVsbG8gd29ybGQgMmUkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RmZmFjZXRzgaJlaW5kZXiiZ2J5dGVFbmQYM2lieXRlU3RhcnQJaGZlYXR1cmVzgaJjdXJpeKZodHRwOi8vbG9jYWxob3N0OjM4MDgwL0BhcXVhcmV1bS5ic2t5LnNvY2lhbD9rZXk9MHg2ZmJlNjg2M2NmMWVmYzcxMzg5OTQ1NWU1MjZhMTMyMzlkMzcxMTc1JmRpZD1kaWQlM0FwbGMlM0Fka2g0cndhZmRjZGE0a283bGV3ZTQzbWwmdGltZT0yMDI0LTExLTE5VDIzJTNBMTklM0EzMS45NjNaZSR0eXBleBxhcHAuYnNreS5yaWNodGV4dC5mYWNldCNsaW5raWNyZWF0ZWRBdHgYMjAyNC0xMS0xOVQyMzoxOTozMS45NjNawwMBcRIgqeOaphsHW2DZB2ar5azxeEOTDYLTyE0BS-n4izuYuwSkZHRleHR4TvCflLQgTElWRSBodHRwOi8vbG9jYWxob3N0OjM4MDgwL0BkaWQ6cGxjOmRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbCBIZWxsbyBXb3JsZGUkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RmZmFjZXRzgaJlaW5kZXiiZ2J5dGVFbmQYP2lieXRlU3RhcnQJaGZlYXR1cmVzgaJjdXJpeLJodHRwOi8vbG9jYWxob3N0OjM4MDgwL0BkaWQ6cGxjOmRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbD9rZXk9MHg2ZmJlNjg2M2NmMWVmYzcxMzg5OTQ1NWU1MjZhMTMyMzlkMzcxMTc1JmRpZD1kaWQlM0FwbGMlM0Fka2g0cndhZmRjZGE0a283bGV3ZTQzbWwmdGltZT0yMDI0LTExLTE5VDIzJTNBMTMlM0EzNi4yMTVaZSR0eXBleBxhcHAuYnNreS5yaWNodGV4dC5mYWNldCNsaW5raWNyZWF0ZWRBdHgYMjAyNC0xMS0xOVQyMzoxMzozNi4yMTVafAFxEiC1yXY2svKoDztuoYIeBgUjzOuDWCjFFaiG7RBOphTpXaJhZYGkYWtYG2FwcC5ic2t5LmFjdG9yLnByb2ZpbGUvc2VsZmFwAGF09mF22CpYJQABcRIgGy6G483c4VnSETZ5R0_nZ5HAkTrPGCGjLlH641qJspphbPb4AQFxEiBnRrSTDjAiSBlUXxlBHbX1riFlwwrvGeLiPrKiRVqwtqNlJHR5cGVyYXBwLmJza3kuZmVlZC5saWtlZ3N1YmplY3SiY2NpZHg7YmFmeXJlaWR4cWxpZXZubnF5Mmp4enh6dzJobjd2cm81YjRlNW5idng3Z3RmeDI1d3N5bHFhbzU3amFjdXJpeEZhdDovL2RpZDpwbGM6cmFndGpzbTJqMnZrbndrejN6cDRveHJkL2FwcC5ic2t5LmZlZWQucG9zdC8zbGJkNXV5emRqMjJlaWNyZWF0ZWRBdHgYMjAyNC0xMS0xOVQyMjoyNTo1My4zODFazgEBcRIgGy6G483c4VnSETZ5R0_nZ5HAkTrPGCGjLlH641qJspqkZSR0eXBldmFwcC5ic2t5LmFjdG9yLnByb2ZpbGVmYXZhdGFypGNyZWbYKlglAAFVEiBzJwFz0HhsvLZGqELGc9olbRm43lm2S_sd-3c09sIKiGRzaXplGWcjZSR0eXBlZGJsb2JobWltZVR5cGVpaW1hZ2UvcG5naWNyZWF0ZWRBdHgYMjAyNC0xMS0xNVQyMjoxNTo1MC44NDRaa2Rpc3BsYXlOYW1lYI8BAXESIP762TQx0PGQIrCUPKCglev6wD-vYfa88JfBzVoWSpaho2UkdHlwZXVhcHAuYnNreS5ncmFwaC5mb2xsb3dnc3ViamVjdHggZGlkOnBsYzp6NzJpN2hkeW5tazZyMjJ6MjdoNnR2dXJpY3JlYXRlZEF0eBgyMDI0LTExLTE1VDIyOjE1OjUwLjU4Mlo=` 110 + var emptySync = `OqJlcm9vdHOB2CpYJQABcRIg8rwOSz2yxfhVsZgjPLoriASZoxACV-0nDsPTufChhC9ndmVyc2lvbgE=` 111 + var incrementalSyncSameKey = `OqJlcm9vdHOB2CpYJQABcRIgdhLeadhDAlvvliNZ91vqLHN8c6LclTANHL8Q-FlFlIFndmVyc2lvbgFTAXESIPiJM3VDjXQr5z7x-bsva4X15YlKyWhAsOvMBjsB4bBKomFlgGFs2CpYJQABcRIgAlvQk2EZEGxiBramc2dycvZ-LRaMDcVPtpd7WSsu-gLRAQFxEiDMDWgr6u3JA5D-8hiiyE0LeoHnQY5hn6NVzFXpiQN73aJhZYGkYWtYIGFwcC5ic2t5LmZlZWQucG9zdC8zbGJnY2Rzb2VqMjJ3YXAAYXTYKlglAAFxEiBqSWsQ9j1pxMH7phtowUv7ZPJFknl4cpQB7CUctm1_7mF22CpYJQABcRIgyMomVqlH7tXjIQgcmypLe1Sy6CqWSWyYdjgjjzpXV6RhbNgqWCUAAXESIOh-zxnjrsT_zVHzJMNNRIqRHCmUu0X7FI9ShAvud1W44AEBcRIgdhLeadhDAlvvliNZ91vqLHN8c6LclTANHL8Q-FlFlIGmY2RpZHggZGlkOnBsYzpka2g0cndhZmRjZGE0a283bGV3ZTQzbWxjcmV2bTNsYmh6bWRpbGc0Mmljc2lnWEAW-iVraQPm5ge58bCGNajPg7_ZlO0Gyxlw5ijQCx8hI18cQ9OC5571SB40qjmx1JCPXIZAx8LLPhcOluA7JPCVZGRhdGHYKlglAAFxEiDMDWgr6u3JA5D-8hiiyE0LeoHnQY5hn6NVzFXpiQN73WRwcmV29md2ZXJzaW9uA6kBAXESIGpJaxD2PWnEwfumG2jBS_tk8kWSeXhylAHsJRy2bX_uomFlgaRha1ggYXBwLmJza3kuZmVlZC5wb3N0LzNsYmdjZW9wcmNrMndhcABhdNgqWCUAAXESIPiJM3VDjXQr5z7x-bsva4X15YlKyWhAsOvMBjsB4bBKYXbYKlglAAFxEiDsmgBxH9ei3CGdYMAkxhR5yEy2_x-7_DbiHkISTM59emFs9s8BAXESIAulGNhPZXfwLpqwV129i1UEmCZN5C7CXaFGU-3fa3lRpGR0ZXh0eFx0aGlzIHBvc3Qgd2lsbCBiZSBjYXB0dXJlZCBmb3IgYWxsIHRpbWUgYXMgbXkgdGVzdCBjYXNlIGZvciBjb20uYXRwcm90by5zeW5jLmdldFJlcG8gc3luY2luZ2UkdHlwZXJhcHAuYnNreS5mZWVkLnBvc3RlbGFuZ3OBYmVuaWNyZWF0ZWRBdHgYMjAyNC0xMS0yMVQxNzo0OTo1MC4xNzJazgIBcRIgAlvQk2EZEGxiBramc2dycvZ-LRaMDcVPtpd7WSsu-gKiYWWEpGFrWCBhcHAuYnNreS5mZWVkLnBvc3QvM2xiZ2NxZ25lbDIyd2FwAGF09mF22CpYJQABcRIgHSiRW-96aOuodVNW8ZgC32r0-4tTtX5Ej0Son9GBlJakYWtKaHo3ZmdxYmMyZmFwFmF09mF22CpYJQABcRIgTAGqPhL1gnX9ANsQlrZDAv92ZeBAeNrS5dwXUYK92WKkYWtIbWRnbHZzMmZhcBgYYXT2YXbYKlglAAFxEiALpRjYT2V38C6asFddvYtVBJgmTeQuwl2hRlPt32t5UaRha1gaZ3JhcGguZm9sbG93LzNsYXpmb2hwNnJrMndhcAlhdPZhdtgqWCUAAXESIP762TQx0PGQIrCUPKCglev6wD-vYfa88JfBzVoWSpahYWz2` 112 + var incrementalSyncNewKey = `OqJlcm9vdHOB2CpYJQABcRIgB2TQAlnaxTYfIckTwj-R7tPD8QHdp4zM3pcxtdHCI0lndmVyc2lvbgFTAXESIFPdMSIS6fZG-VQgDLljNkNuKopgvgaYta3FwUNXvr-uomFlgGFs2CpYJQABcRIgXFvELxXqfbpIofY8zkLEYq_3wWmso5_7w--Wu4tuXOaNAwFxEiBcW8QvFep9ukih9jzOQsRir_fBaayjn_vD75a7i25c5qJhZYWkYWtYIGFwcC5ic2t5LmZlZWQucG9zdC8zbGJnY3FnbmVsMjJ3YXAAYXT2YXbYKlglAAFxEiAdKJFb73po66h1U1bxmALfavT7i1O1fkSPRKif0YGUlqRha0poejdmZ3FiYzJmYXAWYXT2YXbYKlglAAFxEiBMAao-EvWCdf0A2xCWtkMC_3Zl4EB42tLl3BdRgr3ZYqRha0htZGdsdnMyZmFwGBhhdPZhdtgqWCUAAXESIAulGNhPZXfwLpqwV129i1UEmCZN5C7CXaFGU-3fa3lRpGFrSmkyM203MmZrMmNhcBZhdPZhdtgqWCUAAXESIC8FWdZF395B48PPS802LlehSw9YGhaWJWBDFZD8AZ6kpGFrWBpncmFwaC5mb2xsb3cvM2xhemZvaHA2cmsyd2FwCWF09mF22CpYJQABcRIg_vrZNDHQ8ZAisJQ8oKCV6_rAP69h9rzwl8HNWhZKlqFhbPapAQFxEiA1kWVtns-NexGKYJlEFapjC-XsaaL0PSZCXQRn1se4TqJhZYGkYWtYIGFwcC5ic2t5LmZlZWQucG9zdC8zbGJnY2VvcHJjazJ3YXAAYXTYKlglAAFxEiBT3TEiEun2RvlUIAy5YzZDbiqKYL4GmLWtxcFDV76_rmF22CpYJQABcRIg7JoAcR_XotwhnWDAJMYUechMtv8fu_w24h5CEkzOfXphbPbeBAFxEiAvBVnWRd_eQePDz0vNNi5XoUsPWBoWliVgQxWQ_AGepKVkdGV4dHi98J-UtCBMSVZFIGh0dHA6Ly9sb2NhbGhvc3Q6MzgwODAvQGFxdWFyZXVtLmJza3kuc29jaWFsIEFuZCBub3cgZm9yIG15IG5leHQgdHJpY2sgSSB3aWxsIGNoYW5nZSBteSBBcXVhcmV1bSBzaWduaW5nIGtleS4gU28uLi4geW91IGNhbiByZWFsbHkganVzdCBhZGQgYXJiaXRyYXJ5IGZpZWxkcyB0byBCbHVlc2t5IHBvc3RzLCBodWg_ZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGZmYWNldHOBomVpbmRleKJnYnl0ZUVuZBg2aWJ5dGVTdGFydApoZmVhdHVyZXOBomN1cml4pmh0dHA6Ly9sb2NhbGhvc3Q6MzgwODAvQGFxdWFyZXVtLmJza3kuc29jaWFsP2tleT0weGYwODFkNjM4Mzc3NzQ4Mjg2OGZhYThkNTUzNGE1ZjFhNzc3N2JlZTgmZGlkPWRpZCUzQXBsYyUzQWRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbCZ0aW1lPTIwMjQtMTEtMjFUMTclM0E1OCUzQTIyLjUyMVplJHR5cGV4HGFwcC5ic2t5LnJpY2h0ZXh0LmZhY2V0I2xpbmtpY3JlYXRlZEF0eBgyMDI0LTExLTIxVDE3OjU4OjIyLjUyMVprYXF1YXJldW1LZXl4KjB4ZjA4MWQ2MzgzNzc3NDgyODY4ZmFhOGQ1NTM0YTVmMWE3Nzc3YmVlONEBAXESIAm_x_mMHBZ631TB7c6Sx8GK_74KclOkNvYBhw_vEcquomFlgaRha1ggYXBwLmJza3kuZmVlZC5wb3N0LzNsYmdjZHNvZWoyMndhcABhdNgqWCUAAXESIDWRZW2ez417EYpgmUQVqmML5expovQ9JkJdBGfWx7hOYXbYKlglAAFxEiDIyiZWqUfu1eMhCBybKkt7VLLoKpZJbJh2OCOPOldXpGFs2CpYJQABcRIg6H7PGeOuxP_NUfMkw01EipEcKZS7RfsUj1KEC-53VbjgAQFxEiAHZNACWdrFNh8hyRPCP5Hu08PxAd2njMzelzG10cIjSaZjZGlkeCBkaWQ6cGxjOmRraDRyd2FmZGNkYTRrbzdsZXdlNDNtbGNyZXZtM2xiaTIzbTc1ZGMyY2NzaWdYQHdNm4gZkbQlNuMZXVDiTcjd13XT53ngjqGqShE7TINQHWekxpst3-n4ZMUWAlBaLSs_1aX3ZNratIyseukp5itkZGF0YdgqWCUAAXESIAm_x_mMHBZ631TB7c6Sx8GK_74KclOkNvYBhw_vEcquZHByZXb2Z3ZlcnNpb24DzwEBcRIgC6UY2E9ld_AumrBXXb2LVQSYJk3kLsJdoUZT7d9reVGkZHRleHR4XHRoaXMgcG9zdCB3aWxsIGJlIGNhcHR1cmVkIGZvciBhbGwgdGltZSBhcyBteSB0ZXN0IGNhc2UgZm9yIGNvbS5hdHByb3RvLnN5bmMuZ2V0UmVwbyBzeW5jaW5nZSR0eXBlcmFwcC5ic2t5LmZlZWQucG9zdGVsYW5nc4FiZW5pY3JlYXRlZEF0eBgyMDI0LTExLTIxVDE3OjQ5OjUwLjE3Mlo=`
+68
pkg/atproto/client_metadata.go
··· 1 + package atproto 2 + 3 + import "fmt" 4 + 5 + type OAuthClientMetadata struct { 6 + RedirectURIs []string `json:"redirect_uris"` 7 + ResponseTypes []string `json:"response_types,omitempty"` 8 + GrantTypes []string `json:"grant_types,omitempty"` 9 + Scope string `json:"scope,omitempty"` 10 + TokenEndpointAuthMethod string `json:"token_endpoint_auth_method,omitempty"` 11 + TokenEndpointAuthSigningAlg string `json:"token_endpoint_auth_signing_alg,omitempty"` 12 + UserinfoSignedResponseAlg string `json:"userinfo_signed_response_alg,omitempty"` 13 + UserinfoEncryptedResponseAlg string `json:"userinfo_encrypted_response_alg,omitempty"` 14 + JwksURI string `json:"jwks_uri,omitempty"` 15 + ApplicationType string `json:"application_type,omitempty"` // "web" or "native" 16 + SubjectType string `json:"subject_type,omitempty"` // "public" or "pairwise" 17 + RequestObjectSigningAlg string `json:"request_object_signing_alg,omitempty"` 18 + IDTokenSignedResponseAlg string `json:"id_token_signed_response_alg,omitempty"` 19 + AuthorizationSignedResponseAlg string `json:"authorization_signed_response_alg,omitempty"` 20 + AuthorizationEncryptedResponseEnc string `json:"authorization_encrypted_response_enc,omitempty"` 21 + AuthorizationEncryptedResponseAlg string `json:"authorization_encrypted_response_alg,omitempty"` 22 + ClientID string `json:"client_id,omitempty"` 23 + ClientName string `json:"client_name,omitempty"` 24 + ClientURI string `json:"client_uri,omitempty"` 25 + PolicyURI string `json:"policy_uri,omitempty"` 26 + TosURI string `json:"tos_uri,omitempty"` 27 + LogoURI string `json:"logo_uri,omitempty"` 28 + DefaultMaxAge int `json:"default_max_age,omitempty"` 29 + RequireAuthTime *bool `json:"require_auth_time,omitempty"` 30 + Contacts []string `json:"contacts,omitempty"` 31 + TLSClientCertificateBoundAccessTokens *bool `json:"tls_client_certificate_bound_access_tokens,omitempty"` 32 + DPoPBoundAccessTokens *bool `json:"dpop_bound_access_tokens,omitempty"` 33 + AuthorizationDetailsTypes []string `json:"authorization_details_types,omitempty"` 34 + // Jwks *JWKSet `json:"jwks,omitempty"` // You'll need to define JWKSet type 35 + } 36 + 37 + func boolPtr(b bool) *bool { 38 + return &b 39 + } 40 + 41 + func GetMetadata(host string) *OAuthClientMetadata { 42 + meta := &OAuthClientMetadata{ 43 + ClientID: fmt.Sprintf("https://%s/api/atproto-oauth", host), 44 + ClientURI: fmt.Sprintf("https://%s", host), 45 + RedirectURIs: []string{fmt.Sprintf("https://%s/login", host)}, 46 + Scope: "atproto transition:generic", 47 + TokenEndpointAuthMethod: "none", 48 + ClientName: "Aquareum", 49 + ResponseTypes: []string{"code"}, 50 + GrantTypes: []string{"authorization_code", "refresh_token"}, 51 + ApplicationType: "native", 52 + DPoPBoundAccessTokens: boolPtr(true), 53 + } 54 + return meta 55 + } 56 + 57 + // clientMetadata: { 58 + // client_id: "http://localhost?scope=atproto%20transition:generic", 59 + // redirect_uris: ["http://127.0.0.1:38081"], 60 + // scope: "atproto transition:generic", 61 + // token_endpoint_auth_method: "none", 62 + // // jwks_uri: "https://my-app.example/jwks.json", 63 + // client_name: "Loopback client", 64 + // response_types: ["code"], 65 + // grant_types: ["authorization_code", "refresh_token"], 66 + // application_type: "native", 67 + // dpop_bound_access_tokens: true, 68 + // },
+5 -4
pkg/cmd/aquareum.go
··· 115 115 fs.StringVar(&cli.PKCS11KeypairLabel, "pkcs11-keypair-label", "", "label of signing keypair on PKCS11 token") 116 116 fs.StringVar(&cli.PKCS11KeypairID, "pkcs11-keypair-id", "", "id of signing keypair on PKCS11 token") 117 117 fs.StringVar(&cli.StreamerName, "streamer-name", "", "name of the person streaming from this aquareum node") 118 + fs.StringVar(&cli.FrontendProxy, "dev-frontend-proxy", "", "(FOR DEVELOPMENT ONLY) proxy frontend requests to this address instead of using the bundled frontend") 118 119 cli.AddressSliceFlag(fs, &cli.AllowedStreams, "allowed-streams", "", "comma-separated list of addresses that this node will replicate") 119 120 cli.StringSliceFlag(fs, &cli.Peers, "peers", "", "other aquareum nodes to replicate to") 120 121 cli.DebugFlag(fs, &cli.Debug, "debug", "", "modified log verbosity for specific functions or files in form func=ToHLS:3,file=gstreamer.go:4") ··· 392 393 if err != nil { 393 394 return err 394 395 } 395 - err = mod.UpdateSettings(&model.Settings{ 396 - ID: testMediaSigner.Pub.String(), 397 - Streamer: "stream-self-tester", 398 - Title: "test-stream", 396 + err = mod.UpdateIdentity(&model.Identity{ 397 + ID: testMediaSigner.Pub.String(), 398 + Handle: "stream-self-tester", 399 + DID: "", 399 400 }) 400 401 if err != nil { 401 402 return err
+1
pkg/config/config.go
··· 75 75 AllowedStreams []aqpub.Pub 76 76 Peers []string 77 77 TestStream bool 78 + FrontendProxy string 78 79 79 80 dataDirFlags []*string 80 81 }
+27 -18
pkg/crypto/signers/eip712/eip712_test.go
··· 29 29 require.True(t, ran) 30 30 } 31 31 32 - func TestSignGoLive(t *testing.T) { 32 + func TestSignIdentity(t *testing.T) { 33 33 eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 34 - goLive := v0.GoLive{ 35 - Streamer: "@aquareum.tv", 36 - Title: "Let's gooooooo!", 34 + identity := v0.Identity{ 35 + Handle: "aquareum.bsky.social", 36 + DID: "did:plc:dkh4rwafdcda4ko7lewe43ml", 37 37 } 38 - _, err := signer.SignMessage(goLive) 38 + _, err := signer.SignMessage(identity) 39 39 require.NoError(t, err) 40 40 }) 41 41 } 42 42 43 43 var testCase = `{ 44 - "primaryType": "GoLive", 45 - "domain": { "name": "Aquareum", "version": "0.0.1" }, 44 + "primaryType": "Identity", 45 + "domain": { 46 + "name": "Aquareum", 47 + "version": "0.0.1", 48 + "chainId": null, 49 + "verifyingContract": "", 50 + "salt": "" 51 + }, 46 52 "message": { 47 - "data": { "streamer": "@aquareum.tv", "title": "Let's gooooooo!" }, 48 - "signer": "0x295481766F43bb048Aec5D71f3Bf76FDaCEA78f2", 49 - "time": 1722373018292 53 + "signer": "0x9153c114d47aceb691b77b02122cb378074e45c8", 54 + "time": 1732561417949, 55 + "data": { 56 + "handle": "aquareum.bsky.social", 57 + "did": "did:plc:dkh4rwafdcda4ko7lewe43ml" 58 + } 50 59 }, 51 - "signature": "0x1723aa5ffb04a6ade0acb84c5ce15c804141ac06fd4ae0a867655d1b2f9e130e1ceb659297d262281795b49c191e6f67623d538890b4454eeaa1b6c2da0668e81b" 60 + "signature": "0xc75ca7da2d110c562eaa4a906aae7a246b2d96a867b74baf3ac0d9127f260dfb17b9aba7d20562c10c771b658c17a4be2dfc427c3e729a07853e35753a8a70f61b" 52 61 }` 53 62 54 - func TestVerifyGoLive(t *testing.T) { 63 + func TestVerifyIdentity(t *testing.T) { 55 64 eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 56 65 signed, err := signer.Verify([]byte(testCase)) 57 66 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) 67 + require.Equal(t, signed.Signer(), "0x9153c114d47aceb691b77b02122cb378074e45c8") 68 + require.Equal(t, signed.Time(), int64(1732561417949)) 69 + identity, ok := signed.Data().(*v0.Identity) 61 70 require.True(t, ok) 62 - require.Equal(t, goLive.Streamer, "@aquareum.tv") 63 - require.Equal(t, goLive.Title, "Let's gooooooo!") 71 + require.Equal(t, identity.Handle, "aquareum.bsky.social") 72 + require.Equal(t, identity.DID, "did:plc:dkh4rwafdcda4ko7lewe43ml") 64 73 }) 65 74 } 66 75 67 76 func TestFailingGoLive(t *testing.T) { 68 77 eip712test.WithTestSigner(func(signer *eip712.EIP712Signer) { 69 - failingTestCase := strings.Replace(testCase, "@aquareum.tv", "@evilstreamer.evil", 1) 78 + failingTestCase := strings.Replace(testCase, "aquareum.bsky.social", "evilhandle.evil", 1) 70 79 _, err := signer.Verify([]byte(failingTestCase)) 71 80 require.Error(t, err) 72 81 })
+3 -3
pkg/media/media.go
··· 254 254 Creator string 255 255 } 256 256 257 - var ErrInvalidMetadata = errors.New("invalid Schema.org Metadata") 257 + var ErrInvalidMetadata = errors.New("invalid segment metadata") 258 258 259 259 func ParseSegmentAssertions(mani *manifeststore.Manifest) (*SegmentMetadata, error) { 260 260 var ass *manifeststore.ManifestAssertion ··· 286 286 return nil, ErrInvalidMetadata 287 287 } 288 288 meta := metas[0] 289 - if len(meta.Creator) != 1 { 289 + if len(meta.Creator) == 0 { 290 290 return nil, ErrInvalidMetadata 291 291 } 292 292 if len(meta.Title) != 1 { ··· 363 363 for _, ch := range mm.newSegmentSubs { 364 364 go func() { ch <- not }() 365 365 } 366 - log.Log(ctx, "successfully ingested segment", "user", pub.String(), "timestamp", meta.StartTime) 366 + log.Log(ctx, "successfully ingested segment", "user", pub.String(), "timestamp", meta.StartTime, "segmentID", *mani.Label) 367 367 return nil 368 368 }
+9 -7
pkg/media/media_signer.go
··· 65 65 } 66 66 67 67 func (ms *MediaSigner) SignMP4(ctx context.Context, input io.ReadSeeker, start int64) ([]byte, error) { 68 - settings, err := ms.Model.GetSettings(ms.Pub.String()) 68 + ident, err := ms.Model.GetIdentity(ms.Pub.String()) 69 69 if err != nil { 70 70 return nil, err 71 71 } 72 - if settings.Title == "" { 73 - return nil, fmt.Errorf("no title set for streamer %s", ms.Pub.String()) 72 + if ident.Handle == "" { 73 + return nil, fmt.Errorf("no handle set for streamer %s", ms.Pub.String()) 74 74 } 75 - if settings.Streamer == "" { 76 - return nil, fmt.Errorf("no streamer set for streamer %s", ms.Pub.String()) 75 + creator := []string{ident.Handle} 76 + if ident.DID != "" { 77 + creator = append(creator, ident.DID) 77 78 } 79 + title := "livestream" 78 80 mani := obj{ 79 81 "title": fmt.Sprintf("Livestream Segment at %s", aqtime.FromMillis(start)), 80 82 "assertions": []obj{ ··· 93 95 "@context": obj{ 94 96 "dc": "http://purl.org/dc/elements/1.1/", 95 97 }, 96 - "dc:creator": []string{settings.Streamer}, 97 - "dc:title": []string{settings.Title}, 98 + "dc:creator": creator, 99 + "dc:title": []string{title}, 98 100 "dc:date": []string{aqtime.FromMillis(start).String()}, 99 101 }, 100 102 },
+29
pkg/model/identity.go
··· 1 + package model 2 + 3 + import "fmt" 4 + 5 + // settings for publishing from a particular key. mostly node-local. 6 + type Identity struct { 7 + ID string `json:"id" gorm:"primaryKey"` 8 + Handle string `json:"handle"` 9 + DID string `json:"did" gorm:"column:did"` 10 + } 11 + 12 + func (m *DBModel) GetIdentity(id string) (*Identity, error) { 13 + var identity Identity 14 + err := m.DB.Where("id = ?", id).FirstOrCreate(&identity, Identity{ 15 + ID: id, 16 + }).Error 17 + if err != nil { 18 + return nil, fmt.Errorf("error getting settings: %w", err) 19 + } 20 + return &identity, nil 21 + } 22 + 23 + func (m *DBModel) UpdateIdentity(ident *Identity) error { 24 + err := m.DB.Where("id = ?", ident.ID).Save(ident).Error 25 + if err != nil { 26 + return fmt.Errorf("error updating settings: %w", err) 27 + } 28 + return nil 29 + }
+7 -3
pkg/model/model.go
··· 34 34 CreateThumbnail(thumb *Thumbnail) error 35 35 LatestThumbnailForUser(user string) (*Thumbnail, error) 36 36 37 - GetSettings(id string) (*Settings, error) 38 - UpdateSettings(settings *Settings) error 37 + GetIdentity(id string) (*Identity, error) 38 + UpdateIdentity(ident *Identity) error 39 + 40 + GetRepo(did string) (*Repo, error) 41 + GetRepoByHandle(handle string) (*Repo, error) 42 + UpdateRepo(repo *Repo) error 39 43 } 40 44 41 45 func MakeDB(dbURL string) (Model, error) { ··· 63 67 if err != nil { 64 68 return nil, fmt.Errorf("error starting database: %w", err) 65 69 } 66 - for _, model := range []any{Notification{}, PlayerEvent{}, Segment{}, Thumbnail{}, Settings{}} { 70 + for _, model := range []any{Notification{}, PlayerEvent{}, Segment{}, Thumbnail{}, Identity{}, Repo{}} { 67 71 err = db.AutoMigrate(model) 68 72 if err != nil { 69 73 return nil, err
+48
pkg/model/repo.go
··· 1 + package model 2 + 3 + import ( 4 + "errors" 5 + 6 + "gorm.io/gorm" 7 + ) 8 + 9 + type Repo struct { 10 + DID string `gorm:"primaryKey;column:did"` 11 + Handle string `gorm:"index"` 12 + PDS string 13 + Version string 14 + AquareumKey string 15 + RootCID string 16 + } 17 + 18 + func (Repo) TableName() string { 19 + return "repos" 20 + } 21 + 22 + func (m *DBModel) GetRepo(did string) (*Repo, error) { 23 + var repoModel Repo 24 + res := m.DB.Where("did = ?", did).First(&repoModel) 25 + if errors.Is(res.Error, gorm.ErrRecordNotFound) { 26 + return nil, nil 27 + } 28 + if res.Error != nil { 29 + return nil, res.Error 30 + } 31 + return &repoModel, nil 32 + } 33 + 34 + func (m *DBModel) GetRepoByHandle(handle string) (*Repo, error) { 35 + var repoModel Repo 36 + res := m.DB.Where("handle = ?", handle).First(&repoModel) 37 + if errors.Is(res.Error, gorm.ErrRecordNotFound) { 38 + return nil, nil 39 + } 40 + if res.Error != nil { 41 + return nil, res.Error 42 + } 43 + return &repoModel, nil 44 + } 45 + 46 + func (m *DBModel) UpdateRepo(repo *Repo) error { 47 + return m.DB.Save(repo).Error 48 + }
+3
pkg/model/segment.go
··· 32 32 if err != nil { 33 33 return nil, err 34 34 } 35 + if segments == nil { 36 + return []Segment{}, nil 37 + } 35 38 36 39 return segments, nil 37 40 }
-29
pkg/model/settings.go
··· 1 - package model 2 - 3 - import "fmt" 4 - 5 - // settings for publishing from a particular key. mostly node-local. 6 - type Settings struct { 7 - ID string `json:"id" gorm:"primaryKey"` 8 - Streamer string `json:"streamer"` 9 - Title string `json:"title"` 10 - } 11 - 12 - func (m *DBModel) GetSettings(id string) (*Settings, error) { 13 - var settings Settings 14 - err := m.DB.Where("id = ?", id).FirstOrCreate(&settings, Settings{ 15 - ID: id, 16 - }).Error 17 - if err != nil { 18 - return nil, fmt.Errorf("error getting settings: %w", err) 19 - } 20 - return &settings, nil 21 - } 22 - 23 - func (m *DBModel) UpdateSettings(settings *Settings) error { 24 - err := m.DB.Where("id = ?", settings.ID).Save(settings).Error 25 - if err != nil { 26 - return fmt.Errorf("error updating settings: %w", err) 27 - } 28 - return nil 29 - }
+7 -3
pkg/model/thumbnail.go
··· 18 18 if err != nil { 19 19 return err 20 20 } 21 + if thumb.SegmentID == "" { 22 + return fmt.Errorf("segmentID is required") 23 + } 21 24 thumb.ID = uu.String() 22 25 err = m.DB.Model(Thumbnail{}).Create(thumb).Error 23 26 if err != nil { ··· 37 40 Order("s.start_time DESC"). 38 41 Limit(1). 39 42 Scan(&thumbnail) 43 + 44 + if res.RowsAffected == 0 { 45 + return nil, nil 46 + } 40 47 if res.Error != nil { 41 48 return nil, res.Error 42 - } 43 - if res.RowsAffected == 0 { 44 - return nil, nil 45 49 } 46 50 47 51 var seg Segment
+4 -4
pkg/schema/v0/golive.go
··· 6 6 var Version = "0.0.1" 7 7 8 8 type V0Schema struct { 9 - GoLive GoLive 9 + Identity Identity 10 10 StreamKey StreamKey 11 11 } 12 - type GoLive struct { 13 - Streamer string `json:"streamer"` 14 - Title string `json:"title"` 12 + type Identity struct { 13 + Handle string `json:"handle"` 14 + DID string `json:"did"` 15 15 } 16 16 17 17 type StreamKey struct {
+2099 -1931
yarn.lock
··· 17 17 languageName: node 18 18 linkType: hard 19 19 20 + "@0no-co/graphql.web@npm:^1.0.8": 21 + version: 1.0.11 22 + resolution: "@0no-co/graphql.web@npm:1.0.11" 23 + peerDependencies: 24 + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 25 + peerDependenciesMeta: 26 + graphql: 27 + optional: true 28 + checksum: 10/c69de0d4c0192b2f888c68a1397f777748888b68584b455e4e9fae7a4dd069371462225aa4fe0a84041cf77e65a74863c4d013e56c6a9142b20d3acaeda279d8 29 + languageName: node 30 + linkType: hard 31 + 20 32 "@adraffy/ens-normalize@npm:1.10.0": 21 33 version: 1.10.0 22 34 resolution: "@adraffy/ens-normalize@npm:1.10.0" ··· 38 50 "@jridgewell/gen-mapping": "npm:^0.3.5" 39 51 "@jridgewell/trace-mapping": "npm:^0.3.24" 40 52 checksum: 10/f3451525379c68a73eb0a1e65247fbf28c0cccd126d93af21c75fceff77773d43c0d4a2d51978fb131aff25b5f2cb41a9fe48cc296e61ae65e679c4f6918b0ab 53 + languageName: node 54 + linkType: hard 55 + 56 + "@atproto-labs/did-resolver@npm:0.1.5": 57 + version: 0.1.5 58 + resolution: "@atproto-labs/did-resolver@npm:0.1.5" 59 + dependencies: 60 + "@atproto-labs/fetch": "npm:0.1.1" 61 + "@atproto-labs/pipe": "npm:0.1.0" 62 + "@atproto-labs/simple-store": "npm:0.1.1" 63 + "@atproto-labs/simple-store-memory": "npm:0.1.1" 64 + "@atproto/did": "npm:0.1.3" 65 + zod: "npm:^3.23.8" 66 + checksum: 10/a1fccf30df2eb2e9f2c9df2e22e78fd63ccfc8024085b7783876d6914b7f1acd664e5b298ab744ca71f22ea70a44a5478fa8af3b4648c40649082ecca7d37c85 67 + languageName: node 68 + linkType: hard 69 + 70 + "@atproto-labs/fetch@npm:0.1.1": 71 + version: 0.1.1 72 + resolution: "@atproto-labs/fetch@npm:0.1.1" 73 + dependencies: 74 + "@atproto-labs/pipe": "npm:0.1.0" 75 + zod: "npm:^3.23.8" 76 + dependenciesMeta: 77 + zod: 78 + optional: true 79 + checksum: 10/557f290e1a0078f022e74b1b663b782979d9a378e6f7575d50cd2eafd1cf20aa52986544b01b586c30505704ec5624630e8718826c7d08768ac775a3b059bae0 80 + languageName: node 81 + linkType: hard 82 + 83 + "@atproto-labs/handle-resolver@npm:0.1.4": 84 + version: 0.1.4 85 + resolution: "@atproto-labs/handle-resolver@npm:0.1.4" 86 + dependencies: 87 + "@atproto-labs/simple-store": "npm:0.1.1" 88 + "@atproto-labs/simple-store-memory": "npm:0.1.1" 89 + "@atproto/did": "npm:0.1.3" 90 + zod: "npm:^3.23.8" 91 + checksum: 10/5679823cd0b4656e9d4345bbd4245493c314799712302066837a07e58d48d673dd0725dea5f37c12b6af14f08435585a9316c706fcbd42e376ae1a5c8a175f13 92 + languageName: node 93 + linkType: hard 94 + 95 + "@atproto-labs/identity-resolver@npm:0.1.6": 96 + version: 0.1.6 97 + resolution: "@atproto-labs/identity-resolver@npm:0.1.6" 98 + dependencies: 99 + "@atproto-labs/did-resolver": "npm:0.1.5" 100 + "@atproto-labs/handle-resolver": "npm:0.1.4" 101 + "@atproto/syntax": "npm:0.3.1" 102 + checksum: 10/23edc253bb7a2b5989ad8fb12afb047e55a0f646879d934d8a2619d70d2e8be7d68a95bc3376c175026d3f0e5392abd220a4972aa27621098bce241f7897f475 103 + languageName: node 104 + linkType: hard 105 + 106 + "@atproto-labs/pipe@npm:0.1.0, @atproto-labs/pipe@npm:^0.1.0": 107 + version: 0.1.0 108 + resolution: "@atproto-labs/pipe@npm:0.1.0" 109 + checksum: 10/43104bca08ed9fcb52e8b6eada00db2081a5c905187be5e94fc72c91386d39e01b4444a55ecb9ee124d18da83708b63cd8807461a6edfad235840af7003e34e2 110 + languageName: node 111 + linkType: hard 112 + 113 + "@atproto-labs/simple-store-memory@npm:0.1.1": 114 + version: 0.1.1 115 + resolution: "@atproto-labs/simple-store-memory@npm:0.1.1" 116 + dependencies: 117 + "@atproto-labs/simple-store": "npm:0.1.1" 118 + lru-cache: "npm:^10.2.0" 119 + checksum: 10/b9dfc23c7bcef6b7049015385d5cf611df27d5c4eb4b5c331a1eec7ec77391a12993a984474d6f39e6c907d5f86659e4defc35b62e73e3acf3874255077896f7 120 + languageName: node 121 + linkType: hard 122 + 123 + "@atproto-labs/simple-store@npm:0.1.1": 124 + version: 0.1.1 125 + resolution: "@atproto-labs/simple-store@npm:0.1.1" 126 + checksum: 10/6251663e6ee07fc59e77cf3aeebcd4f980a18f83e9bfc20be12dae0fbcdaaecc7a88a2d558e625ff2f0db7176b75f44d61b37cb892ae67241248655a9a4d1615 127 + languageName: node 128 + linkType: hard 129 + 130 + "@atproto/api@npm:^0.13.16": 131 + version: 0.13.16 132 + resolution: "@atproto/api@npm:0.13.16" 133 + dependencies: 134 + "@atproto/common-web": "npm:^0.3.1" 135 + "@atproto/lexicon": "npm:^0.4.3" 136 + "@atproto/syntax": "npm:^0.3.1" 137 + "@atproto/xrpc": "npm:^0.6.4" 138 + await-lock: "npm:^2.2.2" 139 + multiformats: "npm:^9.9.0" 140 + tlds: "npm:^1.234.0" 141 + zod: "npm:^3.23.8" 142 + checksum: 10/0b959ba17d7453955442a8aa771951f27d35a0606d1105408f25b9b3829d4e87d0860e6c3f1af35178c2acf0deb7219452fed648847da18b25fa5b6414167127 143 + languageName: node 144 + linkType: hard 145 + 146 + "@atproto/common-web@npm:^0.3.1": 147 + version: 0.3.1 148 + resolution: "@atproto/common-web@npm:0.3.1" 149 + dependencies: 150 + graphemer: "npm:^1.4.0" 151 + multiformats: "npm:^9.9.0" 152 + uint8arrays: "npm:3.0.0" 153 + zod: "npm:^3.23.8" 154 + checksum: 10/185ddf35df2138eb5143380e8b2e3fa2d7517db5297251ef735163e97f710fba19a3e3af99e11d40b825ff5cefa271e1763714574b2ed4a2a5beb8305cf48687 155 + languageName: node 156 + linkType: hard 157 + 158 + "@atproto/did@npm:0.1.3": 159 + version: 0.1.3 160 + resolution: "@atproto/did@npm:0.1.3" 161 + dependencies: 162 + zod: "npm:^3.23.8" 163 + checksum: 10/e5a985e1b3149a97c0000134607eedbcb9d6514750ebd9bb36635bcea135e7332adf79d1ecc5d214a04599d1e6c7ec24296c4ad333d007b4fddb0b369f835ba8 164 + languageName: node 165 + linkType: hard 166 + 167 + "@atproto/jwk-jose@npm:0.1.2, @atproto/jwk-jose@npm:^0.1.2": 168 + version: 0.1.2 169 + resolution: "@atproto/jwk-jose@npm:0.1.2" 170 + dependencies: 171 + "@atproto/jwk": "npm:0.1.1" 172 + jose: "npm:^5.2.0" 173 + checksum: 10/0096bc19be294ba0a5ee550565ff27fec397e1121d622dd6921b8ec0080e9756a313c0ae1c970c1ea9e623bbfd071678f16eeb0b4f7c18ef4927c55e38ba5a19 174 + languageName: node 175 + linkType: hard 176 + 177 + "@atproto/jwk-webcrypto@npm:0.1.2, @atproto/jwk-webcrypto@npm:^0.1.2": 178 + version: 0.1.2 179 + resolution: "@atproto/jwk-webcrypto@npm:0.1.2" 180 + dependencies: 181 + "@atproto/jwk": "npm:0.1.1" 182 + "@atproto/jwk-jose": "npm:0.1.2" 183 + checksum: 10/94ef0e4b2dcf87f7e9cb795386dbaee01d87fc17b1317b7872af127098ab16b190f2d1f85af1f08eaf946a76b4197c27f35ed86ec7444992deac0cc6a64be63a 184 + languageName: node 185 + linkType: hard 186 + 187 + "@atproto/jwk@npm:0.1.1": 188 + version: 0.1.1 189 + resolution: "@atproto/jwk@npm:0.1.1" 190 + dependencies: 191 + multiformats: "npm:^9.9.0" 192 + zod: "npm:^3.23.8" 193 + checksum: 10/583532fbc41edd1c51bfe257fec7966e397ac2dac9acae93fde470fd178e1b706e4fd5b138d06161868707bce72f3647973996140d76d59f7e74a685a0dcdc06 194 + languageName: node 195 + linkType: hard 196 + 197 + "@atproto/lexicon@npm:^0.4.3": 198 + version: 0.4.3 199 + resolution: "@atproto/lexicon@npm:0.4.3" 200 + dependencies: 201 + "@atproto/common-web": "npm:^0.3.1" 202 + "@atproto/syntax": "npm:^0.3.1" 203 + iso-datestring-validator: "npm:^2.2.2" 204 + multiformats: "npm:^9.9.0" 205 + zod: "npm:^3.23.8" 206 + checksum: 10/c7b0616ffcd85eb77315b4a15bf17acfc2c9de6b4112321a8dad5f0723453c8a5464418a332f0e387e999ed863fb954ccb511097e9c733efacc9b3aacc0c611c 207 + languageName: node 208 + linkType: hard 209 + 210 + "@atproto/oauth-client-browser@npm:^0.3.1": 211 + version: 0.3.1 212 + resolution: "@atproto/oauth-client-browser@npm:0.3.1" 213 + dependencies: 214 + "@atproto-labs/did-resolver": "npm:0.1.5" 215 + "@atproto-labs/handle-resolver": "npm:0.1.4" 216 + "@atproto-labs/simple-store": "npm:0.1.1" 217 + "@atproto/did": "npm:0.1.3" 218 + "@atproto/jwk": "npm:0.1.1" 219 + "@atproto/jwk-webcrypto": "npm:0.1.2" 220 + "@atproto/oauth-client": "npm:0.3.1" 221 + "@atproto/oauth-types": "npm:0.2.0" 222 + checksum: 10/e8aa99f68c382884b082ab60473045b8f38d1c8a8fb247ad5cda831d7d6fce4ece4fca7d25e8c2cccce6738e7a4dc810e640a559dde0375d39d3df6e92b8f5c3 223 + languageName: node 224 + linkType: hard 225 + 226 + "@atproto/oauth-client@npm:0.3.1, @atproto/oauth-client@npm:^0.3.1": 227 + version: 0.3.1 228 + resolution: "@atproto/oauth-client@npm:0.3.1" 229 + dependencies: 230 + "@atproto-labs/did-resolver": "npm:0.1.5" 231 + "@atproto-labs/fetch": "npm:0.1.1" 232 + "@atproto-labs/handle-resolver": "npm:0.1.4" 233 + "@atproto-labs/identity-resolver": "npm:0.1.6" 234 + "@atproto-labs/simple-store": "npm:0.1.1" 235 + "@atproto-labs/simple-store-memory": "npm:0.1.1" 236 + "@atproto/did": "npm:0.1.3" 237 + "@atproto/jwk": "npm:0.1.1" 238 + "@atproto/oauth-types": "npm:0.2.0" 239 + "@atproto/xrpc": "npm:0.6.4" 240 + multiformats: "npm:^9.9.0" 241 + zod: "npm:^3.23.8" 242 + checksum: 10/26eb22d9b1d0c59a79a297c0a265a5e92e1b704570bb2bf93c0b3822d3d16e9276195805112f940606d643345f7a0e1f72c57972b6c5f551dd436200ea78e461 243 + languageName: node 244 + linkType: hard 245 + 246 + "@atproto/oauth-types@npm:0.2.0": 247 + version: 0.2.0 248 + resolution: "@atproto/oauth-types@npm:0.2.0" 249 + dependencies: 250 + "@atproto/jwk": "npm:0.1.1" 251 + zod: "npm:^3.23.8" 252 + checksum: 10/e526a936f66c7c7dc6bdb3792ffac7fa168c9908a39f28a89ff5183b3e13961b264dcee9dbf3dfcbaa5ec67aedbc8c08f9d4b0b061c99badb6055ae8e491cadb 253 + languageName: node 254 + linkType: hard 255 + 256 + "@atproto/syntax@npm:0.3.1, @atproto/syntax@npm:^0.3.1": 257 + version: 0.3.1 258 + resolution: "@atproto/syntax@npm:0.3.1" 259 + checksum: 10/f5a7509b74d48d0b7be7cee82c8b93861a79671e617864c022147099fa1f87ee91da7c9b2b8688c8ae405fd465eb4e2b012eed04bf5aaadc4233c03f1badb9ed 260 + languageName: node 261 + linkType: hard 262 + 263 + "@atproto/xrpc@npm:0.6.4, @atproto/xrpc@npm:^0.6.4": 264 + version: 0.6.4 265 + resolution: "@atproto/xrpc@npm:0.6.4" 266 + dependencies: 267 + "@atproto/lexicon": "npm:^0.4.3" 268 + zod: "npm:^3.23.8" 269 + checksum: 10/de610ce225218722399bb2612085dbbe001dc7531d56a8be9e01151797938b480698c2e790d2a3dbf5ef778dcf0d3452c9ede4963a1d108bf43b0f2f805441cf 41 270 languageName: node 42 271 linkType: hard 43 272 ··· 789 1018 languageName: node 790 1019 linkType: hard 791 1020 792 - "@babel/compat-data@npm:^7.20.5, @babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.24.7": 1021 + "@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.24.7": 793 1022 version: 7.24.7 794 1023 resolution: "@babel/compat-data@npm:7.24.7" 795 1024 checksum: 10/6edc09152ca51a22c33741c441f33f9475598fa59edc53369edb74b49f4ea4bef1281f5b0ed2b9b67fb66faef2da2069e21c4eef83405d8326e524b301f4e7e2 ··· 803 1032 languageName: node 804 1033 linkType: hard 805 1034 806 - "@babel/core@npm:^7.13.16, @babel/core@npm:^7.20.0": 807 - version: 7.24.7 808 - resolution: "@babel/core@npm:7.24.7" 809 - dependencies: 810 - "@ampproject/remapping": "npm:^2.2.0" 811 - "@babel/code-frame": "npm:^7.24.7" 812 - "@babel/generator": "npm:^7.24.7" 813 - "@babel/helper-compilation-targets": "npm:^7.24.7" 814 - "@babel/helper-module-transforms": "npm:^7.24.7" 815 - "@babel/helpers": "npm:^7.24.7" 816 - "@babel/parser": "npm:^7.24.7" 817 - "@babel/template": "npm:^7.24.7" 818 - "@babel/traverse": "npm:^7.24.7" 819 - "@babel/types": "npm:^7.24.7" 820 - convert-source-map: "npm:^2.0.0" 821 - debug: "npm:^4.1.0" 822 - gensync: "npm:^1.0.0-beta.2" 823 - json5: "npm:^2.2.3" 824 - semver: "npm:^6.3.1" 825 - checksum: 10/ef8cc1afa3ccecee6d1f5660c487ccc2a3f25106830ea9040e80ef4b2092e053607ee4ddd03493e4f7ef2f9967a956ca53b830d54c5bee738eeb58cce679dd4a 826 - languageName: node 827 - linkType: hard 828 - 829 - "@babel/core@npm:^7.25.2, @babel/core@npm:^7.26.0": 1035 + "@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.25.2, @babel/core@npm:^7.26.0": 830 1036 version: 7.26.0 831 1037 resolution: "@babel/core@npm:7.26.0" 832 1038 dependencies: ··· 849 1055 languageName: node 850 1056 linkType: hard 851 1057 852 - "@babel/generator@npm:7.2.0": 853 - version: 7.2.0 854 - resolution: "@babel/generator@npm:7.2.0" 1058 + "@babel/core@npm:^7.13.16, @babel/core@npm:^7.20.0": 1059 + version: 7.24.7 1060 + resolution: "@babel/core@npm:7.24.7" 855 1061 dependencies: 856 - "@babel/types": "npm:^7.2.0" 857 - jsesc: "npm:^2.5.1" 858 - lodash: "npm:^4.17.10" 859 - source-map: "npm:^0.5.0" 860 - trim-right: "npm:^1.0.1" 861 - checksum: 10/61520c478f52eff44eb3b460ae976f800eb06933f366890274e1a2ef1b7105a3271cd645915362fbc5646cd1e6688a4165b32e60cb6fbfa0715428433fdfba89 1062 + "@ampproject/remapping": "npm:^2.2.0" 1063 + "@babel/code-frame": "npm:^7.24.7" 1064 + "@babel/generator": "npm:^7.24.7" 1065 + "@babel/helper-compilation-targets": "npm:^7.24.7" 1066 + "@babel/helper-module-transforms": "npm:^7.24.7" 1067 + "@babel/helpers": "npm:^7.24.7" 1068 + "@babel/parser": "npm:^7.24.7" 1069 + "@babel/template": "npm:^7.24.7" 1070 + "@babel/traverse": "npm:^7.24.7" 1071 + "@babel/types": "npm:^7.24.7" 1072 + convert-source-map: "npm:^2.0.0" 1073 + debug: "npm:^4.1.0" 1074 + gensync: "npm:^1.0.0-beta.2" 1075 + json5: "npm:^2.2.3" 1076 + semver: "npm:^6.3.1" 1077 + checksum: 10/ef8cc1afa3ccecee6d1f5660c487ccc2a3f25106830ea9040e80ef4b2092e053607ee4ddd03493e4f7ef2f9967a956ca53b830d54c5bee738eeb58cce679dd4a 862 1078 languageName: node 863 1079 linkType: hard 864 1080 ··· 874 1090 languageName: node 875 1091 linkType: hard 876 1092 877 - "@babel/generator@npm:^7.25.5, @babel/generator@npm:^7.25.9, @babel/generator@npm:^7.26.0": 1093 + "@babel/generator@npm:^7.25.0, @babel/generator@npm:^7.25.5, @babel/generator@npm:^7.25.9, @babel/generator@npm:^7.26.0": 878 1094 version: 7.26.2 879 1095 resolution: "@babel/generator@npm:7.26.2" 880 1096 dependencies: ··· 905 1121 languageName: node 906 1122 linkType: hard 907 1123 908 - "@babel/helper-compilation-targets@npm:^7.20.7, @babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7": 1124 + "@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7": 909 1125 version: 7.24.7 910 1126 resolution: "@babel/helper-compilation-targets@npm:7.24.7" 911 1127 dependencies: ··· 967 1183 languageName: node 968 1184 linkType: hard 969 1185 970 - "@babel/helper-create-regexp-features-plugin@npm:^7.24.7": 971 - version: 7.24.7 972 - resolution: "@babel/helper-create-regexp-features-plugin@npm:7.24.7" 973 - dependencies: 974 - "@babel/helper-annotate-as-pure": "npm:^7.24.7" 975 - regexpu-core: "npm:^5.3.1" 976 - semver: "npm:^6.3.1" 977 - peerDependencies: 978 - "@babel/core": ^7.0.0 979 - checksum: 10/dd7238af30ea6b26a627192422822ae810873fd899150dd8d4348eb107045721a849abcfa2bd04f917493784a93724b8caf6994c31afd16f9347a8a9b9862425 980 - languageName: node 981 - linkType: hard 982 - 983 1186 "@babel/helper-create-regexp-features-plugin@npm:^7.25.9": 984 1187 version: 7.25.9 985 1188 resolution: "@babel/helper-create-regexp-features-plugin@npm:7.25.9" ··· 993 1196 languageName: node 994 1197 linkType: hard 995 1198 996 - "@babel/helper-define-polyfill-provider@npm:^0.6.1, @babel/helper-define-polyfill-provider@npm:^0.6.2": 1199 + "@babel/helper-define-polyfill-provider@npm:^0.6.2": 997 1200 version: 0.6.2 998 1201 resolution: "@babel/helper-define-polyfill-provider@npm:0.6.2" 999 1202 dependencies: ··· 1008 1211 languageName: node 1009 1212 linkType: hard 1010 1213 1011 - "@babel/helper-environment-visitor@npm:^7.18.9, @babel/helper-environment-visitor@npm:^7.24.7": 1214 + "@babel/helper-environment-visitor@npm:^7.24.7": 1012 1215 version: 7.24.7 1013 1216 resolution: "@babel/helper-environment-visitor@npm:7.24.7" 1014 1217 dependencies: ··· 1091 1294 languageName: node 1092 1295 linkType: hard 1093 1296 1094 - "@babel/helper-module-transforms@npm:^7.26.0": 1297 + "@babel/helper-module-transforms@npm:^7.25.9, @babel/helper-module-transforms@npm:^7.26.0": 1095 1298 version: 7.26.0 1096 1299 resolution: "@babel/helper-module-transforms@npm:7.26.0" 1097 1300 dependencies: ··· 1122 1325 languageName: node 1123 1326 linkType: hard 1124 1327 1328 + "@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.25.9": 1329 + version: 7.25.9 1330 + resolution: "@babel/helper-plugin-utils@npm:7.25.9" 1331 + checksum: 10/e347d87728b1ab10b6976d46403941c8f9008c045ea6d99997a7ffca7b852dc34b6171380f7b17edf94410e0857ff26f3a53d8618f11d73744db86e8ca9b8c64 1332 + languageName: node 1333 + linkType: hard 1334 + 1125 1335 "@babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": 1126 1336 version: 7.24.7 1127 1337 resolution: "@babel/helper-plugin-utils@npm:7.24.7" ··· 1129 1339 languageName: node 1130 1340 linkType: hard 1131 1341 1132 - "@babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.25.9": 1342 + "@babel/helper-remap-async-to-generator@npm:^7.25.9": 1133 1343 version: 7.25.9 1134 - resolution: "@babel/helper-plugin-utils@npm:7.25.9" 1135 - checksum: 10/e347d87728b1ab10b6976d46403941c8f9008c045ea6d99997a7ffca7b852dc34b6171380f7b17edf94410e0857ff26f3a53d8618f11d73744db86e8ca9b8c64 1136 - languageName: node 1137 - linkType: hard 1138 - 1139 - "@babel/helper-remap-async-to-generator@npm:^7.18.9, @babel/helper-remap-async-to-generator@npm:^7.24.7": 1140 - version: 7.24.7 1141 - resolution: "@babel/helper-remap-async-to-generator@npm:7.24.7" 1344 + resolution: "@babel/helper-remap-async-to-generator@npm:7.25.9" 1142 1345 dependencies: 1143 - "@babel/helper-annotate-as-pure": "npm:^7.24.7" 1144 - "@babel/helper-environment-visitor": "npm:^7.24.7" 1145 - "@babel/helper-wrap-function": "npm:^7.24.7" 1346 + "@babel/helper-annotate-as-pure": "npm:^7.25.9" 1347 + "@babel/helper-wrap-function": "npm:^7.25.9" 1348 + "@babel/traverse": "npm:^7.25.9" 1146 1349 peerDependencies: 1147 1350 "@babel/core": ^7.0.0 1148 - checksum: 10/4b7c925e71811902c8aa57904044921027eae10ac9b5b029df491ed4abc1ea18b450a7923fd0feb1248ae37703889e72b6c27f2a0e2d5811103c7655c49ad355 1351 + checksum: 10/ea37ad9f8f7bcc27c109963b8ebb9d22bac7a5db2a51de199cb560e251d5593fe721e46aab2ca7d3e7a24b0aa4aff0eaf9c7307af9c2fd3a1d84268579073052 1149 1352 languageName: node 1150 1353 linkType: hard 1151 1354 ··· 1182 1385 "@babel/traverse": "npm:^7.24.7" 1183 1386 "@babel/types": "npm:^7.24.7" 1184 1387 checksum: 10/5083e190186028e48fc358a192e4b93ab320bd016103caffcfda81302a13300ccce46c9cd255ae520c25d2a6a9b47671f93e5fe5678954a2329dc0a685465c49 1388 + languageName: node 1389 + linkType: hard 1390 + 1391 + "@babel/helper-simple-access@npm:^7.25.9": 1392 + version: 7.25.9 1393 + resolution: "@babel/helper-simple-access@npm:7.25.9" 1394 + dependencies: 1395 + "@babel/traverse": "npm:^7.25.9" 1396 + "@babel/types": "npm:^7.25.9" 1397 + checksum: 10/a16a6cfa5e8ac7144e856bcdaaf0022cf5de028fc0c56ce21dd664a6e900999a4285c587a209f2acf9de438c0d60bfb497f5f34aa34cbaf29da3e2f8d8d7feb7 1185 1398 languageName: node 1186 1399 linkType: hard 1187 1400 ··· 1256 1469 languageName: node 1257 1470 linkType: hard 1258 1471 1259 - "@babel/helper-wrap-function@npm:^7.24.7": 1260 - version: 7.24.7 1261 - resolution: "@babel/helper-wrap-function@npm:7.24.7" 1472 + "@babel/helper-wrap-function@npm:^7.25.9": 1473 + version: 7.25.9 1474 + resolution: "@babel/helper-wrap-function@npm:7.25.9" 1262 1475 dependencies: 1263 - "@babel/helper-function-name": "npm:^7.24.7" 1264 - "@babel/template": "npm:^7.24.7" 1265 - "@babel/traverse": "npm:^7.24.7" 1266 - "@babel/types": "npm:^7.24.7" 1267 - checksum: 10/1c248accfbb09a891293840506e3fbfc807b524abf16fc32115a6e73f760387d2dc7935282b48caa281c8033bf93dc80eca7649250524cfb95da8643771bca02 1476 + "@babel/template": "npm:^7.25.9" 1477 + "@babel/traverse": "npm:^7.25.9" 1478 + "@babel/types": "npm:^7.25.9" 1479 + checksum: 10/988dcf49159f1c920d6b9486762a93767a6e84b5e593a6342bc235f3e47cc1cb0c048d8fca531a48143e6b7fce1ff12ddbf735cf5f62cb2f07192cf7c27b89cf 1268 1480 languageName: node 1269 1481 linkType: hard 1270 1482 ··· 1300 1512 languageName: node 1301 1513 linkType: hard 1302 1514 1303 - "@babel/parser@npm:^7.1.6, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.20.0, @babel/parser@npm:^7.24.7": 1304 - version: 7.24.7 1305 - resolution: "@babel/parser@npm:7.24.7" 1306 - bin: 1307 - parser: ./bin/babel-parser.js 1308 - checksum: 10/ef9ebce60e13db560ccc7af9235d460f6726bb7e23ae2d675098c1fc43d5249067be60d4118889dad33b1d4f85162cf66baf554719e1669f29bb20e71322568e 1309 - languageName: node 1310 - linkType: hard 1311 - 1312 - "@babel/parser@npm:^7.25.4, @babel/parser@npm:^7.25.9, @babel/parser@npm:^7.26.0, @babel/parser@npm:^7.26.2": 1515 + "@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.3, @babel/parser@npm:^7.25.4, @babel/parser@npm:^7.25.9, @babel/parser@npm:^7.26.0, @babel/parser@npm:^7.26.2": 1313 1516 version: 7.26.2 1314 1517 resolution: "@babel/parser@npm:7.26.2" 1315 1518 dependencies: ··· 1320 1523 languageName: node 1321 1524 linkType: hard 1322 1525 1323 - "@babel/plugin-proposal-async-generator-functions@npm:^7.0.0": 1324 - version: 7.20.7 1325 - resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.20.7" 1326 - dependencies: 1327 - "@babel/helper-environment-visitor": "npm:^7.18.9" 1328 - "@babel/helper-plugin-utils": "npm:^7.20.2" 1329 - "@babel/helper-remap-async-to-generator": "npm:^7.18.9" 1330 - "@babel/plugin-syntax-async-generators": "npm:^7.8.4" 1331 - peerDependencies: 1332 - "@babel/core": ^7.0.0-0 1333 - checksum: 10/111109ee118c9e69982f08d5e119eab04190b36a0f40e22e873802d941956eee66d2aa5a15f5321e51e3f9aa70a91136451b987fe15185ef8cc547ac88937723 1526 + "@babel/parser@npm:^7.1.6, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.20.0, @babel/parser@npm:^7.24.7": 1527 + version: 7.24.7 1528 + resolution: "@babel/parser@npm:7.24.7" 1529 + bin: 1530 + parser: ./bin/babel-parser.js 1531 + checksum: 10/ef9ebce60e13db560ccc7af9235d460f6726bb7e23ae2d675098c1fc43d5249067be60d4118889dad33b1d4f85162cf66baf554719e1669f29bb20e71322568e 1334 1532 languageName: node 1335 1533 linkType: hard 1336 1534 1337 - "@babel/plugin-proposal-class-properties@npm:^7.13.0, @babel/plugin-proposal-class-properties@npm:^7.18.0": 1535 + "@babel/plugin-proposal-class-properties@npm:^7.13.0": 1338 1536 version: 7.18.6 1339 1537 resolution: "@babel/plugin-proposal-class-properties@npm:7.18.6" 1340 1538 dependencies: ··· 1359 1557 languageName: node 1360 1558 linkType: hard 1361 1559 1362 - "@babel/plugin-proposal-export-default-from@npm:^7.0.0": 1363 - version: 7.24.7 1364 - resolution: "@babel/plugin-proposal-export-default-from@npm:7.24.7" 1365 - dependencies: 1366 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1367 - "@babel/plugin-syntax-export-default-from": "npm:^7.24.7" 1368 - peerDependencies: 1369 - "@babel/core": ^7.0.0-0 1370 - checksum: 10/ebb68d666f0f91f6ea827f11b55c6008e619752c4c02a039fb7623d27e07ec66ad3a6a56839faac382100e19602d3ccfd48c9660a9699dab4f02b8c04d61a138 1371 - languageName: node 1372 - linkType: hard 1373 - 1374 - "@babel/plugin-proposal-export-default-from@npm:^7.25.9": 1560 + "@babel/plugin-proposal-export-default-from@npm:^7.24.7, @babel/plugin-proposal-export-default-from@npm:^7.25.9": 1375 1561 version: 7.25.9 1376 1562 resolution: "@babel/plugin-proposal-export-default-from@npm:7.25.9" 1377 1563 dependencies: ··· 1382 1568 languageName: node 1383 1569 linkType: hard 1384 1570 1385 - "@babel/plugin-proposal-logical-assignment-operators@npm:^7.18.0": 1386 - version: 7.20.7 1387 - resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.20.7" 1388 - dependencies: 1389 - "@babel/helper-plugin-utils": "npm:^7.20.2" 1390 - "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" 1391 - peerDependencies: 1392 - "@babel/core": ^7.0.0-0 1393 - checksum: 10/cdd7b8136cc4db3f47714d5266f9e7b592a2ac5a94a5878787ce08890e97c8ab1ca8e94b27bfeba7b0f2b1549a026d9fc414ca2196de603df36fb32633bbdc19 1394 - languageName: node 1395 - linkType: hard 1396 - 1397 - "@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.13.8, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.18.0": 1571 + "@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.13.8": 1398 1572 version: 7.18.6 1399 1573 resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.18.6" 1400 1574 dependencies: ··· 1406 1580 languageName: node 1407 1581 linkType: hard 1408 1582 1409 - "@babel/plugin-proposal-numeric-separator@npm:^7.0.0": 1410 - version: 7.18.6 1411 - resolution: "@babel/plugin-proposal-numeric-separator@npm:7.18.6" 1583 + "@babel/plugin-proposal-optional-chaining@npm:^7.13.12": 1584 + version: 7.21.0 1585 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.21.0" 1412 1586 dependencies: 1413 - "@babel/helper-plugin-utils": "npm:^7.18.6" 1414 - "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" 1587 + "@babel/helper-plugin-utils": "npm:^7.20.2" 1588 + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.20.0" 1589 + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" 1415 1590 peerDependencies: 1416 1591 "@babel/core": ^7.0.0-0 1417 - checksum: 10/f370ea584c55bf4040e1f78c80b4eeb1ce2e6aaa74f87d1a48266493c33931d0b6222d8cee3a082383d6bb648ab8d6b7147a06f974d3296ef3bc39c7851683ec 1592 + checksum: 10/522cd133aff5c94c0ef36ff83c64f03deee183815da68b65b6950e81972ace3b514e032df07ea76d0f9ec8cc7a49578092907adfa17fccb4612117557c04a882 1418 1593 languageName: node 1419 1594 linkType: hard 1420 1595 1421 - "@babel/plugin-proposal-object-rest-spread@npm:^7.20.0": 1422 - version: 7.20.7 1423 - resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.20.7" 1596 + "@babel/plugin-syntax-async-generators@npm:^7.8.4": 1597 + version: 7.8.4 1598 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" 1424 1599 dependencies: 1425 - "@babel/compat-data": "npm:^7.20.5" 1426 - "@babel/helper-compilation-targets": "npm:^7.20.7" 1427 - "@babel/helper-plugin-utils": "npm:^7.20.2" 1428 - "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" 1429 - "@babel/plugin-transform-parameters": "npm:^7.20.7" 1600 + "@babel/helper-plugin-utils": "npm:^7.8.0" 1430 1601 peerDependencies: 1431 1602 "@babel/core": ^7.0.0-0 1432 - checksum: 10/cb0f8f2ff98d7bb64ee91c28b20e8ab15d9bc7043f0932cbb9e51e1bbfb623b12f206a1171e070299c9cf21948c320b710d6d72a42f68a5bfd2702354113a1c5 1603 + checksum: 10/7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 1433 1604 languageName: node 1434 1605 linkType: hard 1435 1606 1436 - "@babel/plugin-proposal-optional-catch-binding@npm:^7.0.0": 1437 - version: 7.18.6 1438 - resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.18.6" 1607 + "@babel/plugin-syntax-bigint@npm:^7.8.3": 1608 + version: 7.8.3 1609 + resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" 1439 1610 dependencies: 1440 - "@babel/helper-plugin-utils": "npm:^7.18.6" 1441 - "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" 1611 + "@babel/helper-plugin-utils": "npm:^7.8.0" 1442 1612 peerDependencies: 1443 1613 "@babel/core": ^7.0.0-0 1444 - checksum: 10/7b5b39fb5d8d6d14faad6cb68ece5eeb2fd550fb66b5af7d7582402f974f5bc3684641f7c192a5a57e0f59acfae4aada6786be1eba030881ddc590666eff4d1e 1614 + checksum: 10/3a10849d83e47aec50f367a9e56a6b22d662ddce643334b087f9828f4c3dd73bdc5909aaeabe123fed78515767f9ca43498a0e621c438d1cd2802d7fae3c9648 1445 1615 languageName: node 1446 1616 linkType: hard 1447 1617 1448 - "@babel/plugin-proposal-optional-chaining@npm:^7.13.12, @babel/plugin-proposal-optional-chaining@npm:^7.20.0": 1449 - version: 7.21.0 1450 - resolution: "@babel/plugin-proposal-optional-chaining@npm:7.21.0" 1618 + "@babel/plugin-syntax-class-properties@npm:^7.12.13": 1619 + version: 7.12.13 1620 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" 1451 1621 dependencies: 1452 - "@babel/helper-plugin-utils": "npm:^7.20.2" 1453 - "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.20.0" 1454 - "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" 1622 + "@babel/helper-plugin-utils": "npm:^7.12.13" 1455 1623 peerDependencies: 1456 1624 "@babel/core": ^7.0.0-0 1457 - checksum: 10/522cd133aff5c94c0ef36ff83c64f03deee183815da68b65b6950e81972ace3b514e032df07ea76d0f9ec8cc7a49578092907adfa17fccb4612117557c04a882 1625 + checksum: 10/24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc 1458 1626 languageName: node 1459 1627 linkType: hard 1460 1628 1461 - "@babel/plugin-syntax-async-generators@npm:^7.8.4": 1462 - version: 7.8.4 1463 - resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" 1629 + "@babel/plugin-syntax-class-static-block@npm:^7.14.5": 1630 + version: 7.14.5 1631 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" 1464 1632 dependencies: 1465 - "@babel/helper-plugin-utils": "npm:^7.8.0" 1633 + "@babel/helper-plugin-utils": "npm:^7.14.5" 1466 1634 peerDependencies: 1467 1635 "@babel/core": ^7.0.0-0 1468 - checksum: 10/7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 1636 + checksum: 10/3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 1469 1637 languageName: node 1470 1638 linkType: hard 1471 1639 ··· 1480 1648 languageName: node 1481 1649 linkType: hard 1482 1650 1483 - "@babel/plugin-syntax-dynamic-import@npm:^7.8.0": 1651 + "@babel/plugin-syntax-dynamic-import@npm:^7.8.3": 1484 1652 version: 7.8.3 1485 1653 resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" 1486 1654 dependencies: ··· 1491 1659 languageName: node 1492 1660 linkType: hard 1493 1661 1494 - "@babel/plugin-syntax-export-default-from@npm:^7.0.0, @babel/plugin-syntax-export-default-from@npm:^7.24.7": 1662 + "@babel/plugin-syntax-export-default-from@npm:^7.24.7": 1495 1663 version: 7.24.7 1496 1664 resolution: "@babel/plugin-syntax-export-default-from@npm:7.24.7" 1497 1665 dependencies: ··· 1524 1692 languageName: node 1525 1693 linkType: hard 1526 1694 1527 - "@babel/plugin-syntax-flow@npm:^7.12.1, @babel/plugin-syntax-flow@npm:^7.18.0, @babel/plugin-syntax-flow@npm:^7.24.7": 1695 + "@babel/plugin-syntax-flow@npm:^7.12.1, @babel/plugin-syntax-flow@npm:^7.24.7": 1528 1696 version: 7.24.7 1529 1697 resolution: "@babel/plugin-syntax-flow@npm:7.24.7" 1530 1698 dependencies: ··· 1546 1714 languageName: node 1547 1715 linkType: hard 1548 1716 1717 + "@babel/plugin-syntax-import-attributes@npm:^7.24.7": 1718 + version: 7.26.0 1719 + resolution: "@babel/plugin-syntax-import-attributes@npm:7.26.0" 1720 + dependencies: 1721 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1722 + peerDependencies: 1723 + "@babel/core": ^7.0.0-0 1724 + checksum: 10/c122aa577166c80ee67f75aebebeef4150a132c4d3109d25d7fc058bf802946f883e330f20b78c1d3e3a5ada631c8780c263d2d01b5dbaecc69efefeedd42916 1725 + languageName: node 1726 + linkType: hard 1727 + 1728 + "@babel/plugin-syntax-import-meta@npm:^7.10.4": 1729 + version: 7.10.4 1730 + resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" 1731 + dependencies: 1732 + "@babel/helper-plugin-utils": "npm:^7.10.4" 1733 + peerDependencies: 1734 + "@babel/core": ^7.0.0-0 1735 + checksum: 10/166ac1125d10b9c0c430e4156249a13858c0366d38844883d75d27389621ebe651115cb2ceb6dc011534d5055719fa1727b59f39e1ab3ca97820eef3dcab5b9b 1736 + languageName: node 1737 + linkType: hard 1738 + 1739 + "@babel/plugin-syntax-json-strings@npm:^7.8.3": 1740 + version: 7.8.3 1741 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" 1742 + dependencies: 1743 + "@babel/helper-plugin-utils": "npm:^7.8.0" 1744 + peerDependencies: 1745 + "@babel/core": ^7.0.0-0 1746 + checksum: 10/bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a 1747 + languageName: node 1748 + linkType: hard 1749 + 1549 1750 "@babel/plugin-syntax-jsx@npm:^7.24.7": 1550 1751 version: 7.24.7 1551 1752 resolution: "@babel/plugin-syntax-jsx@npm:7.24.7" ··· 1579 1780 languageName: node 1580 1781 linkType: hard 1581 1782 1582 - "@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.0.0, @babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": 1783 + "@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": 1583 1784 version: 7.8.3 1584 1785 resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" 1585 1786 dependencies: ··· 1623 1824 languageName: node 1624 1825 linkType: hard 1625 1826 1626 - "@babel/plugin-syntax-optional-chaining@npm:^7.0.0, @babel/plugin-syntax-optional-chaining@npm:^7.8.3": 1827 + "@babel/plugin-syntax-optional-chaining@npm:^7.8.3": 1627 1828 version: 7.8.3 1628 1829 resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" 1629 1830 dependencies: ··· 1645 1846 languageName: node 1646 1847 linkType: hard 1647 1848 1849 + "@babel/plugin-syntax-top-level-await@npm:^7.14.5": 1850 + version: 7.14.5 1851 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" 1852 + dependencies: 1853 + "@babel/helper-plugin-utils": "npm:^7.14.5" 1854 + peerDependencies: 1855 + "@babel/core": ^7.0.0-0 1856 + checksum: 10/bbd1a56b095be7820029b209677b194db9b1d26691fe999856462e66b25b281f031f3dfd91b1619e9dcf95bebe336211833b854d0fb8780d618e35667c2d0d7e 1857 + languageName: node 1858 + linkType: hard 1859 + 1648 1860 "@babel/plugin-syntax-typescript@npm:^7.24.7": 1649 1861 version: 7.24.7 1650 1862 resolution: "@babel/plugin-syntax-typescript@npm:7.24.7" ··· 1656 1868 languageName: node 1657 1869 linkType: hard 1658 1870 1659 - "@babel/plugin-transform-arrow-functions@npm:^7.0.0, @babel/plugin-transform-arrow-functions@npm:^7.0.0-0": 1871 + "@babel/plugin-syntax-typescript@npm:^7.25.9": 1872 + version: 7.25.9 1873 + resolution: "@babel/plugin-syntax-typescript@npm:7.25.9" 1874 + dependencies: 1875 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1876 + peerDependencies: 1877 + "@babel/core": ^7.0.0-0 1878 + checksum: 10/0e9821e8ba7d660c36c919654e4144a70546942ae184e85b8102f2322451eae102cbfadbcadd52ce077a2b44b400ee52394c616feab7b5b9f791b910e933fd33 1879 + languageName: node 1880 + linkType: hard 1881 + 1882 + "@babel/plugin-transform-arrow-functions@npm:^7.0.0-0": 1660 1883 version: 7.24.7 1661 1884 resolution: "@babel/plugin-transform-arrow-functions@npm:7.24.7" 1662 1885 dependencies: ··· 1667 1890 languageName: node 1668 1891 linkType: hard 1669 1892 1670 - "@babel/plugin-transform-async-to-generator@npm:^7.20.0": 1671 - version: 7.24.7 1672 - resolution: "@babel/plugin-transform-async-to-generator@npm:7.24.7" 1893 + "@babel/plugin-transform-arrow-functions@npm:^7.24.7": 1894 + version: 7.25.9 1895 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.25.9" 1896 + dependencies: 1897 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1898 + peerDependencies: 1899 + "@babel/core": ^7.0.0-0 1900 + checksum: 10/c29f081224859483accf55fb4d091db2aac0dcd0d7954bac5ca889030cc498d3f771aa20eb2e9cd8310084ec394d85fa084b97faf09298b6bc9541182b3eb5bb 1901 + languageName: node 1902 + linkType: hard 1903 + 1904 + "@babel/plugin-transform-async-generator-functions@npm:^7.25.4": 1905 + version: 7.25.9 1906 + resolution: "@babel/plugin-transform-async-generator-functions@npm:7.25.9" 1673 1907 dependencies: 1674 - "@babel/helper-module-imports": "npm:^7.24.7" 1675 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1676 - "@babel/helper-remap-async-to-generator": "npm:^7.24.7" 1908 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1909 + "@babel/helper-remap-async-to-generator": "npm:^7.25.9" 1910 + "@babel/traverse": "npm:^7.25.9" 1677 1911 peerDependencies: 1678 1912 "@babel/core": ^7.0.0-0 1679 - checksum: 10/b2041d9d50b09afef983c4f1dece63fdfc5a8e4646e42591db398bc4322958434d60b3cb0f5d0f9f9dbdad8577e8a1a33ba9859aacc3004bf6d25d094d20193f 1913 + checksum: 10/99306c44a4a791abd51a56d89fa61c4cfe805a58e070c7fb1cbf950886778a6c8c4f25a92d231f91da1746d14a338436073fd83038e607f03a2a98ac5340406b 1680 1914 languageName: node 1681 1915 linkType: hard 1682 1916 1683 - "@babel/plugin-transform-block-scoping@npm:^7.0.0": 1684 - version: 7.24.7 1685 - resolution: "@babel/plugin-transform-block-scoping@npm:7.24.7" 1917 + "@babel/plugin-transform-async-to-generator@npm:^7.24.7": 1918 + version: 7.25.9 1919 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.25.9" 1686 1920 dependencies: 1687 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1921 + "@babel/helper-module-imports": "npm:^7.25.9" 1922 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1923 + "@babel/helper-remap-async-to-generator": "npm:^7.25.9" 1688 1924 peerDependencies: 1689 1925 "@babel/core": ^7.0.0-0 1690 - checksum: 10/9656e7bb0673279e18d9f9408027786f1b20d657e2cc106456e0bd7826bd12d81813299adbef2b2a5837b05740f2295fe8fb62389122d38c9e961b3005270777 1926 + checksum: 10/b3ad50fb93c171644d501864620ed23952a46648c4df10dc9c62cc9ad08031b66bd272cfdd708faeee07c23b6251b16f29ce0350473e4c79f0c32178d38ce3a6 1691 1927 languageName: node 1692 1928 linkType: hard 1693 1929 1694 - "@babel/plugin-transform-class-properties@npm:^7.0.0-0": 1930 + "@babel/plugin-transform-block-scoping@npm:^7.25.0": 1695 1931 version: 7.25.9 1696 - resolution: "@babel/plugin-transform-class-properties@npm:7.25.9" 1932 + resolution: "@babel/plugin-transform-block-scoping@npm:7.25.9" 1697 1933 dependencies: 1698 - "@babel/helper-create-class-features-plugin": "npm:^7.25.9" 1699 1934 "@babel/helper-plugin-utils": "npm:^7.25.9" 1700 1935 peerDependencies: 1701 1936 "@babel/core": ^7.0.0-0 1702 - checksum: 10/a8d69e2c285486b63f49193cbcf7a15e1d3a5f632c1c07d7a97f65306df7f554b30270b7378dde143f8b557d1f8f6336c643377943dec8ec405e4cd11e90b9ea 1937 + checksum: 10/89dcdd7edb1e0c2f44e3c568a8ad8202e2574a8a8308248550a9391540bc3f5c9fbd8352c60ae90769d46f58d3ab36f2c3a0fbc1c3620813d92ff6fccdfa79c8 1703 1938 languageName: node 1704 1939 linkType: hard 1705 1940 1706 - "@babel/plugin-transform-classes@npm:^7.0.0": 1707 - version: 7.24.7 1708 - resolution: "@babel/plugin-transform-classes@npm:7.24.7" 1941 + "@babel/plugin-transform-class-properties@npm:^7.0.0-0, @babel/plugin-transform-class-properties@npm:^7.25.4": 1942 + version: 7.25.9 1943 + resolution: "@babel/plugin-transform-class-properties@npm:7.25.9" 1709 1944 dependencies: 1710 - "@babel/helper-annotate-as-pure": "npm:^7.24.7" 1711 - "@babel/helper-compilation-targets": "npm:^7.24.7" 1712 - "@babel/helper-environment-visitor": "npm:^7.24.7" 1713 - "@babel/helper-function-name": "npm:^7.24.7" 1714 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1715 - "@babel/helper-replace-supers": "npm:^7.24.7" 1716 - "@babel/helper-split-export-declaration": "npm:^7.24.7" 1717 - globals: "npm:^11.1.0" 1945 + "@babel/helper-create-class-features-plugin": "npm:^7.25.9" 1946 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1718 1947 peerDependencies: 1719 1948 "@babel/core": ^7.0.0-0 1720 - checksum: 10/5d5577fcb0ec9ef33d889358c54720abe462325bed5483d71f9aa0a704f491520777be5411d6fd8a08a8ebe352e2445d46d1e6577a5a2c9333bc37b9ff8b9a74 1949 + checksum: 10/a8d69e2c285486b63f49193cbcf7a15e1d3a5f632c1c07d7a97f65306df7f554b30270b7378dde143f8b557d1f8f6336c643377943dec8ec405e4cd11e90b9ea 1721 1950 languageName: node 1722 1951 linkType: hard 1723 1952 1724 - "@babel/plugin-transform-classes@npm:^7.0.0-0": 1953 + "@babel/plugin-transform-classes@npm:^7.0.0-0, @babel/plugin-transform-classes@npm:^7.25.4": 1725 1954 version: 7.25.9 1726 1955 resolution: "@babel/plugin-transform-classes@npm:7.25.9" 1727 1956 dependencies: ··· 1737 1966 languageName: node 1738 1967 linkType: hard 1739 1968 1740 - "@babel/plugin-transform-computed-properties@npm:^7.0.0": 1741 - version: 7.24.7 1742 - resolution: "@babel/plugin-transform-computed-properties@npm:7.24.7" 1969 + "@babel/plugin-transform-computed-properties@npm:^7.24.7": 1970 + version: 7.25.9 1971 + resolution: "@babel/plugin-transform-computed-properties@npm:7.25.9" 1743 1972 dependencies: 1744 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1745 - "@babel/template": "npm:^7.24.7" 1973 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1974 + "@babel/template": "npm:^7.25.9" 1746 1975 peerDependencies: 1747 1976 "@babel/core": ^7.0.0-0 1748 - checksum: 10/fecf3c770b2dd8e70be6da12d4dd0273de9d8ef4d0f46be98d56fddb3a451932cdc9bb81de3057c9acb903e05ece657886cc31886d5762afa7b0a256db0f791e 1977 + checksum: 10/aa1a9064d6a9d3b569b8cae6972437315a38a8f6553ee618406da5122500a06c2f20b9fa93aeed04dd895923bf6f529c09fc79d4be987ec41785ceb7d2203122 1749 1978 languageName: node 1750 1979 linkType: hard 1751 1980 1752 - "@babel/plugin-transform-destructuring@npm:^7.20.0": 1753 - version: 7.24.7 1754 - resolution: "@babel/plugin-transform-destructuring@npm:7.24.7" 1981 + "@babel/plugin-transform-destructuring@npm:^7.24.8": 1982 + version: 7.25.9 1983 + resolution: "@babel/plugin-transform-destructuring@npm:7.25.9" 1755 1984 dependencies: 1756 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1985 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1757 1986 peerDependencies: 1758 1987 "@babel/core": ^7.0.0-0 1759 - checksum: 10/eec43df24a07b3c61f335883e50c6642762fdd3cc5c5f95532cebeb51ea9bf77ca9a38011b678d91549dd75e29e1c58bd6e0ebc34bb763c300bc2cc65801e663 1988 + checksum: 10/51b24fbead910ad0547463b2d214dd08076b22a66234b9f878b8bac117603dd23e05090ff86e9ffc373214de23d3e5bf1b095fe54cce2ca16b010264d90cf4f5 1760 1989 languageName: node 1761 1990 linkType: hard 1762 1991 ··· 1772 2001 languageName: node 1773 2002 linkType: hard 1774 2003 1775 - "@babel/plugin-transform-flow-strip-types@npm:^7.20.0, @babel/plugin-transform-flow-strip-types@npm:^7.24.7": 2004 + "@babel/plugin-transform-flow-strip-types@npm:^7.24.7": 1776 2005 version: 7.24.7 1777 2006 resolution: "@babel/plugin-transform-flow-strip-types@npm:7.24.7" 1778 2007 dependencies: ··· 1784 2013 languageName: node 1785 2014 linkType: hard 1786 2015 1787 - "@babel/plugin-transform-flow-strip-types@npm:^7.25.9": 2016 + "@babel/plugin-transform-flow-strip-types@npm:^7.25.2, @babel/plugin-transform-flow-strip-types@npm:^7.25.9": 1788 2017 version: 7.25.9 1789 2018 resolution: "@babel/plugin-transform-flow-strip-types@npm:7.25.9" 1790 2019 dependencies: ··· 1796 2025 languageName: node 1797 2026 linkType: hard 1798 2027 1799 - "@babel/plugin-transform-function-name@npm:^7.0.0": 1800 - version: 7.24.7 1801 - resolution: "@babel/plugin-transform-function-name@npm:7.24.7" 2028 + "@babel/plugin-transform-for-of@npm:^7.24.7": 2029 + version: 7.25.9 2030 + resolution: "@babel/plugin-transform-for-of@npm:7.25.9" 2031 + dependencies: 2032 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2033 + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.25.9" 2034 + peerDependencies: 2035 + "@babel/core": ^7.0.0-0 2036 + checksum: 10/63a2db7fe06c2e3f5fc1926f478dac66a5f7b3eaeb4a0ffae577e6f3cb3d822cb1ed2ed3798f70f5cb1aa06bc2ad8bcd1f557342f5c425fd83c37a8fc1cfd2ba 2037 + languageName: node 2038 + linkType: hard 2039 + 2040 + "@babel/plugin-transform-function-name@npm:^7.25.1": 2041 + version: 7.25.9 2042 + resolution: "@babel/plugin-transform-function-name@npm:7.25.9" 1802 2043 dependencies: 1803 - "@babel/helper-compilation-targets": "npm:^7.24.7" 1804 - "@babel/helper-function-name": "npm:^7.24.7" 1805 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2044 + "@babel/helper-compilation-targets": "npm:^7.25.9" 2045 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2046 + "@babel/traverse": "npm:^7.25.9" 1806 2047 peerDependencies: 1807 2048 "@babel/core": ^7.0.0-0 1808 - checksum: 10/9d4dcffea45acd255fed4a97e372ada234579f9bae01a4d0ced657091f159edf1635ff2a666508a08f8e59390def09ae6ce8372679faad894aa6f3247728ebe1 2049 + checksum: 10/a8d7c8d019a6eb57eab5ca1be3e3236f175557d55b1f3b11f8ad7999e3fbb1cf37905fd8cb3a349bffb4163a558e9f33b63f631597fdc97c858757deac1b2fd7 1809 2050 languageName: node 1810 2051 linkType: hard 1811 2052 1812 - "@babel/plugin-transform-literals@npm:^7.0.0": 1813 - version: 7.24.7 1814 - resolution: "@babel/plugin-transform-literals@npm:7.24.7" 2053 + "@babel/plugin-transform-literals@npm:^7.25.2": 2054 + version: 7.25.9 2055 + resolution: "@babel/plugin-transform-literals@npm:7.25.9" 1815 2056 dependencies: 1816 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2057 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1817 2058 peerDependencies: 1818 2059 "@babel/core": ^7.0.0-0 1819 - checksum: 10/bf341a5a0ffb5129670ac9a14ea53b67bd1d3d0e13173ce7ac2d4184c4b405d33f67df68c59a2e94a895bf80269ec1df82c011d9ddb686f9f08a40c37b881177 2060 + checksum: 10/3cca75823a38aab599bc151b0fa4d816b5e1b62d6e49c156aa90436deb6e13649f5505973151a10418b64f3f9d1c3da53e38a186402e0ed7ad98e482e70c0c14 1820 2061 languageName: node 1821 2062 linkType: hard 1822 2063 1823 - "@babel/plugin-transform-modules-commonjs@npm:^7.0.0, @babel/plugin-transform-modules-commonjs@npm:^7.13.8, @babel/plugin-transform-modules-commonjs@npm:^7.24.7": 2064 + "@babel/plugin-transform-logical-assignment-operators@npm:^7.24.7": 2065 + version: 7.25.9 2066 + resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.25.9" 2067 + dependencies: 2068 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2069 + peerDependencies: 2070 + "@babel/core": ^7.0.0-0 2071 + checksum: 10/8c6febb4ac53852314d28b5e2c23d5dbbff7bf1e57d61f9672e0d97531ef7778b3f0ad698dcf1179f5486e626c77127508916a65eb846a89e98a92f70ed3537b 2072 + languageName: node 2073 + linkType: hard 2074 + 2075 + "@babel/plugin-transform-modules-commonjs@npm:^7.13.8, @babel/plugin-transform-modules-commonjs@npm:^7.24.7": 1824 2076 version: 7.24.7 1825 2077 resolution: "@babel/plugin-transform-modules-commonjs@npm:7.24.7" 1826 2078 dependencies: ··· 1833 2085 languageName: node 1834 2086 linkType: hard 1835 2087 1836 - "@babel/plugin-transform-named-capturing-groups-regex@npm:^7.0.0": 1837 - version: 7.24.7 1838 - resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.24.7" 2088 + "@babel/plugin-transform-modules-commonjs@npm:^7.24.8": 2089 + version: 7.25.9 2090 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.25.9" 2091 + dependencies: 2092 + "@babel/helper-module-transforms": "npm:^7.25.9" 2093 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2094 + "@babel/helper-simple-access": "npm:^7.25.9" 2095 + peerDependencies: 2096 + "@babel/core": ^7.0.0-0 2097 + checksum: 10/a7390ca999373ccdef91075f274d1ace3a5cb79f9b9118ed6f76e94867ed454cf798a6f312ce2c4cdc1e035a25d810d754e4cb2e4d866acb4219490f3585de60 2098 + languageName: node 2099 + linkType: hard 2100 + 2101 + "@babel/plugin-transform-named-capturing-groups-regex@npm:^7.24.7": 2102 + version: 7.25.9 2103 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.25.9" 1839 2104 dependencies: 1840 - "@babel/helper-create-regexp-features-plugin": "npm:^7.24.7" 1841 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2105 + "@babel/helper-create-regexp-features-plugin": "npm:^7.25.9" 2106 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1842 2107 peerDependencies: 1843 2108 "@babel/core": ^7.0.0 1844 - checksum: 10/b0ecb1afd22946b21fb8f34e826cfbfea4b5337f7592a5ff8af7937eddec4440149c59d2d134b4f21b2ed91b57611f39b19827729e19d99b7c11eaf614435f83 2109 + checksum: 10/434346ba05cf74e3f4704b3bdd439287b95cd2a8676afcdc607810b8c38b6f4798cd69c1419726b2e4c7204e62e4a04d31b0360e91ca57a930521c9211e07789 1845 2110 languageName: node 1846 2111 linkType: hard 1847 2112 ··· 1857 2122 languageName: node 1858 2123 linkType: hard 1859 2124 2125 + "@babel/plugin-transform-nullish-coalescing-operator@npm:^7.24.7": 2126 + version: 7.25.9 2127 + resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.25.9" 2128 + dependencies: 2129 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2130 + peerDependencies: 2131 + "@babel/core": ^7.0.0-0 2132 + checksum: 10/26e03b1c2c0408cc300e46d8f8cb639653ff3a7b03456d0d8afbb53c44f33a89323f51d99991dade3a5676921119bbdf869728bb7911799b5ef99ffafa2cdd24 2133 + languageName: node 2134 + linkType: hard 2135 + 2136 + "@babel/plugin-transform-numeric-separator@npm:^7.24.7": 2137 + version: 7.25.9 2138 + resolution: "@babel/plugin-transform-numeric-separator@npm:7.25.9" 2139 + dependencies: 2140 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2141 + peerDependencies: 2142 + "@babel/core": ^7.0.0-0 2143 + checksum: 10/0528ef041ed88e8c3f51624ee87b8182a7f246fe4013f0572788e0727d20795b558f2b82e3989b5dd416cbd339500f0d88857de41b6d3b6fdacb1d5344bcc5b1 2144 + languageName: node 2145 + linkType: hard 2146 + 1860 2147 "@babel/plugin-transform-object-rest-spread@npm:^7.12.13": 1861 2148 version: 7.24.7 1862 2149 resolution: "@babel/plugin-transform-object-rest-spread@npm:7.24.7" ··· 1868 2155 peerDependencies: 1869 2156 "@babel/core": ^7.0.0-0 1870 2157 checksum: 10/d586995dc3396bbf8fb75b84f0a3548d923e4c3500bb414641a7fe30762a4ffd82987887fece6381f600d8de2da1e3310fc9a725271724d35f9020fcd5d4b2a3 2158 + languageName: node 2159 + linkType: hard 2160 + 2161 + "@babel/plugin-transform-object-rest-spread@npm:^7.24.7": 2162 + version: 7.25.9 2163 + resolution: "@babel/plugin-transform-object-rest-spread@npm:7.25.9" 2164 + dependencies: 2165 + "@babel/helper-compilation-targets": "npm:^7.25.9" 2166 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2167 + "@babel/plugin-transform-parameters": "npm:^7.25.9" 2168 + peerDependencies: 2169 + "@babel/core": ^7.0.0-0 2170 + checksum: 10/a157ac5af2721090150858f301d9c0a3a0efb8ef66b90fce326d6cc0ae45ab97b6219b3e441bf8d72a2287e95eb04dd6c12544da88ea2345e70b3fac2c0ac9e2 2171 + languageName: node 2172 + linkType: hard 2173 + 2174 + "@babel/plugin-transform-optional-catch-binding@npm:^7.24.7": 2175 + version: 7.25.9 2176 + resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.25.9" 2177 + dependencies: 2178 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2179 + peerDependencies: 2180 + "@babel/core": ^7.0.0-0 2181 + checksum: 10/b46a8d1e91829f3db5c252583eb00d05a779b4660abeea5500fda0f8ffa3584fd18299443c22f7fddf0ed9dfdb73c782c43b445dc468d4f89803f2356963b406 1871 2182 languageName: node 1872 2183 linkType: hard 1873 2184 ··· 1884 2195 languageName: node 1885 2196 linkType: hard 1886 2197 1887 - "@babel/plugin-transform-parameters@npm:^7.0.0, @babel/plugin-transform-parameters@npm:^7.20.7, @babel/plugin-transform-parameters@npm:^7.22.15, @babel/plugin-transform-parameters@npm:^7.24.7": 1888 - version: 7.24.7 1889 - resolution: "@babel/plugin-transform-parameters@npm:7.24.7" 2198 + "@babel/plugin-transform-optional-chaining@npm:^7.24.8": 2199 + version: 7.25.9 2200 + resolution: "@babel/plugin-transform-optional-chaining@npm:7.25.9" 1890 2201 dependencies: 1891 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2202 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2203 + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.25.9" 1892 2204 peerDependencies: 1893 2205 "@babel/core": ^7.0.0-0 1894 - checksum: 10/41ff6bda926fabfb2e5d90b70621f279330691bed92009297340a8e776cfe9c3f2dda6afbc31dd3cbdccdfa9a5c57f2046e3ccc84f963c3797356df003d1703a 2206 + checksum: 10/bc838a499fd9892e163b8bc9bfbc4bf0b28cc3232ee0a6406ae078257c8096518f871d09b4a32c11f4a2d6953c3bc1984619ef748f7ad45aed0b0d9689a8eb36 1895 2207 languageName: node 1896 2208 linkType: hard 1897 2209 1898 - "@babel/plugin-transform-private-methods@npm:^7.22.5": 2210 + "@babel/plugin-transform-parameters@npm:^7.22.15, @babel/plugin-transform-parameters@npm:^7.24.7": 1899 2211 version: 7.24.7 1900 - resolution: "@babel/plugin-transform-private-methods@npm:7.24.7" 2212 + resolution: "@babel/plugin-transform-parameters@npm:7.24.7" 1901 2213 dependencies: 1902 - "@babel/helper-create-class-features-plugin": "npm:^7.24.7" 1903 2214 "@babel/helper-plugin-utils": "npm:^7.24.7" 1904 2215 peerDependencies: 1905 2216 "@babel/core": ^7.0.0-0 1906 - checksum: 10/5338df2aae53c43e6a7ea0c44f20a1100709778769c7e42d4901a61945c3200ba0e7fca83832f48932423a68528219fbea233cb5b8741a2501fdecbacdc08292 2217 + checksum: 10/41ff6bda926fabfb2e5d90b70621f279330691bed92009297340a8e776cfe9c3f2dda6afbc31dd3cbdccdfa9a5c57f2046e3ccc84f963c3797356df003d1703a 1907 2218 languageName: node 1908 2219 linkType: hard 1909 2220 1910 - "@babel/plugin-transform-private-methods@npm:^7.25.9": 2221 + "@babel/plugin-transform-parameters@npm:^7.25.9": 1911 2222 version: 7.25.9 1912 - resolution: "@babel/plugin-transform-private-methods@npm:7.25.9" 2223 + resolution: "@babel/plugin-transform-parameters@npm:7.25.9" 1913 2224 dependencies: 1914 - "@babel/helper-create-class-features-plugin": "npm:^7.25.9" 1915 2225 "@babel/helper-plugin-utils": "npm:^7.25.9" 1916 2226 peerDependencies: 1917 2227 "@babel/core": ^7.0.0-0 1918 - checksum: 10/6e3671b352c267847c53a170a1937210fa8151764d70d25005e711ef9b21969aaf422acc14f9f7fb86bc0e4ec43e7aefcc0ad9196ae02d262ec10f509f126a58 2228 + checksum: 10/014009a1763deb41fe9f0dbca2c4489ce0ac83dd87395f488492e8eb52399f6c883d5bd591bae3b8836f2460c3937fcebd07e57dce1e0bfe30cdbc63fdfc9d3a 1919 2229 languageName: node 1920 2230 linkType: hard 1921 2231 1922 - "@babel/plugin-transform-private-property-in-object@npm:^7.22.11": 1923 - version: 7.24.7 1924 - resolution: "@babel/plugin-transform-private-property-in-object@npm:7.24.7" 2232 + "@babel/plugin-transform-private-methods@npm:^7.24.7, @babel/plugin-transform-private-methods@npm:^7.25.9": 2233 + version: 7.25.9 2234 + resolution: "@babel/plugin-transform-private-methods@npm:7.25.9" 1925 2235 dependencies: 1926 - "@babel/helper-annotate-as-pure": "npm:^7.24.7" 1927 - "@babel/helper-create-class-features-plugin": "npm:^7.24.7" 1928 - "@babel/helper-plugin-utils": "npm:^7.24.7" 1929 - "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" 2236 + "@babel/helper-create-class-features-plugin": "npm:^7.25.9" 2237 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1930 2238 peerDependencies: 1931 2239 "@babel/core": ^7.0.0-0 1932 - checksum: 10/a23ee18340818e292abfcb98b1086a188c81d640b1045e6809e9a3e8add78f9cb26607774de4ed653cbecd4277965dc4f4f1affc3504682209bb2a65fd4251f8 2240 + checksum: 10/6e3671b352c267847c53a170a1937210fa8151764d70d25005e711ef9b21969aaf422acc14f9f7fb86bc0e4ec43e7aefcc0ad9196ae02d262ec10f509f126a58 1933 2241 languageName: node 1934 2242 linkType: hard 1935 2243 1936 - "@babel/plugin-transform-private-property-in-object@npm:^7.25.9": 2244 + "@babel/plugin-transform-private-property-in-object@npm:^7.24.7, @babel/plugin-transform-private-property-in-object@npm:^7.25.9": 1937 2245 version: 7.25.9 1938 2246 resolution: "@babel/plugin-transform-private-property-in-object@npm:7.25.9" 1939 2247 dependencies: ··· 1946 2254 languageName: node 1947 2255 linkType: hard 1948 2256 1949 - "@babel/plugin-transform-react-display-name@npm:^7.0.0, @babel/plugin-transform-react-display-name@npm:^7.24.7": 2257 + "@babel/plugin-transform-react-display-name@npm:^7.24.7": 1950 2258 version: 7.24.7 1951 2259 resolution: "@babel/plugin-transform-react-display-name@npm:7.24.7" 1952 2260 dependencies: ··· 1968 2276 languageName: node 1969 2277 linkType: hard 1970 2278 1971 - "@babel/plugin-transform-react-jsx-self@npm:^7.0.0": 1972 - version: 7.24.7 1973 - resolution: "@babel/plugin-transform-react-jsx-self@npm:7.24.7" 2279 + "@babel/plugin-transform-react-jsx-self@npm:^7.24.7": 2280 + version: 7.25.9 2281 + resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" 1974 2282 dependencies: 1975 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2283 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1976 2284 peerDependencies: 1977 2285 "@babel/core": ^7.0.0-0 1978 - checksum: 10/56115b4a6c006ce82846f1ab21e5ba713ee8f57a166c96c94fc632cdfbc8b9cebbf20b7cd9b8076439dabecdbf0f8ca4c2cb1bed1bf0b15cb44505a429f6a92f 2286 + checksum: 10/41c833cd7f91b1432710f91b1325706e57979b2e8da44e83d86312c78bbe96cd9ef778b4e79e4e17ab25fa32c72b909f2be7f28e876779ede28e27506c41f4ae 1979 2287 languageName: node 1980 2288 linkType: hard 1981 2289 1982 - "@babel/plugin-transform-react-jsx-source@npm:^7.0.0": 1983 - version: 7.24.7 1984 - resolution: "@babel/plugin-transform-react-jsx-source@npm:7.24.7" 2290 + "@babel/plugin-transform-react-jsx-source@npm:^7.24.7": 2291 + version: 7.25.9 2292 + resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" 1985 2293 dependencies: 1986 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2294 + "@babel/helper-plugin-utils": "npm:^7.25.9" 1987 2295 peerDependencies: 1988 2296 "@babel/core": ^7.0.0-0 1989 - checksum: 10/682e2ae15d788453d8ab34cf0dcc29c093faf7c7cf1d60110c43f33e6477f916cf301456b314fc496fadc07123f7978225f41ac286ed0bfbad9c8e76392fdb6d 2297 + checksum: 10/a3e0e5672e344e9d01fb20b504fe29a84918eaa70cec512c4d4b1b035f72803261257343d8e93673365b72c371f35cf34bb0d129720bf178a4c87812c8b9c662 1990 2298 languageName: node 1991 2299 linkType: hard 1992 2300 1993 - "@babel/plugin-transform-react-jsx@npm:^7.0.0, @babel/plugin-transform-react-jsx@npm:^7.24.7": 2301 + "@babel/plugin-transform-react-jsx@npm:^7.24.7": 1994 2302 version: 7.24.7 1995 2303 resolution: "@babel/plugin-transform-react-jsx@npm:7.24.7" 1996 2304 dependencies: ··· 2032 2340 languageName: node 2033 2341 linkType: hard 2034 2342 2035 - "@babel/plugin-transform-runtime@npm:^7.0.0": 2036 - version: 7.24.7 2037 - resolution: "@babel/plugin-transform-runtime@npm:7.24.7" 2343 + "@babel/plugin-transform-regenerator@npm:^7.24.7": 2344 + version: 7.25.9 2345 + resolution: "@babel/plugin-transform-regenerator@npm:7.25.9" 2038 2346 dependencies: 2039 - "@babel/helper-module-imports": "npm:^7.24.7" 2040 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2041 - babel-plugin-polyfill-corejs2: "npm:^0.4.10" 2042 - babel-plugin-polyfill-corejs3: "npm:^0.10.1" 2043 - babel-plugin-polyfill-regenerator: "npm:^0.6.1" 2044 - semver: "npm:^6.3.1" 2347 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2348 + regenerator-transform: "npm:^0.15.2" 2045 2349 peerDependencies: 2046 2350 "@babel/core": ^7.0.0-0 2047 - checksum: 10/6f82f2104394d6efef3ba5b38474018f1072d524087eb223776dd55cf8ec8885e813a73004c95218f37de7c0dbaa1a136d2e359cee8cf9ffb3f2e130a3aeb99a 2351 + checksum: 10/1c09e8087b476c5967282c9790fb8710e065eda77c60f6cb5da541edd59ded9d003d96f8ef640928faab4a0b35bf997673499a194973da4f0c97f0935807a482 2048 2352 languageName: node 2049 2353 linkType: hard 2050 2354 2051 - "@babel/plugin-transform-runtime@npm:^7.25.9": 2355 + "@babel/plugin-transform-runtime@npm:^7.24.7, @babel/plugin-transform-runtime@npm:^7.25.9": 2052 2356 version: 7.25.9 2053 2357 resolution: "@babel/plugin-transform-runtime@npm:7.25.9" 2054 2358 dependencies: ··· 2064 2368 languageName: node 2065 2369 linkType: hard 2066 2370 2067 - "@babel/plugin-transform-shorthand-properties@npm:^7.0.0, @babel/plugin-transform-shorthand-properties@npm:^7.0.0-0": 2371 + "@babel/plugin-transform-shorthand-properties@npm:^7.0.0-0": 2068 2372 version: 7.24.7 2069 2373 resolution: "@babel/plugin-transform-shorthand-properties@npm:7.24.7" 2070 2374 dependencies: ··· 2075 2379 languageName: node 2076 2380 linkType: hard 2077 2381 2078 - "@babel/plugin-transform-spread@npm:^7.0.0": 2079 - version: 7.24.7 2080 - resolution: "@babel/plugin-transform-spread@npm:7.24.7" 2382 + "@babel/plugin-transform-shorthand-properties@npm:^7.24.7": 2383 + version: 7.25.9 2384 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.25.9" 2081 2385 dependencies: 2082 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2083 - "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" 2386 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2084 2387 peerDependencies: 2085 2388 "@babel/core": ^7.0.0-0 2086 - checksum: 10/76e2c8544129d727d5a698e2a67d74e438bc35df843adb5f769316ec432c5e1bbb4128123a95b2fe8ef0aec7b26d87efe81d64326291c77ad757ff184d38448a 2389 + checksum: 10/f774995d58d4e3a992b732cf3a9b8823552d471040e280264dd15e0735433d51b468fef04d75853d061309389c66bda10ce1b298297ce83999220eb0ad62741d 2087 2390 languageName: node 2088 2391 linkType: hard 2089 2392 2090 - "@babel/plugin-transform-sticky-regex@npm:^7.0.0": 2091 - version: 7.24.7 2092 - resolution: "@babel/plugin-transform-sticky-regex@npm:7.24.7" 2393 + "@babel/plugin-transform-spread@npm:^7.24.7": 2394 + version: 7.25.9 2395 + resolution: "@babel/plugin-transform-spread@npm:7.25.9" 2396 + dependencies: 2397 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2398 + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.25.9" 2399 + peerDependencies: 2400 + "@babel/core": ^7.0.0-0 2401 + checksum: 10/fe72c6545267176cdc9b6f32f30f9ced37c1cafa1290e4436b83b8f377b4f1c175dad404228c96e3efdec75da692f15bfb9db2108fcd9ad260bc9968778ee41e 2402 + languageName: node 2403 + linkType: hard 2404 + 2405 + "@babel/plugin-transform-sticky-regex@npm:^7.24.7": 2406 + version: 7.25.9 2407 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.25.9" 2093 2408 dependencies: 2094 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2409 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2095 2410 peerDependencies: 2096 2411 "@babel/core": ^7.0.0-0 2097 - checksum: 10/3b9a99ae043ef363c81bfb097fa7a553fcf7c7d9fddc13dd2b47b3b2e45cf2741a9ca78cfe55f463983b043b365f0f8452f2d5eaadbdea20e6d6de50c16bed25 2412 + checksum: 10/7454b00844dbe924030dd15e2b3615b36e196500c4c47e98dabc6b37a054c5b1038ecd437e910aabf0e43bf56b973cb148d3437d50f6e2332d8309568e3e979b 2098 2413 languageName: node 2099 2414 linkType: hard 2100 2415 ··· 2109 2424 languageName: node 2110 2425 linkType: hard 2111 2426 2112 - "@babel/plugin-transform-typescript@npm:^7.24.7, @babel/plugin-transform-typescript@npm:^7.5.0": 2427 + "@babel/plugin-transform-typescript@npm:^7.24.7": 2113 2428 version: 7.24.7 2114 2429 resolution: "@babel/plugin-transform-typescript@npm:7.24.7" 2115 2430 dependencies: ··· 2123 2438 languageName: node 2124 2439 linkType: hard 2125 2440 2126 - "@babel/plugin-transform-unicode-regex@npm:^7.0.0": 2127 - version: 7.24.7 2128 - resolution: "@babel/plugin-transform-unicode-regex@npm:7.24.7" 2441 + "@babel/plugin-transform-typescript@npm:^7.25.2": 2442 + version: 7.25.9 2443 + resolution: "@babel/plugin-transform-typescript@npm:7.25.9" 2129 2444 dependencies: 2130 - "@babel/helper-create-regexp-features-plugin": "npm:^7.24.7" 2131 - "@babel/helper-plugin-utils": "npm:^7.24.7" 2445 + "@babel/helper-annotate-as-pure": "npm:^7.25.9" 2446 + "@babel/helper-create-class-features-plugin": "npm:^7.25.9" 2447 + "@babel/helper-plugin-utils": "npm:^7.25.9" 2448 + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.25.9" 2449 + "@babel/plugin-syntax-typescript": "npm:^7.25.9" 2132 2450 peerDependencies: 2133 2451 "@babel/core": ^7.0.0-0 2134 - checksum: 10/b545310d0d592d75566b9cd158f4b8951e34d07d839656789d179b39b3fd92b32bd387cdfaf33a93e636609f3bfb9bb03d41f3e43be598116c9c6c80cc3418c4 2452 + checksum: 10/91e2ec805f89a813e0bf9cf42dffb767f798429e983af3e2f919885a2826b10f29223dd8b40ccc569eb61858d3273620e82e14431603a893e4a7f9b4c1a3a3cf 2135 2453 languageName: node 2136 2454 linkType: hard 2137 2455 2138 - "@babel/plugin-transform-unicode-regex@npm:^7.0.0-0": 2456 + "@babel/plugin-transform-unicode-regex@npm:^7.0.0-0, @babel/plugin-transform-unicode-regex@npm:^7.24.7": 2139 2457 version: 7.25.9 2140 2458 resolution: "@babel/plugin-transform-unicode-regex@npm:7.25.9" 2141 2459 dependencies: ··· 2206 2524 languageName: node 2207 2525 linkType: hard 2208 2526 2209 - "@babel/regjsgen@npm:^0.8.0": 2210 - version: 0.8.0 2211 - resolution: "@babel/regjsgen@npm:0.8.0" 2212 - checksum: 10/c57fb730b17332b7572574b74364a77d70faa302a281a62819476fa3b09822974fd75af77aea603ad77378395be64e81f89f0e800bf86cbbf21652d49ce12ee8 2213 - languageName: node 2214 - linkType: hard 2215 - 2216 2527 "@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.20.0, @babel/runtime@npm:^7.23.2": 2217 2528 version: 7.24.7 2218 2529 resolution: "@babel/runtime@npm:7.24.7" ··· 2231 2542 languageName: node 2232 2543 linkType: hard 2233 2544 2234 - "@babel/runtime@npm:^7.25.4": 2545 + "@babel/runtime@npm:^7.25.0, @babel/runtime@npm:^7.25.4, @babel/runtime@npm:^7.8.4": 2235 2546 version: 7.26.0 2236 2547 resolution: "@babel/runtime@npm:7.26.0" 2237 2548 dependencies: ··· 2251 2562 languageName: node 2252 2563 linkType: hard 2253 2564 2254 - "@babel/template@npm:^7.25.0, @babel/template@npm:^7.25.9": 2565 + "@babel/template@npm:^7.25.0, @babel/template@npm:^7.25.9, @babel/template@npm:^7.3.3": 2255 2566 version: 7.25.9 2256 2567 resolution: "@babel/template@npm:7.25.9" 2257 2568 dependencies: ··· 2262 2573 languageName: node 2263 2574 linkType: hard 2264 2575 2576 + "@babel/traverse--for-generate-function-map@npm:@babel/traverse@^7.25.3, @babel/traverse@npm:^7.25.3, @babel/traverse@npm:^7.25.4, @babel/traverse@npm:^7.25.9": 2577 + version: 7.25.9 2578 + resolution: "@babel/traverse@npm:7.25.9" 2579 + dependencies: 2580 + "@babel/code-frame": "npm:^7.25.9" 2581 + "@babel/generator": "npm:^7.25.9" 2582 + "@babel/parser": "npm:^7.25.9" 2583 + "@babel/template": "npm:^7.25.9" 2584 + "@babel/types": "npm:^7.25.9" 2585 + debug: "npm:^4.3.1" 2586 + globals: "npm:^11.1.0" 2587 + checksum: 10/7431614d76d4a053e429208db82f2846a415833f3d9eb2e11ef72eeb3c64dfd71f4a4d983de1a4a047b36165a1f5a64de8ca2a417534cc472005c740ffcb9c6a 2588 + languageName: node 2589 + linkType: hard 2590 + 2265 2591 "@babel/traverse@npm:^7.1.6, @babel/traverse@npm:^7.20.0, @babel/traverse@npm:^7.23.0, @babel/traverse@npm:^7.24.7": 2266 2592 version: 7.24.7 2267 2593 resolution: "@babel/traverse@npm:7.24.7" ··· 2280 2606 languageName: node 2281 2607 linkType: hard 2282 2608 2283 - "@babel/traverse@npm:^7.25.4, @babel/traverse@npm:^7.25.9": 2284 - version: 7.25.9 2285 - resolution: "@babel/traverse@npm:7.25.9" 2609 + "@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.2, @babel/types@npm:^7.25.4, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0, @babel/types@npm:^7.3.3": 2610 + version: 7.26.0 2611 + resolution: "@babel/types@npm:7.26.0" 2286 2612 dependencies: 2287 - "@babel/code-frame": "npm:^7.25.9" 2288 - "@babel/generator": "npm:^7.25.9" 2289 - "@babel/parser": "npm:^7.25.9" 2290 - "@babel/template": "npm:^7.25.9" 2291 - "@babel/types": "npm:^7.25.9" 2292 - debug: "npm:^4.3.1" 2293 - globals: "npm:^11.1.0" 2294 - checksum: 10/7431614d76d4a053e429208db82f2846a415833f3d9eb2e11ef72eeb3c64dfd71f4a4d983de1a4a047b36165a1f5a64de8ca2a417534cc472005c740ffcb9c6a 2613 + "@babel/helper-string-parser": "npm:^7.25.9" 2614 + "@babel/helper-validator-identifier": "npm:^7.25.9" 2615 + checksum: 10/40780741ecec886ed9edae234b5eb4976968cc70d72b4e5a40d55f83ff2cc457de20f9b0f4fe9d858350e43dab0ea496e7ef62e2b2f08df699481a76df02cd6e 2295 2616 languageName: node 2296 2617 linkType: hard 2297 2618 ··· 2306 2627 languageName: node 2307 2628 linkType: hard 2308 2629 2309 - "@babel/types@npm:^7.19.0, @babel/types@npm:^7.2.0, @babel/types@npm:^7.25.4, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0": 2310 - version: 7.26.0 2311 - resolution: "@babel/types@npm:7.26.0" 2312 - dependencies: 2313 - "@babel/helper-string-parser": "npm:^7.25.9" 2314 - "@babel/helper-validator-identifier": "npm:^7.25.9" 2315 - checksum: 10/40780741ecec886ed9edae234b5eb4976968cc70d72b4e5a40d55f83ff2cc457de20f9b0f4fe9d858350e43dab0ea496e7ef62e2b2f08df699481a76df02cd6e 2630 + "@bacons/text-decoder@npm:^0.0.0": 2631 + version: 0.0.0 2632 + resolution: "@bacons/text-decoder@npm:0.0.0" 2633 + peerDependencies: 2634 + react-native: "*" 2635 + checksum: 10/a6db0f2d8777c7091bf0ab50bfaabba347c75cf3da76bf8cb738607773d784b6130f012fd34d4925f5a1e107a516e86469011e4786972d060c6f2376c48abdb6 2316 2636 languageName: node 2317 2637 linkType: hard 2318 2638 ··· 3281 3601 languageName: node 3282 3602 linkType: hard 3283 3603 3284 - "@expo/cli@npm:0.18.30": 3285 - version: 0.18.30 3286 - resolution: "@expo/cli@npm:0.18.30" 3604 + "@expo/cli@npm:0.21.6": 3605 + version: 0.21.6 3606 + resolution: "@expo/cli@npm:0.21.6" 3287 3607 dependencies: 3608 + "@0no-co/graphql.web": "npm:^1.0.8" 3288 3609 "@babel/runtime": "npm:^7.20.0" 3289 - "@expo/code-signing-certificates": "npm:0.0.5" 3290 - "@expo/config": "npm:~9.0.0-beta.0" 3291 - "@expo/config-plugins": "npm:~8.0.8" 3292 - "@expo/devcert": "npm:^1.0.0" 3293 - "@expo/env": "npm:~0.3.0" 3294 - "@expo/image-utils": "npm:^0.5.0" 3295 - "@expo/json-file": "npm:^8.3.0" 3296 - "@expo/metro-config": "npm:0.18.11" 3610 + "@expo/code-signing-certificates": "npm:^0.0.5" 3611 + "@expo/config": "npm:~10.0.4" 3612 + "@expo/config-plugins": "npm:~9.0.3" 3613 + "@expo/devcert": "npm:^1.1.2" 3614 + "@expo/env": "npm:~0.4.0" 3615 + "@expo/image-utils": "npm:^0.6.0" 3616 + "@expo/json-file": "npm:^9.0.0" 3617 + "@expo/metro-config": "npm:~0.19.0" 3297 3618 "@expo/osascript": "npm:^2.0.31" 3298 3619 "@expo/package-manager": "npm:^1.5.0" 3299 - "@expo/plist": "npm:^0.1.0" 3300 - "@expo/prebuild-config": "npm:7.0.9" 3301 - "@expo/rudder-sdk-node": "npm:1.1.1" 3620 + "@expo/plist": "npm:^0.2.0" 3621 + "@expo/prebuild-config": "npm:^8.0.16" 3622 + "@expo/rudder-sdk-node": "npm:^1.1.1" 3302 3623 "@expo/spawn-async": "npm:^1.7.2" 3303 3624 "@expo/xcpretty": "npm:^4.3.0" 3304 - "@react-native/dev-middleware": "npm:0.74.85" 3305 - "@urql/core": "npm:2.3.6" 3306 - "@urql/exchange-retry": "npm:0.3.0" 3625 + "@react-native/dev-middleware": "npm:0.76.2" 3626 + "@urql/core": "npm:^5.0.6" 3627 + "@urql/exchange-retry": "npm:^1.3.0" 3307 3628 accepts: "npm:^1.3.8" 3308 - arg: "npm:5.0.2" 3629 + arg: "npm:^5.0.2" 3309 3630 better-opn: "npm:~3.0.2" 3310 3631 bplist-creator: "npm:0.0.7" 3311 3632 bplist-parser: "npm:^0.3.1" 3312 3633 cacache: "npm:^18.0.2" 3313 3634 chalk: "npm:^4.0.0" 3314 3635 ci-info: "npm:^3.3.0" 3636 + compression: "npm:^1.7.4" 3315 3637 connect: "npm:^3.7.0" 3316 3638 debug: "npm:^4.3.4" 3317 3639 env-editor: "npm:^0.4.1" 3318 3640 fast-glob: "npm:^3.3.2" 3319 - find-yarn-workspace-root: "npm:~2.0.0" 3320 3641 form-data: "npm:^3.0.1" 3321 - freeport-async: "npm:2.0.0" 3642 + freeport-async: "npm:^2.0.0" 3322 3643 fs-extra: "npm:~8.1.0" 3323 3644 getenv: "npm:^1.0.0" 3324 - glob: "npm:^7.1.7" 3325 - graphql: "npm:15.8.0" 3326 - graphql-tag: "npm:^2.10.1" 3327 - https-proxy-agent: "npm:^5.0.1" 3328 - internal-ip: "npm:4.3.0" 3645 + glob: "npm:^10.4.2" 3646 + internal-ip: "npm:^4.3.0" 3329 3647 is-docker: "npm:^2.0.0" 3330 3648 is-wsl: "npm:^2.1.1" 3331 - js-yaml: "npm:^3.13.1" 3332 - json-schema-deref-sync: "npm:^0.13.0" 3333 3649 lodash.debounce: "npm:^4.0.8" 3334 - md5hex: "npm:^1.0.0" 3335 3650 minimatch: "npm:^3.0.4" 3336 - node-fetch: "npm:^2.6.7" 3337 3651 node-forge: "npm:^1.3.1" 3338 - npm-package-arg: "npm:^7.0.0" 3339 - open: "npm:^8.3.0" 3340 - ora: "npm:3.4.0" 3652 + npm-package-arg: "npm:^11.0.0" 3653 + ora: "npm:^3.4.0" 3341 3654 picomatch: "npm:^3.0.1" 3342 - pretty-bytes: "npm:5.6.0" 3343 - progress: "npm:2.0.3" 3655 + pretty-bytes: "npm:^5.6.0" 3656 + pretty-format: "npm:^29.7.0" 3657 + progress: "npm:^2.0.3" 3344 3658 prompts: "npm:^2.3.2" 3345 3659 qrcode-terminal: "npm:0.11.0" 3346 3660 require-from-string: "npm:^2.0.2" ··· 3349 3663 resolve-from: "npm:^5.0.0" 3350 3664 resolve.exports: "npm:^2.0.2" 3351 3665 semver: "npm:^7.6.0" 3352 - send: "npm:^0.18.0" 3666 + send: "npm:^0.19.0" 3353 3667 slugify: "npm:^1.3.4" 3354 3668 source-map-support: "npm:~0.5.21" 3355 3669 stacktrace-parser: "npm:^0.1.10" 3356 3670 structured-headers: "npm:^0.4.1" 3357 - tar: "npm:^6.0.5" 3671 + tar: "npm:^6.2.1" 3358 3672 temp-dir: "npm:^2.0.0" 3359 3673 tempy: "npm:^0.7.1" 3360 3674 terminal-link: "npm:^2.1.1" 3361 - text-table: "npm:^0.2.0" 3362 - url-join: "npm:4.0.0" 3675 + undici: "npm:^6.18.2" 3676 + unique-string: "npm:~2.0.0" 3363 3677 wrap-ansi: "npm:^7.0.0" 3364 3678 ws: "npm:^8.12.1" 3365 3679 bin: 3366 3680 expo-internal: build/bin/cli 3367 - checksum: 10/649779a7eec204f2c3023b1ac13cec4e2568555168899f315a249685325eef97418614ebde8c28817314ef469760bc4a73f720b79e9eca452468dbf077c7d592 3681 + checksum: 10/4d3a332905a05d7fb8b05a218f027cde26b247e4a29d1dbd14fad60e491f680b30b73fbe3f695d8a14c6d04dc2f619d27e097ce4aaff0abf35fe2fb51190fd08 3368 3682 languageName: node 3369 3683 linkType: hard 3370 3684 3371 - "@expo/code-signing-certificates@npm:0.0.5": 3685 + "@expo/code-signing-certificates@npm:0.0.5, @expo/code-signing-certificates@npm:^0.0.5": 3372 3686 version: 0.0.5 3373 3687 resolution: "@expo/code-signing-certificates@npm:0.0.5" 3374 3688 dependencies: ··· 3378 3692 languageName: node 3379 3693 linkType: hard 3380 3694 3381 - "@expo/config-plugins@npm:8.0.10": 3382 - version: 8.0.10 3383 - resolution: "@expo/config-plugins@npm:8.0.10" 3384 - dependencies: 3385 - "@expo/config-types": "npm:^51.0.3" 3386 - "@expo/json-file": "npm:~8.3.0" 3387 - "@expo/plist": "npm:^0.1.0" 3388 - "@expo/sdk-runtime-versions": "npm:^1.0.0" 3389 - chalk: "npm:^4.1.2" 3390 - debug: "npm:^4.3.1" 3391 - find-up: "npm:~5.0.0" 3392 - getenv: "npm:^1.0.0" 3393 - glob: "npm:7.1.6" 3394 - resolve-from: "npm:^5.0.0" 3395 - semver: "npm:^7.5.4" 3396 - slash: "npm:^3.0.0" 3397 - slugify: "npm:^1.6.6" 3398 - xcode: "npm:^3.0.1" 3399 - xml2js: "npm:0.6.0" 3400 - checksum: 10/3e0d90a730cee0e02c5f7576e8c5a2997a11d21af1d90cada94ccefbc5bbe144785830f345252a9388e307fee9dcd17d6b6e2d7244e4de5771ce142d6548ec51 3401 - languageName: node 3402 - linkType: hard 3403 - 3404 - "@expo/config-plugins@npm:~8.0.0": 3405 - version: 8.0.7 3406 - resolution: "@expo/config-plugins@npm:8.0.7" 3407 - dependencies: 3408 - "@expo/config-types": "npm:^51.0.0-unreleased" 3409 - "@expo/json-file": "npm:~8.3.0" 3410 - "@expo/plist": "npm:^0.1.0" 3411 - "@expo/sdk-runtime-versions": "npm:^1.0.0" 3412 - chalk: "npm:^4.1.2" 3413 - debug: "npm:^4.3.1" 3414 - find-up: "npm:~5.0.0" 3415 - getenv: "npm:^1.0.0" 3416 - glob: "npm:7.1.6" 3417 - resolve-from: "npm:^5.0.0" 3418 - semver: "npm:^7.5.4" 3419 - slash: "npm:^3.0.0" 3420 - slugify: "npm:^1.6.6" 3421 - xcode: "npm:^3.0.1" 3422 - xml2js: "npm:0.6.0" 3423 - checksum: 10/fd0668640b61bc5037f1ea0313824999abccaa6c7a5d38fac19c2f05548e5e5265f9b5d55d56691b403c22cf2d980850eb08d40acb7493c6a005bfc516b06f36 3424 - languageName: node 3425 - linkType: hard 3426 - 3427 - "@expo/config-plugins@npm:~8.0.8": 3428 - version: 8.0.8 3429 - resolution: "@expo/config-plugins@npm:8.0.8" 3695 + "@expo/config-plugins@npm:9.0.9, @expo/config-plugins@npm:~9.0.0, @expo/config-plugins@npm:~9.0.3": 3696 + version: 9.0.9 3697 + resolution: "@expo/config-plugins@npm:9.0.9" 3430 3698 dependencies: 3431 - "@expo/config-types": "npm:^51.0.0-unreleased" 3432 - "@expo/json-file": "npm:~8.3.0" 3433 - "@expo/plist": "npm:^0.1.0" 3699 + "@expo/config-types": "npm:^52.0.0" 3700 + "@expo/json-file": "npm:~9.0.0" 3701 + "@expo/plist": "npm:^0.2.0" 3434 3702 "@expo/sdk-runtime-versions": "npm:^1.0.0" 3435 3703 chalk: "npm:^4.1.2" 3436 - debug: "npm:^4.3.1" 3437 - find-up: "npm:~5.0.0" 3704 + debug: "npm:^4.3.5" 3438 3705 getenv: "npm:^1.0.0" 3439 - glob: "npm:7.1.6" 3706 + glob: "npm:^10.4.2" 3440 3707 resolve-from: "npm:^5.0.0" 3441 3708 semver: "npm:^7.5.4" 3442 3709 slash: "npm:^3.0.0" 3443 3710 slugify: "npm:^1.6.6" 3444 3711 xcode: "npm:^3.0.1" 3445 3712 xml2js: "npm:0.6.0" 3446 - checksum: 10/669fad7a0591c84e8f9e10e4cf31bd4101a5e83ef46ff1be29cc32950c82b986d12d3236a21298b79b87ba692f4a7aa3068c0f27033d0abb28f8ace9b38b4f51 3447 - languageName: node 3448 - linkType: hard 3449 - 3450 - "@expo/config-types@npm:^51.0.0-unreleased": 3451 - version: 51.0.2 3452 - resolution: "@expo/config-types@npm:51.0.2" 3453 - checksum: 10/6450c8bbcfba8cf9f93c6c681a59a728cc6e7ac795654a7ae41f8be3c515ba798f0f3eef06e8963b98d65bece39ad5a13deff1b12c3d5184ed988dbff08dc338 3713 + checksum: 10/e0f5cec54999e6cd46f435d0996c294072716ce7efe553679fec4fcbf63d65f151e37fd50ff9f459c5db4edda095d25dcaa12cc6872aa45ada5a9128c34ee31d 3454 3714 languageName: node 3455 3715 linkType: hard 3456 3716 3457 - "@expo/config-types@npm:^51.0.3": 3458 - version: 51.0.3 3459 - resolution: "@expo/config-types@npm:51.0.3" 3460 - checksum: 10/6ef412823d810c6f715f399d704e59af3024ccc5224675d963abe05b84b38fce6f1c4cdaa3d6418764a8564c9936f36ef90110f495f25f46a196638860749b3a 3717 + "@expo/config-types@npm:^52.0.0": 3718 + version: 52.0.1 3719 + resolution: "@expo/config-types@npm:52.0.1" 3720 + checksum: 10/9c35fc88dfa9075c6f5584f3887a85646a81439e4b9bdddc64a1f055e7fcd42908b0b33054a1fb407fd525dcb9ed8b786c1b2b403196d6ca5ce9a51e76379e8b 3461 3721 languageName: node 3462 3722 linkType: hard 3463 3723 3464 - "@expo/config@npm:9.0.4": 3465 - version: 9.0.4 3466 - resolution: "@expo/config@npm:9.0.4" 3724 + "@expo/config@npm:~10.0.4": 3725 + version: 10.0.4 3726 + resolution: "@expo/config@npm:10.0.4" 3467 3727 dependencies: 3468 3728 "@babel/code-frame": "npm:~7.10.4" 3469 - "@expo/config-plugins": "npm:~8.0.8" 3470 - "@expo/config-types": "npm:^51.0.3" 3471 - "@expo/json-file": "npm:^8.3.0" 3729 + "@expo/config-plugins": "npm:~9.0.0" 3730 + "@expo/config-types": "npm:^52.0.0" 3731 + "@expo/json-file": "npm:^9.0.0" 3732 + deepmerge: "npm:^4.3.1" 3472 3733 getenv: "npm:^1.0.0" 3473 - glob: "npm:7.1.6" 3474 - require-from-string: "npm:^2.0.2" 3475 - resolve-from: "npm:^5.0.0" 3476 - semver: "npm:^7.6.0" 3477 - slugify: "npm:^1.3.4" 3478 - sucrase: "npm:3.34.0" 3479 - checksum: 10/a2fb6f06eede3b773bf2e43d444a9beeec4645844ab85b609f739c5a115b77fd37d0a1572f52a1a8340a9c4a311c5567961a0deaaada2b829099a2206038cbb7 3480 - languageName: node 3481 - linkType: hard 3482 - 3483 - "@expo/config@npm:~9.0.0, @expo/config@npm:~9.0.0-beta.0": 3484 - version: 9.0.2 3485 - resolution: "@expo/config@npm:9.0.2" 3486 - dependencies: 3487 - "@babel/code-frame": "npm:~7.10.4" 3488 - "@expo/config-plugins": "npm:~8.0.0" 3489 - "@expo/config-types": "npm:^51.0.0-unreleased" 3490 - "@expo/json-file": "npm:^8.3.0" 3491 - getenv: "npm:^1.0.0" 3492 - glob: "npm:7.1.6" 3734 + glob: "npm:^10.4.2" 3493 3735 require-from-string: "npm:^2.0.2" 3494 3736 resolve-from: "npm:^5.0.0" 3737 + resolve-workspace-root: "npm:^2.0.0" 3495 3738 semver: "npm:^7.6.0" 3496 3739 slugify: "npm:^1.3.4" 3497 - sucrase: "npm:3.34.0" 3498 - checksum: 10/a629b46429c7dafae3e3ae81eee685123c4395c1b8dfcd8dc67f8cc097619ba2c528e33d4c2f8d4b6924f158c0d265412993dbe99cedec10112bf474f8ee319e 3740 + sucrase: "npm:3.35.0" 3741 + checksum: 10/433578b50dc314e952c090378c539d843cd14ea2490bbbcc9b6169ca00612d652709f2f0776aae5c4e2df04586920e99f798cc090073b4466d4e7b07eaeacf19 3499 3742 languageName: node 3500 3743 linkType: hard 3501 3744 3502 - "@expo/devcert@npm:^1.0.0": 3503 - version: 1.1.2 3504 - resolution: "@expo/devcert@npm:1.1.2" 3745 + "@expo/devcert@npm:^1.1.2": 3746 + version: 1.1.4 3747 + resolution: "@expo/devcert@npm:1.1.4" 3505 3748 dependencies: 3506 3749 application-config-path: "npm:^0.1.0" 3507 3750 command-exists: "npm:^1.2.4" 3508 3751 debug: "npm:^3.1.0" 3509 3752 eol: "npm:^0.9.1" 3510 3753 get-port: "npm:^3.2.0" 3511 - glob: "npm:^7.1.2" 3754 + glob: "npm:^10.4.2" 3512 3755 lodash: "npm:^4.17.21" 3513 3756 mkdirp: "npm:^0.5.1" 3514 3757 password-prompt: "npm:^1.0.4" 3515 - rimraf: "npm:^2.6.2" 3516 3758 sudo-prompt: "npm:^8.2.0" 3517 3759 tmp: "npm:^0.0.33" 3518 3760 tslib: "npm:^2.4.0" 3519 - checksum: 10/33d4fe6e7ec0a61f4a568f7c802f97609cc34a4baa3db010cbcd5a1eab025334e0fba8ecc9f6e87807b7708d974b7e38ba11db813318c23812175449768e1dfb 3761 + checksum: 10/da897fad243ff74c5c70486aa020b6ed691c3a68a2bed5758e76245d493cee0499d3c1efbc9fa8993e5addc0cf73de5eff77211780669ae122b802327cefacee 3520 3762 languageName: node 3521 3763 linkType: hard 3522 3764 3523 - "@expo/env@npm:~0.3.0": 3524 - version: 0.3.0 3525 - resolution: "@expo/env@npm:0.3.0" 3765 + "@expo/env@npm:~0.4.0": 3766 + version: 0.4.0 3767 + resolution: "@expo/env@npm:0.4.0" 3526 3768 dependencies: 3527 3769 chalk: "npm:^4.0.0" 3528 3770 debug: "npm:^4.3.4" 3529 3771 dotenv: "npm:~16.4.5" 3530 3772 dotenv-expand: "npm:~11.0.6" 3531 3773 getenv: "npm:^1.0.0" 3532 - checksum: 10/b6e87be9eec4bfeb2e5518c5425107bb522882b649d5c879995b58468e035d21a91f9fd2e0974e646f31e84818f3ef1243fc7e4a2bd62d6ee5077d81a1680783 3774 + checksum: 10/dd4212d4bb2812ce2338c752a53a2ef781313eea3f89439e97fc6dd11cd893fafa18aaa19d398b0519f2e0032f7ed06ed5862e4bb5f7441fca59bde00cb34ed0 3533 3775 languageName: node 3534 3776 linkType: hard 3535 3777 3536 - "@expo/fingerprint@npm:^0.10.2": 3537 - version: 0.10.3 3538 - resolution: "@expo/fingerprint@npm:0.10.3" 3778 + "@expo/fingerprint@npm:0.11.2": 3779 + version: 0.11.2 3780 + resolution: "@expo/fingerprint@npm:0.11.2" 3539 3781 dependencies: 3540 3782 "@expo/spawn-async": "npm:^1.7.2" 3783 + arg: "npm:^5.0.2" 3541 3784 chalk: "npm:^4.1.2" 3542 3785 debug: "npm:^4.3.4" 3543 3786 find-up: "npm:^5.0.0" 3787 + getenv: "npm:^1.0.0" 3544 3788 minimatch: "npm:^3.0.4" 3545 3789 p-limit: "npm:^3.1.0" 3546 3790 resolve-from: "npm:^5.0.0" 3547 3791 semver: "npm:^7.6.0" 3548 3792 bin: 3549 3793 fingerprint: bin/cli.js 3550 - checksum: 10/fc39ed83ac9e2c9f9c9903f85ca5bb3b920740ffaa6b2a742af6563c1bec431b4c56c20f595c0b9931cf645e952dcc2f5deba948b60deacde510e695f27000f6 3794 + checksum: 10/dc6140019a37b186e6e109a7bc6635704a03ebb6ef3e87540a42ffdd9160699756a703655fe0bf356a246298dc33b34bcf3514cdbfc017ea7bc6156d450a57e1 3551 3795 languageName: node 3552 3796 linkType: hard 3553 3797 3554 - "@expo/image-utils@npm:^0.5.0": 3555 - version: 0.5.1 3556 - resolution: "@expo/image-utils@npm:0.5.1" 3798 + "@expo/image-utils@npm:^0.6.0": 3799 + version: 0.6.3 3800 + resolution: "@expo/image-utils@npm:0.6.3" 3557 3801 dependencies: 3558 3802 "@expo/spawn-async": "npm:^1.7.2" 3559 3803 chalk: "npm:^4.0.0" 3560 3804 fs-extra: "npm:9.0.0" 3561 3805 getenv: "npm:^1.0.0" 3562 3806 jimp-compact: "npm:0.16.1" 3563 - node-fetch: "npm:^2.6.0" 3564 3807 parse-png: "npm:^2.1.0" 3565 3808 resolve-from: "npm:^5.0.0" 3566 3809 semver: "npm:^7.6.0" 3567 - tempy: "npm:0.3.0" 3568 - checksum: 10/b56d4b65c0ec0a58689e9930f93edae5c6a90f398f019fb1c7d925634ee1da408a626374c208f71635273354f3159caaf3205cfb22b3d780d6a99614dee8ba73 3810 + temp-dir: "npm:~2.0.0" 3811 + unique-string: "npm:~2.0.0" 3812 + checksum: 10/aeaef02c98ce8a2b3d00e7a5b988d0be5956531ac68dc4a0182cd735afaab4f707bb8a1bd55975d6a977c082b59303d07ddc59ea3d72605270f94abac6c6683f 3569 3813 languageName: node 3570 3814 linkType: hard 3571 3815 3572 - "@expo/json-file@npm:^8.3.0, @expo/json-file@npm:~8.3.0": 3816 + "@expo/json-file@npm:^8.3.0": 3573 3817 version: 8.3.3 3574 3818 resolution: "@expo/json-file@npm:8.3.3" 3575 3819 dependencies: ··· 3580 3824 languageName: node 3581 3825 linkType: hard 3582 3826 3583 - "@expo/metro-config@npm:0.18.11, @expo/metro-config@npm:~0.18.11": 3584 - version: 0.18.11 3585 - resolution: "@expo/metro-config@npm:0.18.11" 3827 + "@expo/json-file@npm:^9.0.0, @expo/json-file@npm:~9.0.0": 3828 + version: 9.0.0 3829 + resolution: "@expo/json-file@npm:9.0.0" 3830 + dependencies: 3831 + "@babel/code-frame": "npm:~7.10.4" 3832 + json5: "npm:^2.2.3" 3833 + write-file-atomic: "npm:^2.3.0" 3834 + checksum: 10/a18c6c84d03116dfa5fcb767dfce682a71d6245a8734377cfa64d2fc69e8a70046a916409f34ac438f099dc5f66298ce8f37a3168970fca25bd76096329d95b2 3835 + languageName: node 3836 + linkType: hard 3837 + 3838 + "@expo/metro-config@npm:0.19.4, @expo/metro-config@npm:~0.19.0": 3839 + version: 0.19.4 3840 + resolution: "@expo/metro-config@npm:0.19.4" 3586 3841 dependencies: 3587 3842 "@babel/core": "npm:^7.20.0" 3588 3843 "@babel/generator": "npm:^7.20.5" 3589 3844 "@babel/parser": "npm:^7.20.0" 3590 3845 "@babel/types": "npm:^7.20.0" 3591 - "@expo/config": "npm:~9.0.0-beta.0" 3592 - "@expo/env": "npm:~0.3.0" 3593 - "@expo/json-file": "npm:~8.3.0" 3846 + "@expo/config": "npm:~10.0.4" 3847 + "@expo/env": "npm:~0.4.0" 3848 + "@expo/json-file": "npm:~9.0.0" 3594 3849 "@expo/spawn-async": "npm:^1.7.2" 3595 3850 chalk: "npm:^4.1.0" 3596 3851 debug: "npm:^4.3.2" 3597 - find-yarn-workspace-root: "npm:~2.0.0" 3598 3852 fs-extra: "npm:^9.1.0" 3599 3853 getenv: "npm:^1.0.0" 3600 - glob: "npm:^7.2.3" 3854 + glob: "npm:^10.4.2" 3601 3855 jsc-safe-url: "npm:^0.2.4" 3602 - lightningcss: "npm:~1.19.0" 3856 + lightningcss: "npm:~1.27.0" 3857 + minimatch: "npm:^3.0.4" 3603 3858 postcss: "npm:~8.4.32" 3604 3859 resolve-from: "npm:^5.0.0" 3605 - checksum: 10/642b4ca2957822e9ccd18ae2950269486e80f30bdd7dd7c8c21c1b137244420ce10eda2dd02345d5e25a3e627ebe40e76f362a46631ff70dfb356bc97177b96e 3860 + checksum: 10/6320148c414669ccaf269648596f5d43fb0e3e9e64b93da5f38213748279c8ae6a835ea907fff2d940d91594dba22396f5c32b20db592504f8deb4dc375d0e4d 3606 3861 languageName: node 3607 3862 linkType: hard 3608 3863 3609 - "@expo/metro-runtime@npm:~3.2.3": 3610 - version: 3.2.3 3611 - resolution: "@expo/metro-runtime@npm:3.2.3" 3864 + "@expo/metro-runtime@npm:~4.0.0": 3865 + version: 4.0.0 3866 + resolution: "@expo/metro-runtime@npm:4.0.0" 3612 3867 peerDependencies: 3613 3868 react-native: "*" 3614 - checksum: 10/c798321e05943d3962e9d3b0693af14934e284c8de2de5534989d414c5a1889c96f26f229cd2cd4598d988c9e146c56fb19d9ca5b074518dbdf8110bd45f942a 3869 + checksum: 10/2f5bd81e4d0735dc9b99ac4f35169969eb9dc303669ddc3158f670a3c36115f87d479a6fda11c1d5acab551f1015a32271c83001e8874493f0ec58c02f8ddbf3 3615 3870 languageName: node 3616 3871 linkType: hard 3617 3872 ··· 3645 3900 languageName: node 3646 3901 linkType: hard 3647 3902 3648 - "@expo/plist@npm:^0.1.0": 3649 - version: 0.1.3 3650 - resolution: "@expo/plist@npm:0.1.3" 3903 + "@expo/plist@npm:^0.2.0": 3904 + version: 0.2.0 3905 + resolution: "@expo/plist@npm:0.2.0" 3651 3906 dependencies: 3652 3907 "@xmldom/xmldom": "npm:~0.7.7" 3653 3908 base64-js: "npm:^1.2.3" 3654 3909 xmlbuilder: "npm:^14.0.0" 3655 - checksum: 10/7026e45744784539a0a3534dc393f4d7ccc04cc5a4c71a194f61aa9c5577599e27066c43e60c6611a4d34ebc30bec9380190be1685040bc72b037704fe2d2aec 3910 + checksum: 10/ac7e3c97642b060de23ebbaa677b8c629afc9e5430f3b8d409d97a0e5113018911c9610f94453966a1021fb15749742d44e39a5ae6d140ca8a1b202ff1c2c8ec 3656 3911 languageName: node 3657 3912 linkType: hard 3658 3913 3659 - "@expo/prebuild-config@npm:7.0.8": 3660 - version: 7.0.8 3661 - resolution: "@expo/prebuild-config@npm:7.0.8" 3914 + "@expo/prebuild-config@npm:^8.0.16": 3915 + version: 8.0.17 3916 + resolution: "@expo/prebuild-config@npm:8.0.17" 3662 3917 dependencies: 3663 - "@expo/config": "npm:~9.0.0-beta.0" 3664 - "@expo/config-plugins": "npm:~8.0.8" 3665 - "@expo/config-types": "npm:^51.0.0-unreleased" 3666 - "@expo/image-utils": "npm:^0.5.0" 3667 - "@expo/json-file": "npm:^8.3.0" 3668 - "@react-native/normalize-colors": "npm:0.74.85" 3669 - debug: "npm:^4.3.1" 3670 - fs-extra: "npm:^9.0.0" 3671 - resolve-from: "npm:^5.0.0" 3672 - semver: "npm:^7.6.0" 3673 - xml2js: "npm:0.6.0" 3674 - peerDependencies: 3675 - expo-modules-autolinking: ">=0.8.1" 3676 - checksum: 10/f91b2a711183a67724732d826916466d143473a12750a6636f35ae7fd731aa15254eea9ff6d5f032c7fd4454982d9ed76209fd1b56b1fa38c6d0f3022c1b8c22 3677 - languageName: node 3678 - linkType: hard 3679 - 3680 - "@expo/prebuild-config@npm:7.0.9": 3681 - version: 7.0.9 3682 - resolution: "@expo/prebuild-config@npm:7.0.9" 3683 - dependencies: 3684 - "@expo/config": "npm:~9.0.0-beta.0" 3685 - "@expo/config-plugins": "npm:~8.0.8" 3686 - "@expo/config-types": "npm:^51.0.3" 3687 - "@expo/image-utils": "npm:^0.5.0" 3688 - "@expo/json-file": "npm:^8.3.0" 3689 - "@react-native/normalize-colors": "npm:0.74.85" 3918 + "@expo/config": "npm:~10.0.4" 3919 + "@expo/config-plugins": "npm:~9.0.0" 3920 + "@expo/config-types": "npm:^52.0.0" 3921 + "@expo/image-utils": "npm:^0.6.0" 3922 + "@expo/json-file": "npm:^9.0.0" 3923 + "@react-native/normalize-colors": "npm:0.76.2" 3690 3924 debug: "npm:^4.3.1" 3691 3925 fs-extra: "npm:^9.0.0" 3692 3926 resolve-from: "npm:^5.0.0" 3693 3927 semver: "npm:^7.6.0" 3694 3928 xml2js: "npm:0.6.0" 3695 - peerDependencies: 3696 - expo-modules-autolinking: ">=0.8.1" 3697 - checksum: 10/6b231c4378ee9688cf8aa93fa3ff1e86daff2f864e7a58b7cf350c8697ae071401fcb0639c58d39f4ef34f9f39a3f60d990972e02a4cea0749ca483364be0c4a 3929 + checksum: 10/3dc322615cb2004bfc4bf068256acaa1eb261340da3bda3a6e0993037c9efca67a58b2917570494ca0e49cb1552c0ad80e7944ad1f386e24d2d4c3ededcfdbd8 3698 3930 languageName: node 3699 3931 linkType: hard 3700 3932 3701 - "@expo/rudder-sdk-node@npm:1.1.1": 3933 + "@expo/rudder-sdk-node@npm:^1.1.1": 3702 3934 version: 1.1.1 3703 3935 resolution: "@expo/rudder-sdk-node@npm:1.1.1" 3704 3936 dependencies: ··· 3729 3961 languageName: node 3730 3962 linkType: hard 3731 3963 3732 - "@expo/vector-icons@npm:^14.0.3": 3964 + "@expo/vector-icons@npm:^14.0.0": 3733 3965 version: 14.0.4 3734 3966 resolution: "@expo/vector-icons@npm:14.0.4" 3735 3967 dependencies: ··· 4424 4656 languageName: node 4425 4657 linkType: hard 4426 4658 4427 - "@graphql-typed-document-node/core@npm:^3.1.0": 4428 - version: 3.2.0 4429 - resolution: "@graphql-typed-document-node/core@npm:3.2.0" 4430 - peerDependencies: 4431 - graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 4432 - checksum: 10/fa44443accd28c8cf4cb96aaaf39d144a22e8b091b13366843f4e97d19c7bfeaf609ce3c7603a4aeffe385081eaf8ea245d078633a7324c11c5ec4b2011bb76d 4433 - languageName: node 4434 - linkType: hard 4435 - 4436 4659 "@grpc/grpc-js@npm:^1.10.9": 4437 4660 version: 1.10.10 4438 4661 resolution: "@grpc/grpc-js@npm:1.10.10" ··· 4464 4687 bin: 4465 4688 proto-loader-gen-types: build/bin/proto-loader-gen-types.js 4466 4689 checksum: 10/7e2d842c2061cbaf6450c71da0077263be3bab165454d5c8a3e1ae4d3c6d2915f02fd27da63ff01f05e127b1221acd40705273f5d29303901e60514e852992f4 4467 - languageName: node 4468 - linkType: hard 4469 - 4470 - "@hapi/hoek@npm:^9.0.0, @hapi/hoek@npm:^9.3.0": 4471 - version: 9.3.0 4472 - resolution: "@hapi/hoek@npm:9.3.0" 4473 - checksum: 10/ad83a223787749f3873bce42bd32a9a19673765bf3edece0a427e138859ff729469e68d5fdf9ff6bbee6fb0c8e21bab61415afa4584f527cfc40b59ea1957e70 4474 - languageName: node 4475 - linkType: hard 4476 - 4477 - "@hapi/topo@npm:^5.1.0": 4478 - version: 5.1.0 4479 - resolution: "@hapi/topo@npm:5.1.0" 4480 - dependencies: 4481 - "@hapi/hoek": "npm:^9.0.0" 4482 - checksum: 10/084bfa647015f4fd3fdd51fadb2747d09ef2f5e1443d6cbada2988b0c88494f85edf257ec606c790db146ac4e34ff57f3fcb22e3299b8e06ed5c87ba7583495c 4483 4690 languageName: node 4484 4691 linkType: hard 4485 4692 ··· 4563 4770 languageName: node 4564 4771 linkType: hard 4565 4772 4773 + "@istanbuljs/load-nyc-config@npm:^1.0.0": 4774 + version: 1.1.0 4775 + resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" 4776 + dependencies: 4777 + camelcase: "npm:^5.3.1" 4778 + find-up: "npm:^4.1.0" 4779 + get-package-type: "npm:^0.1.0" 4780 + js-yaml: "npm:^3.13.1" 4781 + resolve-from: "npm:^5.0.0" 4782 + checksum: 10/b000a5acd8d4fe6e34e25c399c8bdbb5d3a202b4e10416e17bfc25e12bab90bb56d33db6089ae30569b52686f4b35ff28ef26e88e21e69821d2b85884bd055b8 4783 + languageName: node 4784 + linkType: hard 4785 + 4786 + "@istanbuljs/schema@npm:^0.1.2": 4787 + version: 0.1.3 4788 + resolution: "@istanbuljs/schema@npm:0.1.3" 4789 + checksum: 10/a9b1e49acdf5efc2f5b2359f2df7f90c5c725f2656f16099e8b2cd3a000619ecca9fc48cf693ba789cf0fd989f6e0df6a22bc05574be4223ecdbb7997d04384b 4790 + languageName: node 4791 + linkType: hard 4792 + 4566 4793 "@jest/create-cache-key-function@npm:^29.6.3": 4567 4794 version: 29.7.0 4568 4795 resolution: "@jest/create-cache-key-function@npm:29.7.0" ··· 4607 4834 languageName: node 4608 4835 linkType: hard 4609 4836 4610 - "@jest/types@npm:^24.9.0": 4611 - version: 24.9.0 4612 - resolution: "@jest/types@npm:24.9.0" 4837 + "@jest/transform@npm:^29.7.0": 4838 + version: 29.7.0 4839 + resolution: "@jest/transform@npm:29.7.0" 4613 4840 dependencies: 4614 - "@types/istanbul-lib-coverage": "npm:^2.0.0" 4615 - "@types/istanbul-reports": "npm:^1.1.1" 4616 - "@types/yargs": "npm:^13.0.0" 4617 - checksum: 10/22bdbf26f32e18b48b5b8881332cfdc93bfb87daf84f336c492dd3d4f0731b9b0bf3c854351508f9debc4dce8b8ca015156686f6119f6d11431ffa875ae046e5 4618 - languageName: node 4619 - linkType: hard 4620 - 4621 - "@jest/types@npm:^26.6.2": 4622 - version: 26.6.2 4623 - resolution: "@jest/types@npm:26.6.2" 4624 - dependencies: 4625 - "@types/istanbul-lib-coverage": "npm:^2.0.0" 4626 - "@types/istanbul-reports": "npm:^3.0.0" 4627 - "@types/node": "npm:*" 4628 - "@types/yargs": "npm:^15.0.0" 4841 + "@babel/core": "npm:^7.11.6" 4842 + "@jest/types": "npm:^29.6.3" 4843 + "@jridgewell/trace-mapping": "npm:^0.3.18" 4844 + babel-plugin-istanbul: "npm:^6.1.1" 4629 4845 chalk: "npm:^4.0.0" 4630 - checksum: 10/02d42749c8c6dc7e3184d0ff0293dd91c97233c2e6dc3708d61ef33d3162d4f07ad38d2d8a39abd94cf2fced69b92a87565c7099137c4529809242ca327254af 4846 + convert-source-map: "npm:^2.0.0" 4847 + fast-json-stable-stringify: "npm:^2.1.0" 4848 + graceful-fs: "npm:^4.2.9" 4849 + jest-haste-map: "npm:^29.7.0" 4850 + jest-regex-util: "npm:^29.6.3" 4851 + jest-util: "npm:^29.7.0" 4852 + micromatch: "npm:^4.0.4" 4853 + pirates: "npm:^4.0.4" 4854 + slash: "npm:^3.0.0" 4855 + write-file-atomic: "npm:^4.0.2" 4856 + checksum: 10/30f42293545ab037d5799c81d3e12515790bb58513d37f788ce32d53326d0d72ebf5b40f989e6896739aa50a5f77be44686e510966370d58511d5ad2637c68c1 4631 4857 languageName: node 4632 4858 linkType: hard 4633 4859 ··· 4697 4923 languageName: node 4698 4924 linkType: hard 4699 4925 4700 - "@jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": 4926 + "@jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": 4701 4927 version: 0.3.25 4702 4928 resolution: "@jridgewell/trace-mapping@npm:0.3.25" 4703 4929 dependencies: ··· 5952 6178 languageName: node 5953 6179 linkType: hard 5954 6180 5955 - "@react-native-community/cli-clean@npm:13.6.9": 5956 - version: 13.6.9 5957 - resolution: "@react-native-community/cli-clean@npm:13.6.9" 5958 - dependencies: 5959 - "@react-native-community/cli-tools": "npm:13.6.9" 5960 - chalk: "npm:^4.1.2" 5961 - execa: "npm:^5.0.0" 5962 - fast-glob: "npm:^3.3.2" 5963 - checksum: 10/586cdaff2aaea1c58370075cb45a2f2ee8bb6e4a3d67f419bb17e56ed58fa240592d555635a04ce4d4e5afbdaac4c14d647007208e8d7bbb7003e0ea46b3f39a 5964 - languageName: node 5965 - linkType: hard 5966 - 5967 - "@react-native-community/cli-config@npm:13.6.9": 5968 - version: 13.6.9 5969 - resolution: "@react-native-community/cli-config@npm:13.6.9" 5970 - dependencies: 5971 - "@react-native-community/cli-tools": "npm:13.6.9" 5972 - chalk: "npm:^4.1.2" 5973 - cosmiconfig: "npm:^5.1.0" 5974 - deepmerge: "npm:^4.3.0" 5975 - fast-glob: "npm:^3.3.2" 5976 - joi: "npm:^17.2.1" 5977 - checksum: 10/fa47a4c4f265cdb4203d89ef898a54ee90ec82c7e6ef58cca977f893c954ee091f85bd10f4cf05380f567009f2b234861176b1e391972b3597693e134b576d89 5978 - languageName: node 5979 - linkType: hard 5980 - 5981 - "@react-native-community/cli-debugger-ui@npm:13.6.9": 5982 - version: 13.6.9 5983 - resolution: "@react-native-community/cli-debugger-ui@npm:13.6.9" 5984 - dependencies: 5985 - serve-static: "npm:^1.13.1" 5986 - checksum: 10/ef0acf98c8eb1a3ab9eafa7119d43655f9598e77185187ab0f4544dff0e4f7440963d0df781a442a2456242b2bb47678394e694091292fab4e743236796aba7a 5987 - languageName: node 5988 - linkType: hard 5989 - 5990 - "@react-native-community/cli-doctor@npm:13.6.9": 5991 - version: 13.6.9 5992 - resolution: "@react-native-community/cli-doctor@npm:13.6.9" 5993 - dependencies: 5994 - "@react-native-community/cli-config": "npm:13.6.9" 5995 - "@react-native-community/cli-platform-android": "npm:13.6.9" 5996 - "@react-native-community/cli-platform-apple": "npm:13.6.9" 5997 - "@react-native-community/cli-platform-ios": "npm:13.6.9" 5998 - "@react-native-community/cli-tools": "npm:13.6.9" 5999 - chalk: "npm:^4.1.2" 6000 - command-exists: "npm:^1.2.8" 6001 - deepmerge: "npm:^4.3.0" 6002 - envinfo: "npm:^7.10.0" 6003 - execa: "npm:^5.0.0" 6004 - hermes-profile-transformer: "npm:^0.0.6" 6005 - node-stream-zip: "npm:^1.9.1" 6006 - ora: "npm:^5.4.1" 6007 - semver: "npm:^7.5.2" 6008 - strip-ansi: "npm:^5.2.0" 6009 - wcwidth: "npm:^1.0.1" 6010 - yaml: "npm:^2.2.1" 6011 - checksum: 10/01f5ca98e00f28e78f56ab249ad74fba862b3f3c7c1b6a1e150e3614a22b3543da375be4bf6470db055fb598829df0ff5f1f46f92d68458b226b396eadab2670 6012 - languageName: node 6013 - linkType: hard 6014 - 6015 - "@react-native-community/cli-hermes@npm:13.6.9": 6016 - version: 13.6.9 6017 - resolution: "@react-native-community/cli-hermes@npm:13.6.9" 6018 - dependencies: 6019 - "@react-native-community/cli-platform-android": "npm:13.6.9" 6020 - "@react-native-community/cli-tools": "npm:13.6.9" 6021 - chalk: "npm:^4.1.2" 6022 - hermes-profile-transformer: "npm:^0.0.6" 6023 - checksum: 10/4b68fe4ab49c045fcc0ca037bb105d8d0341f67d3ddc13062e6a73da64369680f9c8db106545478ac1600cec84a20fafa786df0ca8dac3486bf97cafdb47f620 6024 - languageName: node 6025 - linkType: hard 6026 - 6027 - "@react-native-community/cli-platform-android@npm:13.6.9": 6028 - version: 13.6.9 6029 - resolution: "@react-native-community/cli-platform-android@npm:13.6.9" 6030 - dependencies: 6031 - "@react-native-community/cli-tools": "npm:13.6.9" 6032 - chalk: "npm:^4.1.2" 6033 - execa: "npm:^5.0.0" 6034 - fast-glob: "npm:^3.3.2" 6035 - fast-xml-parser: "npm:^4.2.4" 6036 - logkitty: "npm:^0.7.1" 6037 - checksum: 10/6fb98bfd8ccdf7ff5487e4f2c802f64378db4dd1f56bb91275daec7806a01aee0be51904c050fdf76f386b16893b506590b86202345a0307c0b3bda678df89ca 6038 - languageName: node 6039 - linkType: hard 6040 - 6041 - "@react-native-community/cli-platform-apple@npm:13.6.9": 6042 - version: 13.6.9 6043 - resolution: "@react-native-community/cli-platform-apple@npm:13.6.9" 6044 - dependencies: 6045 - "@react-native-community/cli-tools": "npm:13.6.9" 6046 - chalk: "npm:^4.1.2" 6047 - execa: "npm:^5.0.0" 6048 - fast-glob: "npm:^3.3.2" 6049 - fast-xml-parser: "npm:^4.0.12" 6050 - ora: "npm:^5.4.1" 6051 - checksum: 10/63c991edaf330d11a1fc5375b463f4544ca56b10ddc381313c1329086f3c081237aca27f598fefe5a1fbf278f7469c785efb781cfc0ce712d51d94f6c50a5471 6052 - languageName: node 6053 - linkType: hard 6054 - 6055 - "@react-native-community/cli-platform-ios@npm:13.6.9": 6056 - version: 13.6.9 6057 - resolution: "@react-native-community/cli-platform-ios@npm:13.6.9" 6058 - dependencies: 6059 - "@react-native-community/cli-platform-apple": "npm:13.6.9" 6060 - checksum: 10/80182ae7cb520237aa4ba22a0d730da2aa68104ad721fca17b7dd74b1b6299b4decd18256fa1c01cad833352039ae5d33c5118acc09d56333d08e3995d883ec8 6061 - languageName: node 6062 - linkType: hard 6063 - 6064 - "@react-native-community/cli-server-api@npm:13.6.9": 6065 - version: 13.6.9 6066 - resolution: "@react-native-community/cli-server-api@npm:13.6.9" 6067 - dependencies: 6068 - "@react-native-community/cli-debugger-ui": "npm:13.6.9" 6069 - "@react-native-community/cli-tools": "npm:13.6.9" 6070 - compression: "npm:^1.7.1" 6071 - connect: "npm:^3.6.5" 6072 - errorhandler: "npm:^1.5.1" 6073 - nocache: "npm:^3.0.1" 6074 - pretty-format: "npm:^26.6.2" 6075 - serve-static: "npm:^1.13.1" 6076 - ws: "npm:^6.2.2" 6077 - checksum: 10/21bb11184ffd719e67eab401af62a71c90ee6e2b27909e30f4c5fdae0553a266da943b4a5c1ff9d9706db4047cb9f001918c44911381bbd5c46e0249867c22a6 6078 - languageName: node 6079 - linkType: hard 6080 - 6081 - "@react-native-community/cli-tools@npm:13.6.9": 6082 - version: 13.6.9 6083 - resolution: "@react-native-community/cli-tools@npm:13.6.9" 6084 - dependencies: 6085 - appdirsjs: "npm:^1.2.4" 6086 - chalk: "npm:^4.1.2" 6087 - execa: "npm:^5.0.0" 6088 - find-up: "npm:^5.0.0" 6089 - mime: "npm:^2.4.1" 6090 - node-fetch: "npm:^2.6.0" 6091 - open: "npm:^6.2.0" 6092 - ora: "npm:^5.4.1" 6093 - semver: "npm:^7.5.2" 6094 - shell-quote: "npm:^1.7.3" 6095 - sudo-prompt: "npm:^9.0.0" 6096 - checksum: 10/1bbb2a38366ef2722690cfdbd151426221e60e4eff3b371c808cea415c1779c3e5b52d8f3741cba54f891ba7c784e73fd8763b8247faa6385652a681b6557f9e 6097 - languageName: node 6098 - linkType: hard 6099 - 6100 - "@react-native-community/cli-types@npm:13.6.9": 6101 - version: 13.6.9 6102 - resolution: "@react-native-community/cli-types@npm:13.6.9" 6103 - dependencies: 6104 - joi: "npm:^17.2.1" 6105 - checksum: 10/224c60447fcebb9fd4719685a3d85aebabbd709f79d056a76750c59cc9d215882bd7386f0822103b2c7b6df1815f738f615c27838381f94028169833ae4473f8 6106 - languageName: node 6107 - linkType: hard 6108 - 6109 - "@react-native-community/cli@npm:13.6.9": 6110 - version: 13.6.9 6111 - resolution: "@react-native-community/cli@npm:13.6.9" 6112 - dependencies: 6113 - "@react-native-community/cli-clean": "npm:13.6.9" 6114 - "@react-native-community/cli-config": "npm:13.6.9" 6115 - "@react-native-community/cli-debugger-ui": "npm:13.6.9" 6116 - "@react-native-community/cli-doctor": "npm:13.6.9" 6117 - "@react-native-community/cli-hermes": "npm:13.6.9" 6118 - "@react-native-community/cli-server-api": "npm:13.6.9" 6119 - "@react-native-community/cli-tools": "npm:13.6.9" 6120 - "@react-native-community/cli-types": "npm:13.6.9" 6121 - chalk: "npm:^4.1.2" 6122 - commander: "npm:^9.4.1" 6123 - deepmerge: "npm:^4.3.0" 6124 - execa: "npm:^5.0.0" 6125 - find-up: "npm:^4.1.0" 6126 - fs-extra: "npm:^8.1.0" 6127 - graceful-fs: "npm:^4.1.3" 6128 - prompts: "npm:^2.4.2" 6129 - semver: "npm:^7.5.2" 6130 - bin: 6131 - rnc-cli: build/bin.js 6132 - checksum: 10/5cdf84a45cd340ab07e623910778419bfe9853a2a7d1a7ac476df2fdf6a41f01edd572d4bb24e398277ba194aa2fc0c433cb2348e039c4dc9df4ba0140401da0 6133 - languageName: node 6134 - linkType: hard 6135 - 6136 6181 "@react-native-firebase/app@npm:^21.3.0": 6137 6182 version: 21.3.0 6138 6183 resolution: "@react-native-firebase/app@npm:21.3.0" ··· 6163 6208 languageName: node 6164 6209 linkType: hard 6165 6210 6166 - "@react-native/assets-registry@npm:0.74.88": 6167 - version: 0.74.88 6168 - resolution: "@react-native/assets-registry@npm:0.74.88" 6169 - checksum: 10/abc49ff0179af408ed58ce3e63533f4a7eef5360b7f2a634f200c703cb8266d201d41ea4293c2a3900bfc1145c411ed5ba243a5ac27231e8bc64dce65bf5911a 6170 - languageName: node 6171 - linkType: hard 6172 - 6173 - "@react-native/babel-plugin-codegen@npm:0.74.87": 6174 - version: 0.74.87 6175 - resolution: "@react-native/babel-plugin-codegen@npm:0.74.87" 6176 - dependencies: 6177 - "@react-native/codegen": "npm:0.74.87" 6178 - checksum: 10/c418a7e3d40ef1b757150b030cffc6a7ad92b1a7f4c3d3a406c559a7d54f4f7f89a6e216d18549544fbace414a0ffec5deee0631f5ad0361171fe7888aaeddfc 6211 + "@react-native/assets-registry@npm:0.76.2": 6212 + version: 0.76.2 6213 + resolution: "@react-native/assets-registry@npm:0.76.2" 6214 + checksum: 10/26407961c9680c4bf871e0c7e90d10726332ffd00cc07cf1879761c3d9c5881322c6efff31457a9a3f16ea1f9edaa82bd50d413ab923a4fc9652f804b796cd4f 6179 6215 languageName: node 6180 6216 linkType: hard 6181 6217 6182 - "@react-native/babel-plugin-codegen@npm:0.74.88": 6183 - version: 0.74.88 6184 - resolution: "@react-native/babel-plugin-codegen@npm:0.74.88" 6218 + "@react-native/babel-plugin-codegen@npm:0.76.2": 6219 + version: 0.76.2 6220 + resolution: "@react-native/babel-plugin-codegen@npm:0.76.2" 6185 6221 dependencies: 6186 - "@react-native/codegen": "npm:0.74.88" 6187 - checksum: 10/a6cfc436a599d29d81ceb5fcc9c24ff4b91b686b1bfede65cda85859fca8cf68a931bb1654d211db47133788f67d3829e4f37882961a02960bc4532587222aeb 6222 + "@react-native/codegen": "npm:0.76.2" 6223 + checksum: 10/526438238fc6fc6941a71756bd675c0d35d92870d68da109481a452d8bf8ae4a42f48a6158de55a526f1267a7ed27db0288e5088c5d0c284039cef8e44c3f045 6188 6224 languageName: node 6189 6225 linkType: hard 6190 6226 6191 - "@react-native/babel-preset@npm:0.74.87": 6192 - version: 0.74.87 6193 - resolution: "@react-native/babel-preset@npm:0.74.87" 6227 + "@react-native/babel-preset@npm:0.76.2": 6228 + version: 0.76.2 6229 + resolution: "@react-native/babel-preset@npm:0.76.2" 6194 6230 dependencies: 6195 - "@babel/core": "npm:^7.20.0" 6196 - "@babel/plugin-proposal-async-generator-functions": "npm:^7.0.0" 6197 - "@babel/plugin-proposal-class-properties": "npm:^7.18.0" 6198 - "@babel/plugin-proposal-export-default-from": "npm:^7.0.0" 6199 - "@babel/plugin-proposal-logical-assignment-operators": "npm:^7.18.0" 6200 - "@babel/plugin-proposal-nullish-coalescing-operator": "npm:^7.18.0" 6201 - "@babel/plugin-proposal-numeric-separator": "npm:^7.0.0" 6202 - "@babel/plugin-proposal-object-rest-spread": "npm:^7.20.0" 6203 - "@babel/plugin-proposal-optional-catch-binding": "npm:^7.0.0" 6204 - "@babel/plugin-proposal-optional-chaining": "npm:^7.20.0" 6205 - "@babel/plugin-syntax-dynamic-import": "npm:^7.8.0" 6206 - "@babel/plugin-syntax-export-default-from": "npm:^7.0.0" 6207 - "@babel/plugin-syntax-flow": "npm:^7.18.0" 6208 - "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.0.0" 6209 - "@babel/plugin-syntax-optional-chaining": "npm:^7.0.0" 6210 - "@babel/plugin-transform-arrow-functions": "npm:^7.0.0" 6211 - "@babel/plugin-transform-async-to-generator": "npm:^7.20.0" 6212 - "@babel/plugin-transform-block-scoping": "npm:^7.0.0" 6213 - "@babel/plugin-transform-classes": "npm:^7.0.0" 6214 - "@babel/plugin-transform-computed-properties": "npm:^7.0.0" 6215 - "@babel/plugin-transform-destructuring": "npm:^7.20.0" 6216 - "@babel/plugin-transform-flow-strip-types": "npm:^7.20.0" 6217 - "@babel/plugin-transform-function-name": "npm:^7.0.0" 6218 - "@babel/plugin-transform-literals": "npm:^7.0.0" 6219 - "@babel/plugin-transform-modules-commonjs": "npm:^7.0.0" 6220 - "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.0.0" 6221 - "@babel/plugin-transform-parameters": "npm:^7.0.0" 6222 - "@babel/plugin-transform-private-methods": "npm:^7.22.5" 6223 - "@babel/plugin-transform-private-property-in-object": "npm:^7.22.11" 6224 - "@babel/plugin-transform-react-display-name": "npm:^7.0.0" 6225 - "@babel/plugin-transform-react-jsx": "npm:^7.0.0" 6226 - "@babel/plugin-transform-react-jsx-self": "npm:^7.0.0" 6227 - "@babel/plugin-transform-react-jsx-source": "npm:^7.0.0" 6228 - "@babel/plugin-transform-runtime": "npm:^7.0.0" 6229 - "@babel/plugin-transform-shorthand-properties": "npm:^7.0.0" 6230 - "@babel/plugin-transform-spread": "npm:^7.0.0" 6231 - "@babel/plugin-transform-sticky-regex": "npm:^7.0.0" 6232 - "@babel/plugin-transform-typescript": "npm:^7.5.0" 6233 - "@babel/plugin-transform-unicode-regex": "npm:^7.0.0" 6234 - "@babel/template": "npm:^7.0.0" 6235 - "@react-native/babel-plugin-codegen": "npm:0.74.87" 6231 + "@babel/core": "npm:^7.25.2" 6232 + "@babel/plugin-proposal-export-default-from": "npm:^7.24.7" 6233 + "@babel/plugin-syntax-dynamic-import": "npm:^7.8.3" 6234 + "@babel/plugin-syntax-export-default-from": "npm:^7.24.7" 6235 + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" 6236 + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" 6237 + "@babel/plugin-transform-arrow-functions": "npm:^7.24.7" 6238 + "@babel/plugin-transform-async-generator-functions": "npm:^7.25.4" 6239 + "@babel/plugin-transform-async-to-generator": "npm:^7.24.7" 6240 + "@babel/plugin-transform-block-scoping": "npm:^7.25.0" 6241 + "@babel/plugin-transform-class-properties": "npm:^7.25.4" 6242 + "@babel/plugin-transform-classes": "npm:^7.25.4" 6243 + "@babel/plugin-transform-computed-properties": "npm:^7.24.7" 6244 + "@babel/plugin-transform-destructuring": "npm:^7.24.8" 6245 + "@babel/plugin-transform-flow-strip-types": "npm:^7.25.2" 6246 + "@babel/plugin-transform-for-of": "npm:^7.24.7" 6247 + "@babel/plugin-transform-function-name": "npm:^7.25.1" 6248 + "@babel/plugin-transform-literals": "npm:^7.25.2" 6249 + "@babel/plugin-transform-logical-assignment-operators": "npm:^7.24.7" 6250 + "@babel/plugin-transform-modules-commonjs": "npm:^7.24.8" 6251 + "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.24.7" 6252 + "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.24.7" 6253 + "@babel/plugin-transform-numeric-separator": "npm:^7.24.7" 6254 + "@babel/plugin-transform-object-rest-spread": "npm:^7.24.7" 6255 + "@babel/plugin-transform-optional-catch-binding": "npm:^7.24.7" 6256 + "@babel/plugin-transform-optional-chaining": "npm:^7.24.8" 6257 + "@babel/plugin-transform-parameters": "npm:^7.24.7" 6258 + "@babel/plugin-transform-private-methods": "npm:^7.24.7" 6259 + "@babel/plugin-transform-private-property-in-object": "npm:^7.24.7" 6260 + "@babel/plugin-transform-react-display-name": "npm:^7.24.7" 6261 + "@babel/plugin-transform-react-jsx": "npm:^7.25.2" 6262 + "@babel/plugin-transform-react-jsx-self": "npm:^7.24.7" 6263 + "@babel/plugin-transform-react-jsx-source": "npm:^7.24.7" 6264 + "@babel/plugin-transform-regenerator": "npm:^7.24.7" 6265 + "@babel/plugin-transform-runtime": "npm:^7.24.7" 6266 + "@babel/plugin-transform-shorthand-properties": "npm:^7.24.7" 6267 + "@babel/plugin-transform-spread": "npm:^7.24.7" 6268 + "@babel/plugin-transform-sticky-regex": "npm:^7.24.7" 6269 + "@babel/plugin-transform-typescript": "npm:^7.25.2" 6270 + "@babel/plugin-transform-unicode-regex": "npm:^7.24.7" 6271 + "@babel/template": "npm:^7.25.0" 6272 + "@react-native/babel-plugin-codegen": "npm:0.76.2" 6273 + babel-plugin-syntax-hermes-parser: "npm:^0.25.1" 6236 6274 babel-plugin-transform-flow-enums: "npm:^0.0.2" 6237 6275 react-refresh: "npm:^0.14.0" 6238 6276 peerDependencies: 6239 6277 "@babel/core": "*" 6240 - checksum: 10/f71e57ad9c7f2e456a55983bba6841bff952c75b8a3bccb53eccb698055ec0f7cf8f2c7261ca7a04a1a513dda7340c3709006c87998288afa4caf2f4896a4f39 6278 + checksum: 10/cec407d4eb41366610f1d5c19f1829e9a8a687e9fe3dbc9879b126d06061df19b5aec8bd2efdacb22e8d1de0ae3771d5f684c3f7f4246ce2e25bd1fd76d72e03 6241 6279 languageName: node 6242 6280 linkType: hard 6243 6281 6244 - "@react-native/babel-preset@npm:0.74.88": 6245 - version: 0.74.88 6246 - resolution: "@react-native/babel-preset@npm:0.74.88" 6282 + "@react-native/codegen@npm:0.76.2": 6283 + version: 0.76.2 6284 + resolution: "@react-native/codegen@npm:0.76.2" 6247 6285 dependencies: 6248 - "@babel/core": "npm:^7.20.0" 6249 - "@babel/plugin-proposal-async-generator-functions": "npm:^7.0.0" 6250 - "@babel/plugin-proposal-class-properties": "npm:^7.18.0" 6251 - "@babel/plugin-proposal-export-default-from": "npm:^7.0.0" 6252 - "@babel/plugin-proposal-logical-assignment-operators": "npm:^7.18.0" 6253 - "@babel/plugin-proposal-nullish-coalescing-operator": "npm:^7.18.0" 6254 - "@babel/plugin-proposal-numeric-separator": "npm:^7.0.0" 6255 - "@babel/plugin-proposal-object-rest-spread": "npm:^7.20.0" 6256 - "@babel/plugin-proposal-optional-catch-binding": "npm:^7.0.0" 6257 - "@babel/plugin-proposal-optional-chaining": "npm:^7.20.0" 6258 - "@babel/plugin-syntax-dynamic-import": "npm:^7.8.0" 6259 - "@babel/plugin-syntax-export-default-from": "npm:^7.0.0" 6260 - "@babel/plugin-syntax-flow": "npm:^7.18.0" 6261 - "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.0.0" 6262 - "@babel/plugin-syntax-optional-chaining": "npm:^7.0.0" 6263 - "@babel/plugin-transform-arrow-functions": "npm:^7.0.0" 6264 - "@babel/plugin-transform-async-to-generator": "npm:^7.20.0" 6265 - "@babel/plugin-transform-block-scoping": "npm:^7.0.0" 6266 - "@babel/plugin-transform-classes": "npm:^7.0.0" 6267 - "@babel/plugin-transform-computed-properties": "npm:^7.0.0" 6268 - "@babel/plugin-transform-destructuring": "npm:^7.20.0" 6269 - "@babel/plugin-transform-flow-strip-types": "npm:^7.20.0" 6270 - "@babel/plugin-transform-function-name": "npm:^7.0.0" 6271 - "@babel/plugin-transform-literals": "npm:^7.0.0" 6272 - "@babel/plugin-transform-modules-commonjs": "npm:^7.0.0" 6273 - "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.0.0" 6274 - "@babel/plugin-transform-parameters": "npm:^7.0.0" 6275 - "@babel/plugin-transform-private-methods": "npm:^7.22.5" 6276 - "@babel/plugin-transform-private-property-in-object": "npm:^7.22.11" 6277 - "@babel/plugin-transform-react-display-name": "npm:^7.0.0" 6278 - "@babel/plugin-transform-react-jsx": "npm:^7.0.0" 6279 - "@babel/plugin-transform-react-jsx-self": "npm:^7.0.0" 6280 - "@babel/plugin-transform-react-jsx-source": "npm:^7.0.0" 6281 - "@babel/plugin-transform-runtime": "npm:^7.0.0" 6282 - "@babel/plugin-transform-shorthand-properties": "npm:^7.0.0" 6283 - "@babel/plugin-transform-spread": "npm:^7.0.0" 6284 - "@babel/plugin-transform-sticky-regex": "npm:^7.0.0" 6285 - "@babel/plugin-transform-typescript": "npm:^7.5.0" 6286 - "@babel/plugin-transform-unicode-regex": "npm:^7.0.0" 6287 - "@babel/template": "npm:^7.0.0" 6288 - "@react-native/babel-plugin-codegen": "npm:0.74.88" 6289 - babel-plugin-transform-flow-enums: "npm:^0.0.2" 6290 - react-refresh: "npm:^0.14.0" 6291 - peerDependencies: 6292 - "@babel/core": "*" 6293 - checksum: 10/3abf5e1d5b8c87ce45dc99ea68a6b829efe621b43a8b3eceb67f36fb78eafd264ab73da35e52036aab98104ab0ad20b6ae7f5d49a2234bd5cd477ad0794950d6 6294 - languageName: node 6295 - linkType: hard 6296 - 6297 - "@react-native/codegen@npm:0.74.87": 6298 - version: 0.74.87 6299 - resolution: "@react-native/codegen@npm:0.74.87" 6300 - dependencies: 6301 - "@babel/parser": "npm:^7.20.0" 6286 + "@babel/parser": "npm:^7.25.3" 6302 6287 glob: "npm:^7.1.1" 6303 - hermes-parser: "npm:0.19.1" 6304 - invariant: "npm:^2.2.4" 6305 - jscodeshift: "npm:^0.14.0" 6306 - mkdirp: "npm:^0.5.1" 6307 - nullthrows: "npm:^1.1.1" 6308 - peerDependencies: 6309 - "@babel/preset-env": ^7.1.6 6310 - checksum: 10/4f962484bbde32cc7f70199c7a942d41620ef7c95f978129197fb0079d4a2371d7e385e1b30c98f84d66b2c2c9a4226a74c99b4f9fc334f1b4cba3c08e760df0 6311 - languageName: node 6312 - linkType: hard 6313 - 6314 - "@react-native/codegen@npm:0.74.88": 6315 - version: 0.74.88 6316 - resolution: "@react-native/codegen@npm:0.74.88" 6317 - dependencies: 6318 - "@babel/parser": "npm:^7.20.0" 6319 - glob: "npm:^7.1.1" 6320 - hermes-parser: "npm:0.19.1" 6288 + hermes-parser: "npm:0.23.1" 6321 6289 invariant: "npm:^2.2.4" 6322 6290 jscodeshift: "npm:^0.14.0" 6323 6291 mkdirp: "npm:^0.5.1" ··· 6325 6293 yargs: "npm:^17.6.2" 6326 6294 peerDependencies: 6327 6295 "@babel/preset-env": ^7.1.6 6328 - checksum: 10/e2e796b6e3df526fc2a7f18a17062316b7bedb82848df5cece2a5510fa87fdb12aac2f19ac6db532b57f63ee4d4d6df1304b0cec2bb33e72e68058dc57b93221 6296 + checksum: 10/e1c48b7cef00a2fe717774544f71512fefdf0b083def6b23f5534e6402ac69b2b6e280e0b46841d40d53c6cd45bf652fde68b690d6b3361c656b83f3683517b1 6329 6297 languageName: node 6330 6298 linkType: hard 6331 6299 6332 - "@react-native/community-cli-plugin@npm:0.74.88": 6333 - version: 0.74.88 6334 - resolution: "@react-native/community-cli-plugin@npm:0.74.88" 6300 + "@react-native/community-cli-plugin@npm:0.76.2": 6301 + version: 0.76.2 6302 + resolution: "@react-native/community-cli-plugin@npm:0.76.2" 6335 6303 dependencies: 6336 - "@react-native-community/cli-server-api": "npm:13.6.9" 6337 - "@react-native-community/cli-tools": "npm:13.6.9" 6338 - "@react-native/dev-middleware": "npm:0.74.88" 6339 - "@react-native/metro-babel-transformer": "npm:0.74.88" 6304 + "@react-native/dev-middleware": "npm:0.76.2" 6305 + "@react-native/metro-babel-transformer": "npm:0.76.2" 6340 6306 chalk: "npm:^4.0.0" 6341 6307 execa: "npm:^5.1.1" 6342 - metro: "npm:^0.80.3" 6343 - metro-config: "npm:^0.80.3" 6344 - metro-core: "npm:^0.80.3" 6308 + invariant: "npm:^2.2.4" 6309 + metro: "npm:^0.81.0" 6310 + metro-config: "npm:^0.81.0" 6311 + metro-core: "npm:^0.81.0" 6345 6312 node-fetch: "npm:^2.2.0" 6346 - querystring: "npm:^0.2.1" 6347 6313 readline: "npm:^1.3.0" 6348 - checksum: 10/8b13a8c349b449175f136bdde523f5382634e6c5bd044bc50f54ebdb14297a01c2ea93147968cbfc454161dbb1cfac8e246d85d16404b99411e68f673324f65e 6314 + semver: "npm:^7.1.3" 6315 + peerDependencies: 6316 + "@react-native-community/cli-server-api": "*" 6317 + peerDependenciesMeta: 6318 + "@react-native-community/cli-server-api": 6319 + optional: true 6320 + checksum: 10/87f416d1dbf131e7389cec86662c3cdf0bd751648fac51cdfe485e5a28d6a73201c846452cf9d189b377af63868dae14e4bc71bca24abfb04fb85baf184c8dcc 6349 6321 languageName: node 6350 6322 linkType: hard 6351 6323 6352 - "@react-native/debugger-frontend@npm:0.74.85": 6353 - version: 0.74.85 6354 - resolution: "@react-native/debugger-frontend@npm:0.74.85" 6355 - checksum: 10/e0db8781515c843cb2c11deacfab84ea9aa9927a9869c981356afcacbc717c1542eb140b316779e768348de3d709108b0901c4be8589d1e7bd6eb2f84db79a28 6324 + "@react-native/debugger-frontend@npm:0.76.2": 6325 + version: 0.76.2 6326 + resolution: "@react-native/debugger-frontend@npm:0.76.2" 6327 + checksum: 10/a6d68a26e873e1ec0ba5d8d3a865e633d8d4eb58041aa37462c6d02dcff7b098806fc91217a13ee9e148feef761f98fc478124863ce0245894b464b6553be158 6356 6328 languageName: node 6357 6329 linkType: hard 6358 6330 6359 - "@react-native/debugger-frontend@npm:0.74.88": 6360 - version: 0.74.88 6361 - resolution: "@react-native/debugger-frontend@npm:0.74.88" 6362 - checksum: 10/b41a27f7b7ade8e9e56e64b2085f0100dd3f3318bac05f5a4bb3c7d4d5648475a6220c4658283a49aac6bd1b52d8e93d126bffae1a59e950cbd60783f512899d 6363 - languageName: node 6364 - linkType: hard 6365 - 6366 - "@react-native/dev-middleware@npm:0.74.85": 6367 - version: 0.74.85 6368 - resolution: "@react-native/dev-middleware@npm:0.74.85" 6369 - dependencies: 6370 - "@isaacs/ttlcache": "npm:^1.4.1" 6371 - "@react-native/debugger-frontend": "npm:0.74.85" 6372 - "@rnx-kit/chromium-edge-launcher": "npm:^1.0.0" 6373 - chrome-launcher: "npm:^0.15.2" 6374 - connect: "npm:^3.6.5" 6375 - debug: "npm:^2.2.0" 6376 - node-fetch: "npm:^2.2.0" 6377 - nullthrows: "npm:^1.1.1" 6378 - open: "npm:^7.0.3" 6379 - selfsigned: "npm:^2.4.1" 6380 - serve-static: "npm:^1.13.1" 6381 - temp-dir: "npm:^2.0.0" 6382 - ws: "npm:^6.2.2" 6383 - checksum: 10/3a6b566fcce6e35054e9b957724dfed2a3e45c986640e4cca419a32c4518dac0ae7bf9440380b33a8f0b125e05ac44d4300e839d51980126aa0a81ea07a73a33 6384 - languageName: node 6385 - linkType: hard 6386 - 6387 - "@react-native/dev-middleware@npm:0.74.88": 6388 - version: 0.74.88 6389 - resolution: "@react-native/dev-middleware@npm:0.74.88" 6331 + "@react-native/dev-middleware@npm:0.76.2": 6332 + version: 0.76.2 6333 + resolution: "@react-native/dev-middleware@npm:0.76.2" 6390 6334 dependencies: 6391 6335 "@isaacs/ttlcache": "npm:^1.4.1" 6392 - "@react-native/debugger-frontend": "npm:0.74.88" 6393 - "@rnx-kit/chromium-edge-launcher": "npm:^1.0.0" 6336 + "@react-native/debugger-frontend": "npm:0.76.2" 6394 6337 chrome-launcher: "npm:^0.15.2" 6338 + chromium-edge-launcher: "npm:^0.2.0" 6395 6339 connect: "npm:^3.6.5" 6396 6340 debug: "npm:^2.2.0" 6397 - node-fetch: "npm:^2.2.0" 6398 6341 nullthrows: "npm:^1.1.1" 6399 6342 open: "npm:^7.0.3" 6400 6343 selfsigned: "npm:^2.4.1" 6401 6344 serve-static: "npm:^1.13.1" 6402 - temp-dir: "npm:^2.0.0" 6403 - ws: "npm:^6.2.2" 6404 - checksum: 10/9c28a7966cbf42da7acb5cfd52d38a919f97b5240cfb7f832effd93f84cada05bc1644f1d5b1a530b102a54f78231db021fc32d8c5f035dbe5bd140d1ad5f17b 6345 + ws: "npm:^6.2.3" 6346 + checksum: 10/8e6ff1e285d3715e9d340147c4e3ae45e741d9b9f5a1f2a5e13d8c2fb6adfbbe55d79d74355582ebeccce978326e7a6dd481915ccaa84fe94df674213d464d3b 6405 6347 languageName: node 6406 6348 linkType: hard 6407 6349 6408 - "@react-native/gradle-plugin@npm:0.74.88": 6409 - version: 0.74.88 6410 - resolution: "@react-native/gradle-plugin@npm:0.74.88" 6411 - checksum: 10/9422510b68d7038e6d2a6dfef69b89fbfd0508e2bf0c63d277a441b4c2bb5df85e1f29d7b28316964278efdf778ae40f2bbba57e2268dd95fa3ce4084f040ad1 6350 + "@react-native/gradle-plugin@npm:0.76.2": 6351 + version: 0.76.2 6352 + resolution: "@react-native/gradle-plugin@npm:0.76.2" 6353 + checksum: 10/0f23a2684661589d1d0bff6cf96661b752798fa2d21b51a9e7c123736d609e1cfd1699f7f9900dd59554d3d84bdd17ea50e29380fa827cb74cf83a14b315112c 6412 6354 languageName: node 6413 6355 linkType: hard 6414 6356 6415 - "@react-native/js-polyfills@npm:0.74.88": 6416 - version: 0.74.88 6417 - resolution: "@react-native/js-polyfills@npm:0.74.88" 6418 - checksum: 10/97d3d6205d79e6bc92c72229e0ad5c239f8b8220ff18aef002641174886938f0b51492f2002a37eb6586815f586b72666e96fb404fdde15798131e50064fbe6a 6357 + "@react-native/js-polyfills@npm:0.76.2": 6358 + version: 0.76.2 6359 + resolution: "@react-native/js-polyfills@npm:0.76.2" 6360 + checksum: 10/6c38ec7266e41c4f7cdd0dfc0f71c76b9338fd8cc6de0110d23ed35efbae56e3975587a5dce28bc803c7f7bc8e73ab5a6ec06209f01b242312738c2727d32f3f 6419 6361 languageName: node 6420 6362 linkType: hard 6421 6363 6422 - "@react-native/metro-babel-transformer@npm:0.74.88": 6423 - version: 0.74.88 6424 - resolution: "@react-native/metro-babel-transformer@npm:0.74.88" 6364 + "@react-native/metro-babel-transformer@npm:0.76.2": 6365 + version: 0.76.2 6366 + resolution: "@react-native/metro-babel-transformer@npm:0.76.2" 6425 6367 dependencies: 6426 - "@babel/core": "npm:^7.20.0" 6427 - "@react-native/babel-preset": "npm:0.74.88" 6428 - hermes-parser: "npm:0.19.1" 6368 + "@babel/core": "npm:^7.25.2" 6369 + "@react-native/babel-preset": "npm:0.76.2" 6370 + hermes-parser: "npm:0.23.1" 6429 6371 nullthrows: "npm:^1.1.1" 6430 6372 peerDependencies: 6431 6373 "@babel/core": "*" 6432 - checksum: 10/c9dfc9043c862c4322df61169a157fc46f31ce381939f17c0edc36d45798a6f9700c9aae81aafa730a3a54d864aefbc98fc6a993702e47eb7e9a5231f43f53c8 6374 + checksum: 10/7fae9cd6e6417ad3d2cdd4085f1ab760be8cb92dd64905b41a2ed17c6bce1bd8fbc3af9ad10144acbfd212374b54a24596ba81f851cc3a1158643fc269301bb1 6433 6375 languageName: node 6434 6376 linkType: hard 6435 6377 ··· 6440 6382 languageName: node 6441 6383 linkType: hard 6442 6384 6443 - "@react-native/normalize-colors@npm:0.74.85, @react-native/normalize-colors@npm:^0.74.1": 6444 - version: 0.74.85 6445 - resolution: "@react-native/normalize-colors@npm:0.74.85" 6446 - checksum: 10/741a162ba6a319d0763c60af1e08159715acc945564d098cf13d14df684fd7cd496bd311155cf4b18d703aa4e362d639edff556c3a3a8b34043acdcd6601ec0d 6385 + "@react-native/normalize-colors@npm:0.76.2": 6386 + version: 0.76.2 6387 + resolution: "@react-native/normalize-colors@npm:0.76.2" 6388 + checksum: 10/c1ea06904235191c72d72e80bc096ea7ea412e4cfe295fa4bff651d6af6e77f5c73c4d1fc7988d4d8d29a784d762c5fce4208aa69dc7c038a2528972f106a209 6447 6389 languageName: node 6448 6390 linkType: hard 6449 6391 6450 - "@react-native/normalize-colors@npm:0.74.88": 6451 - version: 0.74.88 6452 - resolution: "@react-native/normalize-colors@npm:0.74.88" 6453 - checksum: 10/997f3c4f50832a34b0624dfcfc4b8c33ce84462e62d4abc4bee8cd71aea9ed1f378a28f792408813bfb26fd903800595930d643721014b684a309ac814edacfa 6392 + "@react-native/normalize-colors@npm:^0.74.1": 6393 + version: 0.74.85 6394 + resolution: "@react-native/normalize-colors@npm:0.74.85" 6395 + checksum: 10/741a162ba6a319d0763c60af1e08159715acc945564d098cf13d14df684fd7cd496bd311155cf4b18d703aa4e362d639edff556c3a3a8b34043acdcd6601ec0d 6454 6396 languageName: node 6455 6397 linkType: hard 6456 6398 6457 - "@react-native/virtualized-lists@npm:0.74.88": 6458 - version: 0.74.88 6459 - resolution: "@react-native/virtualized-lists@npm:0.74.88" 6399 + "@react-native/virtualized-lists@npm:0.76.2": 6400 + version: 0.76.2 6401 + resolution: "@react-native/virtualized-lists@npm:0.76.2" 6460 6402 dependencies: 6461 6403 invariant: "npm:^2.2.4" 6462 6404 nullthrows: "npm:^1.1.1" ··· 6467 6409 peerDependenciesMeta: 6468 6410 "@types/react": 6469 6411 optional: true 6470 - checksum: 10/05b0c7c93b03786953461f481a194452caf675b405f167c8981ce123d6ea9dcc2a4e423338a93dd0037b1160073b4ea3d0be0766a34a94f898906cfaea6a3ae3 6412 + checksum: 10/5ace2ed7c3159f088667a3c15b87d8055f4bbd79188cba3f6e96c296732b295b7ca6957d8948bddf38a9e8122b0634bdc0d1f06d4e2ca9000409a5c9004745b5 6471 6413 languageName: node 6472 6414 linkType: hard 6473 6415 ··· 6575 6517 languageName: node 6576 6518 linkType: hard 6577 6519 6520 + "@reduxjs/toolkit@npm:^2.3.0": 6521 + version: 2.3.0 6522 + resolution: "@reduxjs/toolkit@npm:2.3.0" 6523 + dependencies: 6524 + immer: "npm:^10.0.3" 6525 + redux: "npm:^5.0.1" 6526 + redux-thunk: "npm:^3.1.0" 6527 + reselect: "npm:^5.1.0" 6528 + peerDependencies: 6529 + react: ^16.9.0 || ^17.0.0 || ^18 6530 + react-redux: ^7.2.1 || ^8.1.3 || ^9.0.0 6531 + peerDependenciesMeta: 6532 + react: 6533 + optional: true 6534 + react-redux: 6535 + optional: true 6536 + checksum: 10/3aa0bf29ce4dfe4ae75416cb5338a91ccc89f06c5a2fcdae5dc137dca02b3990c46306062696e158869ac399b50cae6476e5536902df9bd1ad1a998195221af6 6537 + languageName: node 6538 + linkType: hard 6539 + 6578 6540 "@reforged/maker-appimage@https://gitpkg.vercel.app/aquareum-tv/ReForged/makers/appimage?90c4b7e8449250fe2a83fb2df0f41a3fcc1b37ca": 6579 6541 version: 4.0.2 6580 6542 resolution: "@reforged/maker-appimage@https://gitpkg.vercel.app/aquareum-tv/ReForged/makers/appimage?90c4b7e8449250fe2a83fb2df0f41a3fcc1b37ca" ··· 6583 6545 "@spacingbat3/lss": "npm:^1.0.0" 6584 6546 semver: "npm:^7.3.8" 6585 6547 checksum: 10/8bb04678ddbe9d1d4c0f54e1c668b1ec74f6d159af9255c7b6e4a7d29ec3b098461591ac7de7bb214d1e39c27094e0e4831fac928f0aa234c8e39ed17b400174 6586 - languageName: node 6587 - linkType: hard 6588 - 6589 - "@rnx-kit/chromium-edge-launcher@npm:^1.0.0": 6590 - version: 1.0.0 6591 - resolution: "@rnx-kit/chromium-edge-launcher@npm:1.0.0" 6592 - dependencies: 6593 - "@types/node": "npm:^18.0.0" 6594 - escape-string-regexp: "npm:^4.0.0" 6595 - is-wsl: "npm:^2.2.0" 6596 - lighthouse-logger: "npm:^1.0.0" 6597 - mkdirp: "npm:^1.0.4" 6598 - rimraf: "npm:^3.0.2" 6599 - checksum: 10/b4f3775da4140f071075f4cfd96e47a57f3212385f9865196a4fae38f30a33a31f78b1937c83d56aea95ad0672bf200cd4d25487e32e8b4735d0b899b65e527f 6600 6548 languageName: node 6601 6549 linkType: hard 6602 6550 ··· 6697 6645 component-type: "npm:^1.2.1" 6698 6646 join-component: "npm:^1.1.0" 6699 6647 checksum: 10/4e0b097de2c564673acceb5a0688bb8cf045bab4a1ffed1be19293a6bd2859af723e0d012349ff1d51433a6aad19f729383a302c3c0a9fc831e251cd16ade5ad 6700 - languageName: node 6701 - linkType: hard 6702 - 6703 - "@sideway/address@npm:^4.1.5": 6704 - version: 4.1.5 6705 - resolution: "@sideway/address@npm:4.1.5" 6706 - dependencies: 6707 - "@hapi/hoek": "npm:^9.0.0" 6708 - checksum: 10/c4c73ac0339504f34e016d3a687118e7ddf197c1c968579572123b67b230be84caa705f0f634efdfdde7f2e07a6e0224b3c70665dc420d8bc95bf400cfc4c998 6709 - languageName: node 6710 - linkType: hard 6711 - 6712 - "@sideway/formula@npm:^3.0.1": 6713 - version: 3.0.1 6714 - resolution: "@sideway/formula@npm:3.0.1" 6715 - checksum: 10/8d3ee7f80df4e5204b2cbe92a2a711ca89684965a5c9eb3b316b7051212d3522e332a65a0bb2a07cc708fcd1d0b27fcb30f43ff0bcd5089d7006c7160a89eefe 6716 - languageName: node 6717 - linkType: hard 6718 - 6719 - "@sideway/pinpoint@npm:^2.0.0": 6720 - version: 2.0.0 6721 - resolution: "@sideway/pinpoint@npm:2.0.0" 6722 - checksum: 10/1ed21800128b2b23280ba4c9db26c8ff6142b97a8683f17639fd7f2128aa09046461574800b30fb407afc5b663c2331795ccf3b654d4b38fa096e41a5c786bf8 6723 6648 languageName: node 6724 6649 linkType: hard 6725 6650 ··· 9482 9407 languageName: node 9483 9408 linkType: hard 9484 9409 9410 + "@types/babel__core@npm:^7.1.14": 9411 + version: 7.20.5 9412 + resolution: "@types/babel__core@npm:7.20.5" 9413 + dependencies: 9414 + "@babel/parser": "npm:^7.20.7" 9415 + "@babel/types": "npm:^7.20.7" 9416 + "@types/babel__generator": "npm:*" 9417 + "@types/babel__template": "npm:*" 9418 + "@types/babel__traverse": "npm:*" 9419 + checksum: 10/c32838d280b5ab59d62557f9e331d3831f8e547ee10b4f85cb78753d97d521270cebfc73ce501e9fb27fe71884d1ba75e18658692c2f4117543f0fc4e3e118b3 9420 + languageName: node 9421 + linkType: hard 9422 + 9423 + "@types/babel__generator@npm:*": 9424 + version: 7.6.8 9425 + resolution: "@types/babel__generator@npm:7.6.8" 9426 + dependencies: 9427 + "@babel/types": "npm:^7.0.0" 9428 + checksum: 10/b53c215e9074c69d212402990b0ca8fa57595d09e10d94bda3130aa22b55d796e50449199867879e4ea0ee968f3a2099e009cfb21a726a53324483abbf25cd30 9429 + languageName: node 9430 + linkType: hard 9431 + 9485 9432 "@types/babel__plugin-transform-runtime@npm:^7": 9486 9433 version: 7.9.5 9487 9434 resolution: "@types/babel__plugin-transform-runtime@npm:7.9.5" 9488 9435 checksum: 10/a4b0ec2c48af069c79a7df694ca6d95a96cf1284481e38dfd6817cb0048b9f317703ac8d151041740a8fea7e50153a1d2e6bf0bd0d33ed5a26a7be3412e24224 9436 + languageName: node 9437 + linkType: hard 9438 + 9439 + "@types/babel__template@npm:*": 9440 + version: 7.4.4 9441 + resolution: "@types/babel__template@npm:7.4.4" 9442 + dependencies: 9443 + "@babel/parser": "npm:^7.1.0" 9444 + "@babel/types": "npm:^7.0.0" 9445 + checksum: 10/d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 9446 + languageName: node 9447 + linkType: hard 9448 + 9449 + "@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": 9450 + version: 7.20.6 9451 + resolution: "@types/babel__traverse@npm:7.20.6" 9452 + dependencies: 9453 + "@babel/types": "npm:^7.20.7" 9454 + checksum: 10/63d13a3789aa1e783b87a8b03d9fb2c2c90078de7782422feff1631b8c2a25db626e63a63ac5a1465d47359201c73069dacb4b52149d17c568187625da3064ae 9489 9455 languageName: node 9490 9456 linkType: hard 9491 9457 ··· 9612 9578 languageName: node 9613 9579 linkType: hard 9614 9580 9581 + "@types/graceful-fs@npm:^4.1.3": 9582 + version: 4.1.9 9583 + resolution: "@types/graceful-fs@npm:4.1.9" 9584 + dependencies: 9585 + "@types/node": "npm:*" 9586 + checksum: 10/79d746a8f053954bba36bd3d94a90c78de995d126289d656fb3271dd9f1229d33f678da04d10bce6be440494a5a73438e2e363e92802d16b8315b051036c5256 9587 + languageName: node 9588 + linkType: hard 9589 + 9615 9590 "@types/hammerjs@npm:^2.0.36": 9616 9591 version: 2.0.46 9617 9592 resolution: "@types/hammerjs@npm:2.0.46" ··· 9662 9637 dependencies: 9663 9638 "@types/istanbul-lib-coverage": "npm:*" 9664 9639 checksum: 10/b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 9665 - languageName: node 9666 - linkType: hard 9667 - 9668 - "@types/istanbul-reports@npm:^1.1.1": 9669 - version: 1.1.2 9670 - resolution: "@types/istanbul-reports@npm:1.1.2" 9671 - dependencies: 9672 - "@types/istanbul-lib-coverage": "npm:*" 9673 - "@types/istanbul-lib-report": "npm:*" 9674 - checksum: 10/00866e815d1e68d0a590d691506937b79d8d65ad8eab5ed34dbfee66136c7c0f4ea65327d32046d5fe469f22abea2b294987591dc66365ebc3991f7e413b2d78 9675 9640 languageName: node 9676 9641 linkType: hard 9677 9642 ··· 9792 9757 languageName: node 9793 9758 linkType: hard 9794 9759 9795 - "@types/node@npm:^18.0.0": 9796 - version: 18.19.39 9797 - resolution: "@types/node@npm:18.19.39" 9798 - dependencies: 9799 - undici-types: "npm:~5.26.4" 9800 - checksum: 10/d2fe84adf087a4184217b666f675e99678060d15f84882a4a1c3e49c3dca521a7e99a201a3c073c2b60b00419f1f4c3b357d8f7397f65e400dc3b77b0145a1da 9801 - languageName: node 9802 - linkType: hard 9803 - 9804 9760 "@types/node@npm:^20.9.0": 9805 9761 version: 20.16.5 9806 9762 resolution: "@types/node@npm:20.16.5" ··· 9954 9910 languageName: node 9955 9911 linkType: hard 9956 9912 9913 + "@types/use-sync-external-store@npm:^0.0.3": 9914 + version: 0.0.3 9915 + resolution: "@types/use-sync-external-store@npm:0.0.3" 9916 + checksum: 10/161ddb8eec5dbe7279ac971531217e9af6b99f7783213566d2b502e2e2378ea19cf5e5ea4595039d730aa79d3d35c6567d48599f69773a02ffcff1776ec2a44e 9917 + languageName: node 9918 + linkType: hard 9919 + 9957 9920 "@types/uuid@npm:^10.0.0": 9958 9921 version: 10.0.0 9959 9922 resolution: "@types/uuid@npm:10.0.0" ··· 9977 9940 languageName: node 9978 9941 linkType: hard 9979 9942 9980 - "@types/yargs@npm:^13.0.0": 9981 - version: 13.0.12 9982 - resolution: "@types/yargs@npm:13.0.12" 9983 - dependencies: 9984 - "@types/yargs-parser": "npm:*" 9985 - checksum: 10/d970b79cf16100328fffb615a4d1617332384ca6966cc15bf6ad11feef44e598045d2247eb94e49159ef1211842911e9c3e92a34a44bd0f671d1e01af8103e02 9986 - languageName: node 9987 - linkType: hard 9988 - 9989 - "@types/yargs@npm:^15.0.0": 9990 - version: 15.0.19 9991 - resolution: "@types/yargs@npm:15.0.19" 9992 - dependencies: 9993 - "@types/yargs-parser": "npm:*" 9994 - checksum: 10/c3abcd3472c32c02702f365dc1702a0728562deb8a8c61f3ce2161958d756cc033f7d78567565b4eba62f5869e9b5eac93d4c1dcb2c97af17aafda8f9f892b4b 9995 - languageName: node 9996 - linkType: hard 9997 - 9998 9943 "@types/yargs@npm:^17.0.8": 9999 9944 version: 17.0.32 10000 9945 resolution: "@types/yargs@npm:17.0.32" ··· 10129 10074 languageName: node 10130 10075 linkType: hard 10131 10076 10132 - "@urql/core@npm:2.3.6": 10133 - version: 2.3.6 10134 - resolution: "@urql/core@npm:2.3.6" 10135 - dependencies: 10136 - "@graphql-typed-document-node/core": "npm:^3.1.0" 10137 - wonka: "npm:^4.0.14" 10138 - peerDependencies: 10139 - graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 10140 - checksum: 10/83b239f5559f380fff8f88ddeac15977443d97b83c47b2066315194e37a5b27b1b1f777a588f8ecb3bb823f522755a20337d3437119721328fd53f08fa55b361 10141 - languageName: node 10142 - linkType: hard 10143 - 10144 - "@urql/core@npm:>=2.3.1": 10145 - version: 5.0.4 10146 - resolution: "@urql/core@npm:5.0.4" 10077 + "@urql/core@npm:^5.0.0, @urql/core@npm:^5.0.6": 10078 + version: 5.0.8 10079 + resolution: "@urql/core@npm:5.0.8" 10147 10080 dependencies: 10148 10081 "@0no-co/graphql.web": "npm:^1.0.5" 10149 10082 wonka: "npm:^6.3.2" 10150 - checksum: 10/fe3ee871bde8ee8931d1f791a1475f8bf97940eb93eaa690b11dbfcfa9409644ea87c204245f64e22ea1ddeb16a55e7532b765c18eedcdd9ae8032981889d06a 10083 + checksum: 10/c973e6e89785ae45ef447726557143ce7bc9d9f5b887297f0b315b2ff546d20bdfb814a4c899644bd5c5814761fc8d75a8ac66f67f3d57a3c2eadd3ec88adb60 10151 10084 languageName: node 10152 10085 linkType: hard 10153 10086 10154 - "@urql/exchange-retry@npm:0.3.0": 10155 - version: 0.3.0 10156 - resolution: "@urql/exchange-retry@npm:0.3.0" 10087 + "@urql/exchange-retry@npm:^1.3.0": 10088 + version: 1.3.0 10089 + resolution: "@urql/exchange-retry@npm:1.3.0" 10157 10090 dependencies: 10158 - "@urql/core": "npm:>=2.3.1" 10159 - wonka: "npm:^4.0.14" 10091 + "@urql/core": "npm:^5.0.0" 10092 + wonka: "npm:^6.3.2" 10160 10093 peerDependencies: 10161 - graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 10162 - checksum: 10/db9d611a5c66afa0b9953d2d622ad19b191da631841a1a3231d1a837ff1bd756e26cb87569e9f124d5503866f36c77f2bc33fa2f86fba20b1b61bd476be9261b 10094 + "@urql/core": ^5.0.0 10095 + checksum: 10/5bbc914a58a6de6ee7146d55fa8d6454cbf0fb5f6d7a3f7b1770d95dfbaa9e44fad041d4655f00f38ce87f12b52fdd694a1ccb8df487265185f5b425d5e12177 10163 10096 languageName: node 10164 10097 linkType: hard 10165 10098 ··· 10847 10780 languageName: node 10848 10781 linkType: hard 10849 10782 10850 - "accepts@npm:^1.3.7, accepts@npm:^1.3.8, accepts@npm:~1.3.4, accepts@npm:~1.3.5, accepts@npm:~1.3.7, accepts@npm:~1.3.8": 10783 + "accepts@npm:^1.3.7, accepts@npm:^1.3.8, accepts@npm:~1.3.4, accepts@npm:~1.3.5, accepts@npm:~1.3.8": 10851 10784 version: 1.3.8 10852 10785 resolution: "accepts@npm:1.3.8" 10853 10786 dependencies: ··· 11057 10990 languageName: node 11058 10991 linkType: hard 11059 10992 11060 - "ansi-fragments@npm:^0.2.1": 11061 - version: 0.2.1 11062 - resolution: "ansi-fragments@npm:0.2.1" 11063 - dependencies: 11064 - colorette: "npm:^1.0.7" 11065 - slice-ansi: "npm:^2.0.0" 11066 - strip-ansi: "npm:^5.0.0" 11067 - checksum: 10/2380829941c8884290f65ed0af9ed2e0449efc24d8d15d0bc451f0836f14a70076ddd1322dc2c60372874c4598228ca707edf578ed353f8054cfbf872a7ecac2 11068 - languageName: node 11069 - linkType: hard 11070 - 11071 10993 "ansi-html-community@npm:^0.0.8": 11072 10994 version: 0.0.8 11073 10995 resolution: "ansi-html-community@npm:0.0.8" ··· 11077 10999 languageName: node 11078 11000 linkType: hard 11079 11001 11080 - "ansi-regex@npm:^4.0.0, ansi-regex@npm:^4.1.0": 11002 + "ansi-regex@npm:^4.1.0": 11081 11003 version: 4.1.1 11082 11004 resolution: "ansi-regex@npm:4.1.1" 11083 11005 checksum: 10/b1a6ee44cb6ecdabaa770b2ed500542714d4395d71c7e5c25baa631f680fb2ad322eb9ba697548d498a6fd366949fc8b5bfcf48d49a32803611f648005b01888 ··· 11098 11020 languageName: node 11099 11021 linkType: hard 11100 11022 11101 - "ansi-styles@npm:^3.2.0, ansi-styles@npm:^3.2.1": 11023 + "ansi-styles@npm:^3.2.1": 11102 11024 version: 3.2.1 11103 11025 resolution: "ansi-styles@npm:3.2.1" 11104 11026 dependencies: ··· 11147 11069 languageName: node 11148 11070 linkType: hard 11149 11071 11150 - "appdirsjs@npm:^1.2.4": 11151 - version: 1.2.7 11152 - resolution: "appdirsjs@npm:1.2.7" 11153 - checksum: 10/8f6cb9cc18de2b38e2f5efddf764c5f0331aba4168ee28cb7370b98e1dc69316352b9a936acf4d628b4dcc510d77b1645ed4b68ab2231e302f835d35e11348d3 11154 - languageName: node 11155 - linkType: hard 11156 - 11157 11072 "appdmg@npm:^0.6.4": 11158 11073 version: 0.6.6 11159 11074 resolution: "appdmg@npm:0.6.6" ··· 11230 11145 version: 0.0.0-use.local 11231 11146 resolution: "aquareum-monorepo@workspace:." 11232 11147 dependencies: 11148 + "@atproto/api": "npm:^0.13.16" 11149 + "@atproto/jwk-webcrypto": "npm:^0.1.2" 11150 + "@atproto/oauth-client-browser": "npm:^0.3.1" 11233 11151 firebase-admin: "npm:^12.7.0" 11234 11152 husky: "npm:^9.1.6" 11235 11153 lerna: "npm:^8.1.9" ··· 11242 11160 version: 0.0.0-use.local 11243 11161 resolution: "aquareum@workspace:js/app" 11244 11162 dependencies: 11163 + "@atproto-labs/pipe": "npm:^0.1.0" 11164 + "@atproto/jwk-jose": "npm:^0.1.2" 11165 + "@atproto/oauth-client": "npm:^0.3.1" 11245 11166 "@babel/core": "npm:^7.26.0" 11246 11167 "@babel/plugin-proposal-export-default-from": "npm:^7.25.9" 11247 11168 "@babel/plugin-syntax-export-default-from": "npm:^7.25.9" ··· 11249 11170 "@babel/plugin-transform-private-methods": "npm:^7.25.9" 11250 11171 "@babel/plugin-transform-private-property-in-object": "npm:^7.25.9" 11251 11172 "@babel/plugin-transform-runtime": "npm:^7.25.9" 11252 - "@expo/metro-config": "npm:~0.18.11" 11253 - "@expo/metro-runtime": "npm:~3.2.3" 11173 + "@bacons/text-decoder": "npm:^0.0.0" 11174 + "@expo/metro-config": "npm:~0.19.0" 11175 + "@expo/metro-runtime": "npm:~4.0.0" 11254 11176 "@rainbow-me/rainbowkit": "npm:2.2.0" 11255 11177 "@react-native-firebase/app": "npm:^21.3.0" 11256 11178 "@react-native-firebase/messaging": "npm:^21.3.0" ··· 11258 11180 "@react-navigation/drawer": "npm:^6.7.2" 11259 11181 "@react-navigation/native": "npm:^6.1.18" 11260 11182 "@react-navigation/native-stack": "npm:^6.11.0" 11183 + "@reduxjs/toolkit": "npm:^2.3.0" 11261 11184 "@tamagui/babel-plugin": "npm:^1.116.12" 11262 11185 "@tamagui/config": "npm:^1.116.12" 11263 11186 "@tamagui/lucide-icons": "npm:^1.116.12" ··· 11267 11190 "@types/babel__plugin-transform-runtime": "npm:^7" 11268 11191 "@types/react": "npm:~18.3.12" 11269 11192 "@types/uuid": "npm:^10.0.0" 11270 - babel-preset-expo: "npm:^11.0.15" 11193 + babel-preset-expo: "npm:~12.0.0" 11271 11194 burnt: "npm:^0.12.2" 11272 11195 chrono-node: "npm:^2.7.7" 11273 - expo: "npm:~51.0.38" 11274 - expo-build-properties: "npm:^0.12.5" 11275 - expo-dev-client: "npm:~4.0.28" 11276 - expo-font: "npm:~12.0.10" 11277 - expo-linking: "npm:~6.3.1" 11278 - expo-notifications: "npm:~0.28.19" 11279 - expo-splash-screen: "npm:~0.27.6" 11280 - expo-status-bar: "npm:^1.12.1" 11281 - expo-system-ui: "npm:~3.0.7" 11282 - expo-updates: "npm:~0.25.27" 11283 - expo-video: "npm:^1.2.7" 11284 - expo-web-browser: "npm:~13.0.3" 11196 + expo: "npm:~52.0.8" 11197 + expo-build-properties: "npm:~0.13.1" 11198 + expo-dev-client: "npm:~5.0.3" 11199 + expo-file-system: "npm:~18.0.4" 11200 + expo-font: "npm:~13.0.1" 11201 + expo-linking: "npm:~7.0.3" 11202 + expo-notifications: "npm:~0.29.8" 11203 + expo-splash-screen: "npm:~0.29.11" 11204 + expo-sqlite: "npm:~15.0.3" 11205 + expo-status-bar: "npm:~2.0.0" 11206 + expo-system-ui: "npm:~4.0.3" 11207 + expo-updates: "npm:~0.26.7" 11208 + expo-video: "npm:~2.0.1" 11209 + expo-web-browser: "npm:~14.0.1" 11285 11210 hls.js: "npm:^1.5.17" 11286 11211 react: "npm:18.3.1" 11287 11212 react-dom: "npm:18.3.1" 11288 - react-native: "npm:0.74.6" 11213 + react-native: "npm:0.76.2" 11289 11214 react-native-gesture-handler: "npm:~2.20.2" 11290 11215 react-native-markdown-display: "npm:^7.0.2" 11291 11216 react-native-reanimated: "npm:~3.16.1" 11292 - react-native-safe-area-context: "npm:4.14.0" 11293 - react-native-screens: "npm:3.35.0" 11217 + react-native-safe-area-context: "npm:4.12.0" 11218 + react-native-screens: "npm:~4.1.0" 11294 11219 react-native-svg: "npm:15.8.0" 11295 11220 react-native-web: "npm:^0.19.13" 11296 - react-native-webview: "npm:13.12.3" 11221 + react-native-webview: "npm:13.12.4" 11222 + react-redux: "npm:^9.1.2" 11297 11223 tamagui: "npm:^1.116.12" 11298 - typescript: "npm:~5.6.3" 11224 + typescript: "npm:~5.3.3" 11299 11225 ua-parser-js: "npm:^2.0.0-rc.1" 11300 11226 uuid: "npm:^11.0.2" 11301 11227 viem: "npm:^2.21.40" ··· 11320 11246 languageName: node 11321 11247 linkType: hard 11322 11248 11323 - "arg@npm:5.0.2": 11324 - version: 5.0.2 11325 - resolution: "arg@npm:5.0.2" 11326 - checksum: 10/92fe7de222054a060fd2329e92e867410b3ea260328147ee3fb7855f78efae005f4087e698d4e688a856893c56bb09951588c40f2c901cf6996cd8cd7bcfef2c 11327 - languageName: node 11328 - linkType: hard 11329 - 11330 11249 "arg@npm:^4.1.0": 11331 11250 version: 4.1.3 11332 11251 resolution: "arg@npm:4.1.3" 11333 11252 checksum: 10/969b491082f20cad166649fa4d2073ea9e974a4e5ac36247ca23d2e5a8b3cb12d60e9ff70a8acfe26d76566c71fd351ee5e6a9a6595157eb36f92b1fd64e1599 11253 + languageName: node 11254 + linkType: hard 11255 + 11256 + "arg@npm:^5.0.2": 11257 + version: 5.0.2 11258 + resolution: "arg@npm:5.0.2" 11259 + checksum: 10/92fe7de222054a060fd2329e92e867410b3ea260328147ee3fb7855f78efae005f4087e698d4e688a856893c56bb09951588c40f2c901cf6996cd8cd7bcfef2c 11334 11260 languageName: node 11335 11261 linkType: hard 11336 11262 ··· 11526 11452 languageName: node 11527 11453 linkType: hard 11528 11454 11529 - "astral-regex@npm:^1.0.0": 11530 - version: 1.0.0 11531 - resolution: "astral-regex@npm:1.0.0" 11532 - checksum: 10/93417fc0879531cd95ace2560a54df865c9461a3ac0714c60cbbaa5f1f85d2bee85489e78d82f70b911b71ac25c5f05fc5a36017f44c9bb33c701bee229ff848 11533 - languageName: node 11534 - linkType: hard 11535 - 11536 11455 "astral-regex@npm:^2.0.0": 11537 11456 version: 2.0.0 11538 11457 resolution: "astral-regex@npm:2.0.0" ··· 11616 11535 languageName: node 11617 11536 linkType: hard 11618 11537 11538 + "await-lock@npm:^2.2.2": 11539 + version: 2.2.2 11540 + resolution: "await-lock@npm:2.2.2" 11541 + checksum: 10/feb11f36768a8545879ed2d214b46aae484e6564ffa466af9212d5782897203770795cae01f813de04a46f66c0b8ee6bc690a0c435b04e00cad5a18ef0842e25 11542 + languageName: node 11543 + linkType: hard 11544 + 11619 11545 "axios@npm:^1.7.4": 11620 11546 version: 1.7.7 11621 11547 resolution: "axios@npm:1.7.7" ··· 11633 11559 peerDependencies: 11634 11560 "@babel/core": ^7.0.0-0 11635 11561 checksum: 10/2a1cb879019dffb08d17bec36e13c3a6d74c94773f41c1fd8b14de13f149cc34b705b0a1e07b42fcf35917b49d78db6ff0c5c3b00b202a5235013d517b5c6bbb 11562 + languageName: node 11563 + linkType: hard 11564 + 11565 + "babel-jest@npm:^29.7.0": 11566 + version: 29.7.0 11567 + resolution: "babel-jest@npm:29.7.0" 11568 + dependencies: 11569 + "@jest/transform": "npm:^29.7.0" 11570 + "@types/babel__core": "npm:^7.1.14" 11571 + babel-plugin-istanbul: "npm:^6.1.1" 11572 + babel-preset-jest: "npm:^29.6.3" 11573 + chalk: "npm:^4.0.0" 11574 + graceful-fs: "npm:^4.2.9" 11575 + slash: "npm:^3.0.0" 11576 + peerDependencies: 11577 + "@babel/core": ^7.8.0 11578 + checksum: 10/8a0953bd813b3a8926008f7351611055548869e9a53dd36d6e7e96679001f71e65fd7dbfe253265c3ba6a4e630dc7c845cf3e78b17d758ef1880313ce8fba258 11636 11579 languageName: node 11637 11580 linkType: hard 11638 11581 ··· 11649 11592 languageName: node 11650 11593 linkType: hard 11651 11594 11595 + "babel-plugin-istanbul@npm:^6.1.1": 11596 + version: 6.1.1 11597 + resolution: "babel-plugin-istanbul@npm:6.1.1" 11598 + dependencies: 11599 + "@babel/helper-plugin-utils": "npm:^7.0.0" 11600 + "@istanbuljs/load-nyc-config": "npm:^1.0.0" 11601 + "@istanbuljs/schema": "npm:^0.1.2" 11602 + istanbul-lib-instrument: "npm:^5.0.4" 11603 + test-exclude: "npm:^6.0.0" 11604 + checksum: 10/ffd436bb2a77bbe1942a33245d770506ab2262d9c1b3c1f1da7f0592f78ee7445a95bc2efafe619dd9c1b6ee52c10033d6c7d29ddefe6f5383568e60f31dfe8d 11605 + languageName: node 11606 + linkType: hard 11607 + 11608 + "babel-plugin-jest-hoist@npm:^29.6.3": 11609 + version: 29.6.3 11610 + resolution: "babel-plugin-jest-hoist@npm:29.6.3" 11611 + dependencies: 11612 + "@babel/template": "npm:^7.3.3" 11613 + "@babel/types": "npm:^7.3.3" 11614 + "@types/babel__core": "npm:^7.1.14" 11615 + "@types/babel__traverse": "npm:^7.0.6" 11616 + checksum: 10/9bfa86ec4170bd805ab8ca5001ae50d8afcb30554d236ba4a7ffc156c1a92452e220e4acbd98daefc12bf0216fccd092d0a2efed49e7e384ec59e0597a926d65 11617 + languageName: node 11618 + linkType: hard 11619 + 11652 11620 "babel-plugin-polyfill-corejs2@npm:^0.4.10": 11653 11621 version: 0.4.11 11654 11622 resolution: "babel-plugin-polyfill-corejs2@npm:0.4.11" ··· 11659 11627 peerDependencies: 11660 11628 "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 11661 11629 checksum: 10/9c79908bed61b9f52190f254e22d3dca6ce25769738642579ba8d23832f3f9414567a90d8367a31831fa45d9b9607ac43d8d07ed31167d8ca8cda22871f4c7a1 11662 - languageName: node 11663 - linkType: hard 11664 - 11665 - "babel-plugin-polyfill-corejs3@npm:^0.10.1": 11666 - version: 0.10.4 11667 - resolution: "babel-plugin-polyfill-corejs3@npm:0.10.4" 11668 - dependencies: 11669 - "@babel/helper-define-polyfill-provider": "npm:^0.6.1" 11670 - core-js-compat: "npm:^3.36.1" 11671 - peerDependencies: 11672 - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 11673 - checksum: 10/a69ed5a95bb55e9b7ea37307d56113f7e24054d479c15de6d50fa61388b5334bed1f9b6414cde6c575fa910a4de4d1ab4f2d22720967d57c4fec9d1b8f61b355 11674 11630 languageName: node 11675 11631 linkType: hard 11676 11632 ··· 11697 11653 languageName: node 11698 11654 linkType: hard 11699 11655 11700 - "babel-plugin-react-compiler@npm:0.0.0-experimental-592953e-20240517": 11701 - version: 0.0.0-experimental-592953e-20240517 11702 - resolution: "babel-plugin-react-compiler@npm:0.0.0-experimental-592953e-20240517" 11656 + "babel-plugin-react-native-web@npm:~0.19.13": 11657 + version: 0.19.13 11658 + resolution: "babel-plugin-react-native-web@npm:0.19.13" 11659 + checksum: 10/05ef14f7ffad194a80f27624d52d6f661e5956e606a41aefd34220016357068b6dead23f5c80671345f4e5878dd6ed5cb3a567aef128e38570780458a141d07a 11660 + languageName: node 11661 + linkType: hard 11662 + 11663 + "babel-plugin-syntax-hermes-parser@npm:^0.23.1": 11664 + version: 0.23.1 11665 + resolution: "babel-plugin-syntax-hermes-parser@npm:0.23.1" 11703 11666 dependencies: 11704 - "@babel/generator": "npm:7.2.0" 11705 - "@babel/types": "npm:^7.19.0" 11706 - chalk: "npm:4" 11707 - invariant: "npm:^2.2.4" 11708 - pretty-format: "npm:^24" 11709 - zod: "npm:^3.22.4" 11710 - zod-validation-error: "npm:^2.1.0" 11711 - checksum: 10/53416c11bd20f2fdd103e40fb2ce43f54ba0dfc824946d40053672b2b88d9ce8be796837892b6b5efd6bafd6947c5dab34d03d10317aaab96da34fe42f19e7bf 11667 + hermes-parser: "npm:0.23.1" 11668 + checksum: 10/5412008e8e85b08cd0d78168f746ade68b8ed69c0068831ce5e3d028f01c644f546ca0e2b7c9a4a8c6b9d5f14aff84c2453ab44b19cbec55e4366b20bbba9040 11712 11669 languageName: node 11713 11670 linkType: hard 11714 11671 11715 - "babel-plugin-react-native-web@npm:~0.19.10": 11716 - version: 0.19.12 11717 - resolution: "babel-plugin-react-native-web@npm:0.19.12" 11718 - checksum: 10/8f4066fcb26e8ac3150fc0524e4cfc5feb1bc13655dfeaa5b2919602cb0ea36eb36ca3c4a981e0c583d4027c7962fb0d4805a19c0810f022633e41743455c2cc 11672 + "babel-plugin-syntax-hermes-parser@npm:^0.25.1": 11673 + version: 0.25.1 11674 + resolution: "babel-plugin-syntax-hermes-parser@npm:0.25.1" 11675 + dependencies: 11676 + hermes-parser: "npm:0.25.1" 11677 + checksum: 10/dc80fafde1aed8e60cf86ecd2e9920e7f35ffe02b33bd4e772daaa786167bcf508aac3fc1aea425ff4c7a0be94d82528f3fe8619b7f41dac853264272d640c04 11719 11678 languageName: node 11720 11679 linkType: hard 11721 11680 ··· 11743 11702 languageName: node 11744 11703 linkType: hard 11745 11704 11746 - "babel-preset-expo@npm:^11.0.15, babel-preset-expo@npm:~11.0.15": 11747 - version: 11.0.15 11748 - resolution: "babel-preset-expo@npm:11.0.15" 11705 + "babel-preset-current-node-syntax@npm:^1.0.0": 11706 + version: 1.1.0 11707 + resolution: "babel-preset-current-node-syntax@npm:1.1.0" 11708 + dependencies: 11709 + "@babel/plugin-syntax-async-generators": "npm:^7.8.4" 11710 + "@babel/plugin-syntax-bigint": "npm:^7.8.3" 11711 + "@babel/plugin-syntax-class-properties": "npm:^7.12.13" 11712 + "@babel/plugin-syntax-class-static-block": "npm:^7.14.5" 11713 + "@babel/plugin-syntax-import-attributes": "npm:^7.24.7" 11714 + "@babel/plugin-syntax-import-meta": "npm:^7.10.4" 11715 + "@babel/plugin-syntax-json-strings": "npm:^7.8.3" 11716 + "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" 11717 + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" 11718 + "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" 11719 + "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" 11720 + "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" 11721 + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" 11722 + "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" 11723 + "@babel/plugin-syntax-top-level-await": "npm:^7.14.5" 11724 + peerDependencies: 11725 + "@babel/core": ^7.0.0 11726 + checksum: 10/46331111ae72b7121172fd9e6a4a7830f651ad44bf26dbbf77b3c8a60a18009411a3eacb5e72274004290c110371230272109957d5224d155436b4794ead2f1b 11727 + languageName: node 11728 + linkType: hard 11729 + 11730 + "babel-preset-expo@npm:~12.0.0, babel-preset-expo@npm:~12.0.1": 11731 + version: 12.0.1 11732 + resolution: "babel-preset-expo@npm:12.0.1" 11749 11733 dependencies: 11750 11734 "@babel/plugin-proposal-decorators": "npm:^7.12.9" 11751 11735 "@babel/plugin-transform-export-namespace-from": "npm:^7.22.11" ··· 11753 11737 "@babel/plugin-transform-parameters": "npm:^7.22.15" 11754 11738 "@babel/preset-react": "npm:^7.22.15" 11755 11739 "@babel/preset-typescript": "npm:^7.23.0" 11756 - "@react-native/babel-preset": "npm:0.74.87" 11757 - babel-plugin-react-compiler: "npm:0.0.0-experimental-592953e-20240517" 11758 - babel-plugin-react-native-web: "npm:~0.19.10" 11740 + "@react-native/babel-preset": "npm:0.76.2" 11741 + babel-plugin-react-native-web: "npm:~0.19.13" 11759 11742 react-refresh: "npm:^0.14.2" 11760 - checksum: 10/be5862180c1e69053c22fee05ec50258aab97c4cc6780634313d8497726a6de1b76cc3badd00ebdc44aaf63f1f767082a430a7d486b935cf58dc20e0ca3377a9 11743 + peerDependencies: 11744 + babel-plugin-react-compiler: ^19.0.0-beta-9ee70a1-20241017 11745 + react-compiler-runtime: ^19.0.0-beta-8a03594-20241020 11746 + peerDependenciesMeta: 11747 + babel-plugin-react-compiler: 11748 + optional: true 11749 + react-compiler-runtime: 11750 + optional: true 11751 + checksum: 10/4555dc9ac5c094e1ab48a972758c9ae71dc63df61257607a81a664d76bf074884dfa3dc124f20ede89ad2f5ce47b2930a5088f90836a8510376b844bf9c07e89 11752 + languageName: node 11753 + linkType: hard 11754 + 11755 + "babel-preset-jest@npm:^29.6.3": 11756 + version: 29.6.3 11757 + resolution: "babel-preset-jest@npm:29.6.3" 11758 + dependencies: 11759 + babel-plugin-jest-hoist: "npm:^29.6.3" 11760 + babel-preset-current-node-syntax: "npm:^1.0.0" 11761 + peerDependencies: 11762 + "@babel/core": ^7.0.0 11763 + checksum: 10/aa4ff2a8a728d9d698ed521e3461a109a1e66202b13d3494e41eea30729a5e7cc03b3a2d56c594423a135429c37bf63a9fa8b0b9ce275298be3095a88c69f6fb 11761 11764 languageName: node 11762 11765 linkType: hard 11763 11766 ··· 12022 12025 languageName: node 12023 12026 linkType: hard 12024 12027 12025 - "browserslist@npm:^4.22.2, browserslist@npm:^4.23.0": 12028 + "browserslist@npm:^4.22.2": 12026 12029 version: 4.23.1 12027 12030 resolution: "browserslist@npm:4.23.1" 12028 12031 dependencies: ··· 12399 12402 languageName: node 12400 12403 linkType: hard 12401 12404 12402 - "chalk@npm:4, chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": 12403 - version: 4.1.2 12404 - resolution: "chalk@npm:4.1.2" 12405 - dependencies: 12406 - ansi-styles: "npm:^4.1.0" 12407 - supports-color: "npm:^7.1.0" 12408 - checksum: 10/cb3f3e594913d63b1814d7ca7c9bafbf895f75fbf93b92991980610dfd7b48500af4e3a5d4e3a8f337990a96b168d7eb84ee55efdce965e2ee8efc20f8c8f139 12409 - languageName: node 12410 - linkType: hard 12411 - 12412 12405 "chalk@npm:4.1.0": 12413 12406 version: 4.1.0 12414 12407 resolution: "chalk@npm:4.1.0" ··· 12430 12423 languageName: node 12431 12424 linkType: hard 12432 12425 12426 + "chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": 12427 + version: 4.1.2 12428 + resolution: "chalk@npm:4.1.2" 12429 + dependencies: 12430 + ansi-styles: "npm:^4.1.0" 12431 + supports-color: "npm:^7.1.0" 12432 + checksum: 10/cb3f3e594913d63b1814d7ca7c9bafbf895f75fbf93b92991980610dfd7b48500af4e3a5d4e3a8f337990a96b168d7eb84ee55efdce965e2ee8efc20f8c8f139 12433 + languageName: node 12434 + linkType: hard 12435 + 12433 12436 "chalk@npm:^5.2.0, chalk@npm:~5.3.0": 12434 12437 version: 5.3.0 12435 12438 resolution: "chalk@npm:5.3.0" ··· 12444 12447 languageName: node 12445 12448 linkType: hard 12446 12449 12447 - "charenc@npm:0.0.2, charenc@npm:~0.0.1": 12450 + "charenc@npm:0.0.2": 12448 12451 version: 0.0.2 12449 12452 resolution: "charenc@npm:0.0.2" 12450 12453 checksum: 10/81dcadbe57e861d527faf6dd3855dc857395a1c4d6781f4847288ab23cffb7b3ee80d57c15bba7252ffe3e5e8019db767757ee7975663ad2ca0939bb8fcaf2e5 ··· 12514 12517 version: 1.0.4 12515 12518 resolution: "chrome-trace-event@npm:1.0.4" 12516 12519 checksum: 10/1762bed739774903bf5915fe3045c3120fc3c7f7d929d88e566447ea38944937a6370ccb687278318c43c24f837ad22dac780bed67c066336815557b8cf558c6 12520 + languageName: node 12521 + linkType: hard 12522 + 12523 + "chromium-edge-launcher@npm:^0.2.0": 12524 + version: 0.2.0 12525 + resolution: "chromium-edge-launcher@npm:0.2.0" 12526 + dependencies: 12527 + "@types/node": "npm:*" 12528 + escape-string-regexp: "npm:^4.0.0" 12529 + is-wsl: "npm:^2.2.0" 12530 + lighthouse-logger: "npm:^1.0.0" 12531 + mkdirp: "npm:^1.0.4" 12532 + rimraf: "npm:^3.0.2" 12533 + checksum: 10/9c58094cb6f149f8b9aae6937c5e60fee3cdf7e43a6902d8d70d2bc18878a0479f1637a5b44f6fbec5c84aa52972fc3ccba61b9984a584f3d98700e247d4ad94 12517 12534 languageName: node 12518 12535 linkType: hard 12519 12536 ··· 12739 12756 languageName: node 12740 12757 linkType: hard 12741 12758 12742 - "clone@npm:^2.1.2": 12743 - version: 2.1.2 12744 - resolution: "clone@npm:2.1.2" 12745 - checksum: 10/d9c79efba655f0bf601ab299c57eb54cbaa9860fb011aee9d89ed5ac0d12df1660ab7642fddaabb9a26b7eff0e117d4520512cb70798319ff5d30a111b5310c2 12746 - languageName: node 12747 - linkType: hard 12748 - 12749 12759 "clsx@npm:2.1.1": 12750 12760 version: 2.1.1 12751 12761 resolution: "clsx@npm:2.1.1" ··· 12842 12852 languageName: node 12843 12853 linkType: hard 12844 12854 12845 - "colorette@npm:^1.0.7": 12846 - version: 1.4.0 12847 - resolution: "colorette@npm:1.4.0" 12848 - checksum: 10/c8d6c8c3ef5a99acfc3dd9a68f48019f1479ec347551387e4a1762e40f69e98ce19d4dc321ffb4919d1f28a7bdc90c39d4e9a901f4c474fd2124ad93a00c0454 12849 - languageName: node 12850 - linkType: hard 12851 - 12852 12855 "colorette@npm:^2.0.10, colorette@npm:^2.0.20": 12853 12856 version: 2.0.20 12854 12857 resolution: "colorette@npm:2.0.20" ··· 12875 12878 languageName: node 12876 12879 linkType: hard 12877 12880 12878 - "command-exists@npm:^1.2.4, command-exists@npm:^1.2.8": 12881 + "command-exists@npm:^1.2.4": 12879 12882 version: 1.2.9 12880 12883 resolution: "command-exists@npm:1.2.9" 12881 12884 checksum: 10/46fb3c4d626ca5a9d274f8fe241230817496abc34d12911505370b7411999e183c11adff7078dd8a03ec4cf1391290facda40c6a4faac8203ae38c985eaedd63 ··· 12886 12889 version: 10.0.1 12887 12890 resolution: "commander@npm:10.0.1" 12888 12891 checksum: 10/8799faa84a30da985802e661cc9856adfaee324d4b138413013ef7f087e8d7924b144c30a1f1405475f0909f467665cd9e1ce13270a2f41b141dab0b7a58f3fb 12892 + languageName: node 12893 + linkType: hard 12894 + 12895 + "commander@npm:^12.0.0, commander@npm:~12.1.0": 12896 + version: 12.1.0 12897 + resolution: "commander@npm:12.1.0" 12898 + checksum: 10/cdaeb672d979816853a4eed7f1310a9319e8b976172485c2a6b437ed0db0a389a44cfb222bfbde772781efa9f215bdd1b936f80d6b249485b465c6cb906e1f93 12889 12899 languageName: node 12890 12900 linkType: hard 12891 12901 ··· 12924 12934 languageName: node 12925 12935 linkType: hard 12926 12936 12927 - "commander@npm:^9.4.0, commander@npm:^9.4.1": 12937 + "commander@npm:^9.4.0": 12928 12938 version: 9.5.0 12929 12939 resolution: "commander@npm:9.5.0" 12930 12940 checksum: 10/41c49b3d0f94a1fbeb0463c85b13f15aa15a9e0b4d5e10a49c0a1d58d4489b549d62262b052ae0aa6cfda53299bee487bfe337825df15e342114dde543f82906 12931 12941 languageName: node 12932 12942 linkType: hard 12933 12943 12934 - "commander@npm:~12.1.0": 12935 - version: 12.1.0 12936 - resolution: "commander@npm:12.1.0" 12937 - checksum: 10/cdaeb672d979816853a4eed7f1310a9319e8b976172485c2a6b437ed0db0a389a44cfb222bfbde772781efa9f215bdd1b936f80d6b249485b465c6cb906e1f93 12938 - languageName: node 12939 - linkType: hard 12940 - 12941 12944 "common-ancestor-path@npm:^1.0.1": 12942 12945 version: 1.0.1 12943 12946 resolution: "common-ancestor-path@npm:1.0.1" ··· 12985 12988 languageName: node 12986 12989 linkType: hard 12987 12990 12988 - "compression@npm:^1.7.1, compression@npm:^1.7.4": 12991 + "compression@npm:^1.7.4": 12989 12992 version: 1.7.4 12990 12993 resolution: "compression@npm:1.7.4" 12991 12994 dependencies: ··· 13196 13199 languageName: node 13197 13200 linkType: hard 13198 13201 13199 - "core-js-compat@npm:^3.36.1": 13200 - version: 3.37.1 13201 - resolution: "core-js-compat@npm:3.37.1" 13202 - dependencies: 13203 - browserslist: "npm:^4.23.0" 13204 - checksum: 10/30c6fdbd9ff179cc53951814689b8aabec106e5de6cddfa7a7feacc96b66d415b8eebcf5ec8f7c68ef35c552fe7d39edb8b15b1ce0f27379a272295b6e937061 13205 - languageName: node 13206 - linkType: hard 13207 - 13208 13202 "core-js-compat@npm:^3.38.0": 13209 13203 version: 3.39.0 13210 13204 resolution: "core-js-compat@npm:3.39.0" ··· 13245 13239 languageName: node 13246 13240 linkType: hard 13247 13241 13248 - "cosmiconfig@npm:^5.0.5, cosmiconfig@npm:^5.1.0": 13242 + "cosmiconfig@npm:^5.0.5": 13249 13243 version: 5.2.1 13250 13244 resolution: "cosmiconfig@npm:5.2.1" 13251 13245 dependencies: ··· 13358 13352 languageName: node 13359 13353 linkType: hard 13360 13354 13361 - "crypt@npm:0.0.2, crypt@npm:~0.0.1": 13355 + "crypt@npm:0.0.2": 13362 13356 version: 0.0.2 13363 13357 resolution: "crypt@npm:0.0.2" 13364 13358 checksum: 10/2c72768de3d28278c7c9ffd81a298b26f87ecdfe94415084f339e6632f089b43fe039f2c93f612bcb5ffe447238373d93b2e8c90894cba6cfb0ac7a74616f8b9 13365 - languageName: node 13366 - linkType: hard 13367 - 13368 - "crypto-random-string@npm:^1.0.0": 13369 - version: 1.0.0 13370 - resolution: "crypto-random-string@npm:1.0.0" 13371 - checksum: 10/6fc61a46c18547b49a93da24f4559c4a1c859f4ee730ecc9533c1ba89fa2a9e9d81f390c2789467afbbd0d1c55a6e96a71e4716b6cd3e77736ed5fced7a2df9a 13372 13359 languageName: node 13373 13360 linkType: hard 13374 13361 ··· 13489 13476 languageName: node 13490 13477 linkType: hard 13491 13478 13492 - "dag-map@npm:~1.0.0": 13493 - version: 1.0.2 13494 - resolution: "dag-map@npm:1.0.2" 13495 - checksum: 10/2fd7512bae908c5d10f78e71b06e0b27d97c7c48165e086530b033b3c4b581925aa2f632321a92d50b3fe75062def200c8e814c6c68a28cf2af2adee7feac76d 13496 - languageName: node 13497 - linkType: hard 13498 - 13499 13479 "dargs@npm:^7.0.0": 13500 13480 version: 7.0.0 13501 13481 resolution: "dargs@npm:7.0.0" ··· 13552 13532 languageName: node 13553 13533 linkType: hard 13554 13534 13555 - "dayjs@npm:^1.10.0, dayjs@npm:^1.8.15": 13535 + "dayjs@npm:^1.10.0": 13556 13536 version: 1.11.11 13557 13537 resolution: "dayjs@npm:1.11.11" 13558 13538 checksum: 10/f03948b172fbeed229837965988d1d5bac99c72a31c28731a457303259439f2f36289186489ae140adbeb10f591a926908c8de5d81eb449a2edbf5cbd6e9e30c ··· 13589 13569 languageName: node 13590 13570 linkType: hard 13591 13571 13592 - "debug@npm:^4.0.1, debug@npm:^4.3.3, debug@npm:~4.3.6": 13572 + "debug@npm:^4.0.1, debug@npm:^4.3.3, debug@npm:^4.3.5, debug@npm:~4.3.6": 13593 13573 version: 4.3.7 13594 13574 resolution: "debug@npm:4.3.7" 13595 13575 dependencies: ··· 13679 13659 languageName: node 13680 13660 linkType: hard 13681 13661 13682 - "deepmerge@npm:^4.2.2, deepmerge@npm:^4.3.0, deepmerge@npm:^4.3.1": 13662 + "deepmerge@npm:^4.2.2, deepmerge@npm:^4.3.1": 13683 13663 version: 4.3.1 13684 13664 resolution: "deepmerge@npm:4.3.1" 13685 13665 checksum: 10/058d9e1b0ff1a154468bf3837aea436abcfea1ba1d165ddaaf48ca93765fdd01a30d33c36173da8fbbed951dd0a267602bc782fe288b0fc4b7e1e7091afc4529 ··· 14429 14409 languageName: node 14430 14410 linkType: hard 14431 14411 14432 - "envinfo@npm:7.13.0, envinfo@npm:^7.10.0": 14412 + "envinfo@npm:7.13.0": 14433 14413 version: 7.13.0 14434 14414 resolution: "envinfo@npm:7.13.0" 14435 14415 bin: ··· 14477 14457 languageName: node 14478 14458 linkType: hard 14479 14459 14480 - "errorhandler@npm:^1.5.1": 14481 - version: 1.5.1 14482 - resolution: "errorhandler@npm:1.5.1" 14483 - dependencies: 14484 - accepts: "npm:~1.3.7" 14485 - escape-html: "npm:~1.0.3" 14486 - checksum: 10/73b7abb08fb751107e9bebecc33c40c0641a54be8bda8e4a045f3f5cb7b805041927fef5629ea39b1737799eb52fe2499ca531f11ac51b0294ccc4667d72cb91 14487 - languageName: node 14488 - linkType: hard 14489 - 14490 14460 "es-abstract@npm:^1.22.1, es-abstract@npm:^1.22.3, es-abstract@npm:^1.23.0, es-abstract@npm:^1.23.2": 14491 14461 version: 1.23.3 14492 14462 resolution: "es-abstract@npm:1.23.3" ··· 15137 15107 languageName: node 15138 15108 linkType: hard 15139 15109 15140 - "expo-application@npm:~5.9.0": 15141 - version: 5.9.1 15142 - resolution: "expo-application@npm:5.9.1" 15110 + "expo-application@npm:~6.0.0": 15111 + version: 6.0.1 15112 + resolution: "expo-application@npm:6.0.1" 15143 15113 peerDependencies: 15144 15114 expo: "*" 15145 - checksum: 10/802463b96110021fb1a0f7a126fb773c152dd37b15c620e2b7be55d70aee544439f156582b75d145b955c43a8bc9690f10d7b7d8fbfcb7af7718e79fac1149d7 15115 + checksum: 10/df4557fa9b0aa75a5ab1f05e6ec08a5c78eca27f4055355fa5f4753d7e1a994dc8260fc77e201056debfb8fe43c690745e7317e143eee0a531760664d6934b5a 15146 15116 languageName: node 15147 15117 linkType: hard 15148 15118 15149 - "expo-asset@npm:~10.0.10": 15150 - version: 10.0.10 15151 - resolution: "expo-asset@npm:10.0.10" 15119 + "expo-asset@npm:~11.0.1": 15120 + version: 11.0.1 15121 + resolution: "expo-asset@npm:11.0.1" 15152 15122 dependencies: 15153 - expo-constants: "npm:~16.0.0" 15123 + "@expo/image-utils": "npm:^0.6.0" 15124 + expo-constants: "npm:~17.0.0" 15154 15125 invariant: "npm:^2.2.4" 15155 15126 md5-file: "npm:^3.2.3" 15156 15127 peerDependencies: 15157 15128 expo: "*" 15158 - checksum: 10/6b1f90216ea5e2c785193528bdf2d5855f7089a39235149793130de77fa49b91ed4b6c131935e035598c08859b0fe0f7279a444f7c88d1261389dff303266409 15129 + react: "*" 15130 + react-native: "*" 15131 + checksum: 10/1b1d28048e224d4899fe27e55e650a0a9a2cafb02afb3c2f1d58f4be032fdbaafebe8157dc734503ee7fc84e8f1aec3481aded9f61eaeeaecb4f4ab06d335524 15159 15132 languageName: node 15160 15133 linkType: hard 15161 15134 15162 - "expo-build-properties@npm:^0.12.5": 15163 - version: 0.12.5 15164 - resolution: "expo-build-properties@npm:0.12.5" 15135 + "expo-build-properties@npm:~0.13.1": 15136 + version: 0.13.1 15137 + resolution: "expo-build-properties@npm:0.13.1" 15165 15138 dependencies: 15166 15139 ajv: "npm:^8.11.0" 15167 15140 semver: "npm:^7.6.0" 15168 15141 peerDependencies: 15169 15142 expo: "*" 15170 - checksum: 10/22a1c3fbe6ef00efe13976612766c665390df033d84203bb8d8133fec5d9291be333341119f35b4f5e60932b5829e9ac10c7aaa1a28cbfb5fa689b1b7917229a 15143 + checksum: 10/5376a821e0ac7fa5eebdf84a7ddd293cd7cdbbcc7e0b4f7307d2d02102ce1ac076d93128f2a59dce735e04f2fab7280172268992a53edc67d8a3fd5653a27f8a 15171 15144 languageName: node 15172 15145 linkType: hard 15173 15146 15174 - "expo-constants@npm:~16.0.0": 15175 - version: 16.0.2 15176 - resolution: "expo-constants@npm:16.0.2" 15147 + "expo-constants@npm:~17.0.0, expo-constants@npm:~17.0.3": 15148 + version: 17.0.3 15149 + resolution: "expo-constants@npm:17.0.3" 15177 15150 dependencies: 15178 - "@expo/config": "npm:~9.0.0" 15179 - "@expo/env": "npm:~0.3.0" 15151 + "@expo/config": "npm:~10.0.4" 15152 + "@expo/env": "npm:~0.4.0" 15180 15153 peerDependencies: 15181 15154 expo: "*" 15182 - checksum: 10/f2f8b15932ab2f805544fd96c6740d2354c6409706eee2664be1703c3480c7531a709112af811dc22f05c164c06501aec20f81617675e87b5a3b66ab5b8d7611 15155 + react-native: "*" 15156 + checksum: 10/25487b469010c57ffbb1bf5e052d5e546db0bc7af9a68acd0e359a2f3978c99fc28b49527514da862dfcaf6b7915674b16d70a3c63d31a64cbdb0d27c6294a69 15183 15157 languageName: node 15184 15158 linkType: hard 15185 15159 15186 - "expo-dev-client@npm:~4.0.28": 15187 - version: 4.0.28 15188 - resolution: "expo-dev-client@npm:4.0.28" 15160 + "expo-dev-client@npm:~5.0.3": 15161 + version: 5.0.3 15162 + resolution: "expo-dev-client@npm:5.0.3" 15189 15163 dependencies: 15190 - expo-dev-launcher: "npm:4.0.28" 15191 - expo-dev-menu: "npm:5.0.22" 15192 - expo-dev-menu-interface: "npm:1.8.3" 15193 - expo-manifests: "npm:~0.14.0" 15194 - expo-updates-interface: "npm:~0.16.2" 15164 + expo-dev-launcher: "npm:5.0.15" 15165 + expo-dev-menu: "npm:6.0.10" 15166 + expo-dev-menu-interface: "npm:1.9.1" 15167 + expo-manifests: "npm:~0.15.0" 15168 + expo-updates-interface: "npm:~1.0.0" 15195 15169 peerDependencies: 15196 15170 expo: "*" 15197 - checksum: 10/e091be8975d843a98e65f1d5cf05bdb5f7673d2dd332545198f5629f047bd5a68516800e0347de1f73650e0ea58741f089b2d0fab8939b759680d682d94bb924 15171 + checksum: 10/4b822bd4bfbcee514578a118ba266bd84005c615e02f478e5446d5ef8d6b8d8fea04e5176fb47d153326f9d639fb1344e63f93a0b94a06e740f752eb959774d3 15198 15172 languageName: node 15199 15173 linkType: hard 15200 15174 15201 - "expo-dev-launcher@npm:4.0.28": 15202 - version: 4.0.28 15203 - resolution: "expo-dev-launcher@npm:4.0.28" 15175 + "expo-dev-launcher@npm:5.0.15": 15176 + version: 5.0.15 15177 + resolution: "expo-dev-launcher@npm:5.0.15" 15204 15178 dependencies: 15205 15179 ajv: "npm:8.11.0" 15206 - expo-dev-menu: "npm:5.0.22" 15207 - expo-manifests: "npm:~0.14.0" 15180 + expo-dev-menu: "npm:6.0.10" 15181 + expo-manifests: "npm:~0.15.0" 15208 15182 resolve-from: "npm:^5.0.0" 15209 - semver: "npm:^7.6.0" 15210 15183 peerDependencies: 15211 15184 expo: "*" 15212 - checksum: 10/6c38d4c6c8a134ec56783d534544bb3e0f0423418d01158ba8a7331be30898cf69b5d71f20bb3c2672e29de30004bcdc70b4064386efa4f2d35ae5d95ace86af 15185 + checksum: 10/adfd38017069099413f814e4e13388f369ff52fbd69877a0c0598dd7470ce70a695af0439e6044393f9b0a30f27464c01e0d160c0c60eb444a8dd98a90fa55e3 15213 15186 languageName: node 15214 15187 linkType: hard 15215 15188 15216 - "expo-dev-menu-interface@npm:1.8.3": 15217 - version: 1.8.3 15218 - resolution: "expo-dev-menu-interface@npm:1.8.3" 15189 + "expo-dev-menu-interface@npm:1.9.1": 15190 + version: 1.9.1 15191 + resolution: "expo-dev-menu-interface@npm:1.9.1" 15219 15192 peerDependencies: 15220 15193 expo: "*" 15221 - checksum: 10/c63b7a1c2e7591085527a7944f3a9eaf6fc77d845400c5d064518ef06904ab193b77020e5fe029ff2897e359a07217ff81b7074cbfd1435780cf0a0b5bc8cf17 15194 + checksum: 10/f94e04b2d824febce329f27d9367379aa9734cf1561aaea3526dc4500dfb4e873ec4531fd08750438d805c81fbce0302916fc9f853918681fa7754c3eafbec60 15222 15195 languageName: node 15223 15196 linkType: hard 15224 15197 15225 - "expo-dev-menu@npm:5.0.22": 15226 - version: 5.0.22 15227 - resolution: "expo-dev-menu@npm:5.0.22" 15198 + "expo-dev-menu@npm:6.0.10": 15199 + version: 6.0.10 15200 + resolution: "expo-dev-menu@npm:6.0.10" 15228 15201 dependencies: 15229 - expo-dev-menu-interface: "npm:1.8.3" 15230 - semver: "npm:^7.5.4" 15202 + expo-dev-menu-interface: "npm:1.9.1" 15231 15203 peerDependencies: 15232 15204 expo: "*" 15233 - checksum: 10/9ff91603cefc203a45733eadca589f92a2063edec4fcd77350b42c4b2e084c0e2de89c559c0ab209366b053187a189435717323dbc6b6622e46a94b446b6fa64 15205 + checksum: 10/c194469a96fda91aa253a4e8582294a2fcdebdd5779fae943fccc56ded74350f6ae7df11c3a289f323e9e1200c74327ce052bb880d3181778fa3b04ca20c206a 15234 15206 languageName: node 15235 15207 linkType: hard 15236 15208 15237 - "expo-eas-client@npm:~0.12.0": 15238 - version: 0.12.0 15239 - resolution: "expo-eas-client@npm:0.12.0" 15240 - checksum: 10/84f9f00fc7343e1ef38499a8c09644435bac5c09cf6f0c62386dbeaf506062ece82959a8216e2e0765cf3d8ac165548babb0d9e3b012cf560c7becb0409e67b0 15209 + "expo-eas-client@npm:~0.13.0": 15210 + version: 0.13.1 15211 + resolution: "expo-eas-client@npm:0.13.1" 15212 + checksum: 10/6a908200ce1926f5c47c5eea6038042a20b88d6e69f51586e96e1ebd79adf3b0ecbf6a323b73680f10a38f87e89690b1e4b26f04a098910d59a576b80dc0d343 15241 15213 languageName: node 15242 15214 linkType: hard 15243 15215 15244 - "expo-file-system@npm:~17.0.1": 15245 - version: 17.0.1 15246 - resolution: "expo-file-system@npm:17.0.1" 15216 + "expo-file-system@npm:~18.0.4": 15217 + version: 18.0.4 15218 + resolution: "expo-file-system@npm:18.0.4" 15219 + dependencies: 15220 + web-streams-polyfill: "npm:^3.3.2" 15247 15221 peerDependencies: 15248 15222 expo: "*" 15249 - checksum: 10/1ca8f8d0acae014668566025b697bb0956c85ab3586e5c1d2acd7fabfc6fec27a175e000b06f86136baf53dedc48bb6452bd584236f8a20a68277b256041d476 15223 + react-native: "*" 15224 + checksum: 10/cd4092f70224ca611936d0225491124d57c32dde9a515bb12f3d396bba1717cd16f0eeda3c7a721b29cf21412bfb3fb8bd8c5c7f78fcca226044d53be17a7fa3 15250 15225 languageName: node 15251 15226 linkType: hard 15252 15227 15253 - "expo-font@npm:~12.0.10": 15254 - version: 12.0.10 15255 - resolution: "expo-font@npm:12.0.10" 15228 + "expo-font@npm:~13.0.1": 15229 + version: 13.0.1 15230 + resolution: "expo-font@npm:13.0.1" 15256 15231 dependencies: 15257 15232 fontfaceobserver: "npm:^2.1.0" 15258 15233 peerDependencies: 15259 15234 expo: "*" 15260 - checksum: 10/639602e4aa8e134ef367a672d36d28c7188ddaa1170fd112c1c221c7bdea4782a01035fde50c17420cbb9c43c61da4a80ea38696eb8daf8dcfa028e30bdf4063 15235 + react: "*" 15236 + checksum: 10/c28b41d2861f92b169791e3ecd7d005eb70eb02b72bcded378ad17d3a3e7fb57e26f57021b5b6d9dce8c6707d63c6cf8e2157b2caf28c0fecd235b13a9b2b147 15261 15237 languageName: node 15262 15238 linkType: hard 15263 15239 15264 - "expo-json-utils@npm:~0.13.0": 15265 - version: 0.13.1 15266 - resolution: "expo-json-utils@npm:0.13.1" 15267 - checksum: 10/b6c5d5ec1c7b5c3de9910013aec1c2106c1279dfdbfe0c8b5b0e33dc19d15519c0f485cdc22e805c585442a98b5319d1c375100dd818bbf4c2364c16219fce7e 15240 + "expo-json-utils@npm:~0.14.0": 15241 + version: 0.14.0 15242 + resolution: "expo-json-utils@npm:0.14.0" 15243 + checksum: 10/96fbfbe5cbef75dc742982b27eb55ca2e00c488fabc0877e01b707ab12ddf349cf9cda6e7f5459982bb24be5374ce6889ae628eb3041f1367d3672ba561900c9 15268 15244 languageName: node 15269 15245 linkType: hard 15270 15246 15271 - "expo-keep-awake@npm:~13.0.2": 15272 - version: 13.0.2 15273 - resolution: "expo-keep-awake@npm:13.0.2" 15247 + "expo-keep-awake@npm:~14.0.1": 15248 + version: 14.0.1 15249 + resolution: "expo-keep-awake@npm:14.0.1" 15274 15250 peerDependencies: 15275 15251 expo: "*" 15276 - checksum: 10/e9f0b066355ba776a2e60f37add779a509636dce70c6f04d24c36b436f2b69a830c2a1fe1b53eae977f2d810e93231772ccadabdd4a19f5e27cf2af3df5e8e39 15252 + react: "*" 15253 + checksum: 10/a4b72ab4c6c41f44c04f4146f3eda955941f2c7ee500a43da45baff6ca74d40ada8e253b38b4925802a4a003642b0dc0af15501712367b90ae606d5355f7f5f0 15277 15254 languageName: node 15278 15255 linkType: hard 15279 15256 15280 - "expo-linking@npm:~6.3.1": 15281 - version: 6.3.1 15282 - resolution: "expo-linking@npm:6.3.1" 15257 + "expo-linking@npm:~7.0.3": 15258 + version: 7.0.3 15259 + resolution: "expo-linking@npm:7.0.3" 15283 15260 dependencies: 15284 - expo-constants: "npm:~16.0.0" 15261 + expo-constants: "npm:~17.0.0" 15285 15262 invariant: "npm:^2.2.4" 15286 - checksum: 10/07ee4417ae6e58351797b805bd88215ceb6f89ec16c99e305db6d826925da1d1620e3baaa733a5c8848663dc2b3c39b6d375b381cf590a603a98eb671fef105d 15263 + peerDependencies: 15264 + react: "*" 15265 + react-native: "*" 15266 + checksum: 10/c2d3e04c5cde99616357182b9b9303814473eebb2dabacc58e7dd91d90bc590618091259d19b8e761cee973f8dece7619660318c347e047f0aaae99163a7e5ae 15287 15267 languageName: node 15288 15268 linkType: hard 15289 15269 15290 - "expo-manifests@npm:~0.14.0": 15291 - version: 0.14.3 15292 - resolution: "expo-manifests@npm:0.14.3" 15270 + "expo-manifests@npm:~0.15.0": 15271 + version: 0.15.4 15272 + resolution: "expo-manifests@npm:0.15.4" 15293 15273 dependencies: 15294 - "@expo/config": "npm:~9.0.0" 15295 - expo-json-utils: "npm:~0.13.0" 15274 + "@expo/config": "npm:~10.0.4" 15275 + expo-json-utils: "npm:~0.14.0" 15296 15276 peerDependencies: 15297 15277 expo: "*" 15298 - checksum: 10/385163504d2c437ce2e9adc5197ac1444fe43aeb445f83c9f9b9e006fdb8a324a39dd773f1b1450e86e45bda8395df8ce0d60b92bdd49d633fc573ba26c4c6a2 15278 + checksum: 10/aed4e1277cd52d4a20ff853c84d431b7ec9f45cea57e28bd765e3a9278099a8633dc28d1d244bec6bd43e1bb5d6c244747645bef6362088f379c13900e9122f0 15299 15279 languageName: node 15300 15280 linkType: hard 15301 15281 15302 - "expo-modules-autolinking@npm:1.11.3": 15303 - version: 1.11.3 15304 - resolution: "expo-modules-autolinking@npm:1.11.3" 15282 + "expo-modules-autolinking@npm:2.0.2": 15283 + version: 2.0.2 15284 + resolution: "expo-modules-autolinking@npm:2.0.2" 15305 15285 dependencies: 15286 + "@expo/spawn-async": "npm:^1.7.2" 15306 15287 chalk: "npm:^4.1.0" 15307 15288 commander: "npm:^7.2.0" 15308 15289 fast-glob: "npm:^3.2.5" ··· 15312 15293 resolve-from: "npm:^5.0.0" 15313 15294 bin: 15314 15295 expo-modules-autolinking: bin/expo-modules-autolinking.js 15315 - checksum: 10/6f0b0e91bf6807857607c1a770278eada0eedf0dfd462f11ff89513800ced7f530516474937608113637cb72740dfd770fe4bd4f48d3a879646e198e20639ead 15296 + checksum: 10/8eac2313fc8e0fe30e4a3a2d9bbfa85cb525d2b43a04898b4c395d4ce66a1b57567d79689cbbf90e038279b8bd077323c120288b724788c1b6265b4ce39cf79c 15316 15297 languageName: node 15317 15298 linkType: hard 15318 15299 15319 - "expo-modules-core@npm:1.12.26": 15320 - version: 1.12.26 15321 - resolution: "expo-modules-core@npm:1.12.26" 15300 + "expo-modules-core@npm:2.0.4": 15301 + version: 2.0.4 15302 + resolution: "expo-modules-core@npm:2.0.4" 15322 15303 dependencies: 15323 15304 invariant: "npm:^2.2.4" 15324 - checksum: 10/69d0cf3748f0c142417f6a99161b7caeb76fdec89ff454a148e288bd3ca92480ddf0e511e032829674ba6c482f02f156824191fa9445476a516b6e12180c32f6 15305 + checksum: 10/ef6115f73df2e304514125104ce4fd18dd5e51c81575516f6be3dae5a0d4799a679091e4c4d5914d16c3524ca0dfd334732ceafe50374545ab09a09f2bd08ebb 15325 15306 languageName: node 15326 15307 linkType: hard 15327 15308 15328 - "expo-notifications@npm:~0.28.19": 15329 - version: 0.28.19 15330 - resolution: "expo-notifications@npm:0.28.19" 15309 + "expo-notifications@npm:~0.29.8": 15310 + version: 0.29.8 15311 + resolution: "expo-notifications@npm:0.29.8" 15331 15312 dependencies: 15332 - "@expo/image-utils": "npm:^0.5.0" 15313 + "@expo/image-utils": "npm:^0.6.0" 15333 15314 "@ide/backoff": "npm:^1.0.0" 15334 15315 abort-controller: "npm:^3.0.0" 15335 15316 assert: "npm:^2.0.0" 15336 15317 badgin: "npm:^1.1.5" 15337 - expo-application: "npm:~5.9.0" 15338 - expo-constants: "npm:~16.0.0" 15339 - fs-extra: "npm:^9.1.0" 15318 + expo-application: "npm:~6.0.0" 15319 + expo-constants: "npm:~17.0.0" 15340 15320 peerDependencies: 15341 15321 expo: "*" 15342 - checksum: 10/fcb04cffabf65b521d1d57d6a551142013871b17c19a95b117a43e5694837e336bcf62e7ba1a003d2bb6f5b4fe9c30b21bf61669e0d353df132646ba9434fa95 15322 + react: "*" 15323 + react-native: "*" 15324 + checksum: 10/3e74e6c6520d419f503189fefafcad421ca4cbcb62c3eef07922d174e6b969dda28f36cabf964fb9acec087e342c019f72763f79728b68075e333d6993e10b7b 15343 15325 languageName: node 15344 15326 linkType: hard 15345 15327 15346 - "expo-splash-screen@npm:~0.27.6": 15347 - version: 0.27.6 15348 - resolution: "expo-splash-screen@npm:0.27.6" 15328 + "expo-splash-screen@npm:~0.29.11": 15329 + version: 0.29.11 15330 + resolution: "expo-splash-screen@npm:0.29.11" 15349 15331 dependencies: 15350 - "@expo/prebuild-config": "npm:7.0.8" 15332 + "@expo/prebuild-config": "npm:^8.0.16" 15351 15333 peerDependencies: 15352 15334 expo: "*" 15353 - checksum: 10/b36a876f5458b6d2f4e76df152130b9eadbac898767c7395e245557e6b6a764dcd8a7011f73a2f1dead9b1261a1454d6c3d08f30a7b8f731187f4a4ef4eec681 15335 + checksum: 10/f6c9d89797e0f6dc6c1dedd7f7eefe191393c21ae6b33279c2811b8fbbf2435d8b48893900cad7b49ce26a2873e117bfa172d4f95cb264051fd8bf72c60f7a5d 15354 15336 languageName: node 15355 15337 linkType: hard 15356 15338 15357 - "expo-status-bar@npm:^1.12.1": 15358 - version: 1.12.1 15359 - resolution: "expo-status-bar@npm:1.12.1" 15360 - checksum: 10/49dd71578c877068e0efd8d511f54f512e8d9929549345c618af9b017067113f8a6e21fec4b4b736e364cf21aa14456b0336db16661c0f5d982b1660917610c5 15339 + "expo-sqlite@npm:~15.0.3": 15340 + version: 15.0.3 15341 + resolution: "expo-sqlite@npm:15.0.3" 15342 + peerDependencies: 15343 + expo: "*" 15344 + react: "*" 15345 + react-native: "*" 15346 + checksum: 10/e01e6c867e7705dc36b1a7147ad0a5b829d89479c734f306d59633d5b05804c636329efea8b63cb0978550e2ac71676037511c8464fb040f9c33925e1bb8f085 15361 15347 languageName: node 15362 15348 linkType: hard 15363 15349 15364 - "expo-structured-headers@npm:~3.8.0": 15365 - version: 3.8.0 15366 - resolution: "expo-structured-headers@npm:3.8.0" 15367 - checksum: 10/8d723dc76e96e4190469695e9a2a833a66eb908689cb63aac244f67ff63d2d111b761592ce9f50d67d12bcd38f31cc5bf385fc582a37c51bd0aef379e4ec451a 15350 + "expo-status-bar@npm:~2.0.0": 15351 + version: 2.0.0 15352 + resolution: "expo-status-bar@npm:2.0.0" 15353 + peerDependencies: 15354 + react: "*" 15355 + react-native: "*" 15356 + checksum: 10/c965a617a67831f76645997ac3129061a2a906c7c19d60242fd3a21a63441d9d939e62686b949b57f77d6065643d508e6a5faefec3edc4f29cb8232571934c8a 15368 15357 languageName: node 15369 15358 linkType: hard 15370 15359 15371 - "expo-system-ui@npm:~3.0.7": 15372 - version: 3.0.7 15373 - resolution: "expo-system-ui@npm:3.0.7" 15360 + "expo-structured-headers@npm:~4.0.0": 15361 + version: 4.0.0 15362 + resolution: "expo-structured-headers@npm:4.0.0" 15363 + checksum: 10/1a98dded51678155606f92af27d5fab6afe35d342ee961ad9bf669f66126b6ff3d321100b684ef0cf1552470682ab4e52ed93ef53d2d5a28299611ddfbf25417 15364 + languageName: node 15365 + linkType: hard 15366 + 15367 + "expo-system-ui@npm:~4.0.3": 15368 + version: 4.0.3 15369 + resolution: "expo-system-ui@npm:4.0.3" 15374 15370 dependencies: 15375 - "@react-native/normalize-colors": "npm:0.74.85" 15371 + "@react-native/normalize-colors": "npm:0.76.2" 15376 15372 debug: "npm:^4.3.2" 15377 15373 peerDependencies: 15378 15374 expo: "*" 15379 - checksum: 10/79ee2264c264ed7235e29a102af1135ba24d414e886d522e28790ac2733b12f5bf23dc7202c5fb7aae658110a3c59764d9b90e366d9061b735ce7526d88ee9b8 15375 + react-native: "*" 15376 + react-native-web: "*" 15377 + peerDependenciesMeta: 15378 + react-native-web: 15379 + optional: true 15380 + checksum: 10/64383597cc0ec542c515cc35c61c47dd7ecdaebdb6cc8bf5deef730ee04c078930342b61496c18227a77c342e28cbeaaed4d50a11a0ce23ae00ced869eeeb990 15380 15381 languageName: node 15381 15382 linkType: hard 15382 15383 15383 - "expo-updates-interface@npm:~0.16.2": 15384 - version: 0.16.2 15385 - resolution: "expo-updates-interface@npm:0.16.2" 15384 + "expo-updates-interface@npm:~1.0.0": 15385 + version: 1.0.0 15386 + resolution: "expo-updates-interface@npm:1.0.0" 15386 15387 peerDependencies: 15387 15388 expo: "*" 15388 - checksum: 10/2a86ec6d001b75a5788970e01bbcc9d8fb5afe228bb7b38035282b6c381dbb87d5dc21fb36d4260f63d5cb13f060e0af86dc79b5f880310398d0870ca96e7c2c 15389 + checksum: 10/d22fa90eff9d6c6d96c1a4323dc3ac8329ef42fbc0fd21442cead135c46da54e1fa402eceda41bdfdb206da6fe98e28576a7243de7d209ea5d6c45785edf2939 15389 15390 languageName: node 15390 15391 linkType: hard 15391 15392 15392 - "expo-updates@npm:~0.25.27": 15393 - version: 0.25.27 15394 - resolution: "expo-updates@npm:0.25.27" 15393 + "expo-updates@npm:~0.26.7": 15394 + version: 0.26.7 15395 + resolution: "expo-updates@npm:0.26.7" 15395 15396 dependencies: 15396 15397 "@expo/code-signing-certificates": "npm:0.0.5" 15397 - "@expo/config": "npm:~9.0.0-beta.0" 15398 - "@expo/config-plugins": "npm:~8.0.8" 15399 - "@expo/fingerprint": "npm:^0.10.2" 15398 + "@expo/config": "npm:~10.0.4" 15399 + "@expo/config-plugins": "npm:~9.0.0" 15400 15400 "@expo/spawn-async": "npm:^1.7.2" 15401 15401 arg: "npm:4.1.0" 15402 15402 chalk: "npm:^4.1.2" 15403 - expo-eas-client: "npm:~0.12.0" 15404 - expo-manifests: "npm:~0.14.0" 15405 - expo-structured-headers: "npm:~3.8.0" 15406 - expo-updates-interface: "npm:~0.16.2" 15403 + expo-eas-client: "npm:~0.13.0" 15404 + expo-manifests: "npm:~0.15.0" 15405 + expo-structured-headers: "npm:~4.0.0" 15406 + expo-updates-interface: "npm:~1.0.0" 15407 15407 fast-glob: "npm:^3.3.2" 15408 15408 fbemitter: "npm:^3.0.0" 15409 15409 ignore: "npm:^5.3.1" 15410 15410 resolve-from: "npm:^5.0.0" 15411 15411 peerDependencies: 15412 15412 expo: "*" 15413 + react: "*" 15413 15414 bin: 15414 15415 expo-updates: bin/cli.js 15415 - checksum: 10/727518a51f638fed6e42bc948536074b1d469650693a02aa331d254a492779c96ac0f4c718b8a37c8ab0256570a9314a1b40169e403dcebedd49c5a3450a0e9e 15416 + checksum: 10/45ba164c1398c4722afc84d5bedb0d1e3654780aa0b310be767d8c684686223bc8c644afcf596987d48cf30f6bc735e9d669f8c12b586114ec0b9d7d19e099d5 15416 15417 languageName: node 15417 15418 linkType: hard 15418 15419 15419 - "expo-video@npm:^1.2.7": 15420 - version: 1.2.7 15421 - resolution: "expo-video@npm:1.2.7" 15420 + "expo-video@npm:~2.0.1": 15421 + version: 2.0.1 15422 + resolution: "expo-video@npm:2.0.1" 15422 15423 peerDependencies: 15423 15424 expo: "*" 15424 - checksum: 10/4223857544de798f981d797e92b66ac86c0eaf2315847e16dddc33115bd3453ca72418f5ff6fb9adfef432610ea028df01aab720a914604eb5f4dbffb4e87790 15425 + react: "*" 15426 + react-native: "*" 15427 + checksum: 10/5b442463357fc8ff2fcb96c6377bfc4b680f4d42defb0e7e9c60ef12ac58b052a30388c6164d1d7af3feafc57158cefec74433d0cc218e2baf63eafa2d4e764c 15425 15428 languageName: node 15426 15429 linkType: hard 15427 15430 15428 - "expo-web-browser@npm:~13.0.3": 15429 - version: 13.0.3 15430 - resolution: "expo-web-browser@npm:13.0.3" 15431 + "expo-web-browser@npm:~14.0.1": 15432 + version: 14.0.1 15433 + resolution: "expo-web-browser@npm:14.0.1" 15431 15434 peerDependencies: 15432 15435 expo: "*" 15433 - checksum: 10/4a7127a7cc243b47c3d02805cfeade55b9c84706ae596fee9fe8f5e9385d65b3fc26eff1a3618dd4c9f01aa4210d26ad3a95ce95ba7fa4e136d5d435b9044498 15436 + react-native: "*" 15437 + checksum: 10/fd25d8f3ca063f6f0c75a2af606b0407c2ffc1bb0da61c50749e535d9f27172a4e496c5dbb3fb217edf89c049c8cd28baba03e5a5d00657c7e1a86c4a5237137 15434 15438 languageName: node 15435 15439 linkType: hard 15436 15440 15437 - "expo@npm:~51.0.38": 15438 - version: 51.0.38 15439 - resolution: "expo@npm:51.0.38" 15441 + "expo@npm:~52.0.8": 15442 + version: 52.0.8 15443 + resolution: "expo@npm:52.0.8" 15440 15444 dependencies: 15441 15445 "@babel/runtime": "npm:^7.20.0" 15442 - "@expo/cli": "npm:0.18.30" 15443 - "@expo/config": "npm:9.0.4" 15444 - "@expo/config-plugins": "npm:8.0.10" 15445 - "@expo/metro-config": "npm:0.18.11" 15446 - "@expo/vector-icons": "npm:^14.0.3" 15447 - babel-preset-expo: "npm:~11.0.15" 15448 - expo-asset: "npm:~10.0.10" 15449 - expo-file-system: "npm:~17.0.1" 15450 - expo-font: "npm:~12.0.10" 15451 - expo-keep-awake: "npm:~13.0.2" 15452 - expo-modules-autolinking: "npm:1.11.3" 15453 - expo-modules-core: "npm:1.12.26" 15446 + "@expo/cli": "npm:0.21.6" 15447 + "@expo/config": "npm:~10.0.4" 15448 + "@expo/config-plugins": "npm:9.0.9" 15449 + "@expo/fingerprint": "npm:0.11.2" 15450 + "@expo/metro-config": "npm:0.19.4" 15451 + "@expo/vector-icons": "npm:^14.0.0" 15452 + babel-preset-expo: "npm:~12.0.1" 15453 + expo-asset: "npm:~11.0.1" 15454 + expo-constants: "npm:~17.0.3" 15455 + expo-file-system: "npm:~18.0.4" 15456 + expo-font: "npm:~13.0.1" 15457 + expo-keep-awake: "npm:~14.0.1" 15458 + expo-modules-autolinking: "npm:2.0.2" 15459 + expo-modules-core: "npm:2.0.4" 15454 15460 fbemitter: "npm:^3.0.0" 15461 + web-streams-polyfill: "npm:^3.3.2" 15455 15462 whatwg-url-without-unicode: "npm:8.0.0-3" 15463 + peerDependencies: 15464 + "@expo/dom-webview": "*" 15465 + "@expo/metro-runtime": "*" 15466 + react: "*" 15467 + react-native: "*" 15468 + react-native-webview: "*" 15469 + peerDependenciesMeta: 15470 + "@expo/dom-webview": 15471 + optional: true 15472 + "@expo/metro-runtime": 15473 + optional: true 15474 + react-native-webview: 15475 + optional: true 15456 15476 bin: 15457 15477 expo: bin/cli 15458 - checksum: 10/5d3d67d72434c38c3d1d03cd40df7d8540e7c6c11fdec2ea20ef563e5a7ee49716927dd87f832f5f5ba19c6466cb92c0b5a88cade4e06cf87048aecbe371d166 15478 + checksum: 10/2c01e3583bfb9d455afe0fad421a98567926182a4bbd1476bc66a5c072976c093a10f5a05bfc5e263083c49be4d867f1b991ba078a143d3d3247fe4bd9157ba3 15459 15479 languageName: node 15460 15480 linkType: hard 15461 15481 ··· 15588 15608 languageName: node 15589 15609 linkType: hard 15590 15610 15591 - "fast-json-stable-stringify@npm:^2.0.0": 15611 + "fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": 15592 15612 version: 2.1.0 15593 15613 resolution: "fast-json-stable-stringify@npm:2.1.0" 15594 15614 checksum: 10/2c20055c1fa43c922428f16ca8bb29f2807de63e5c851f665f7ac9790176c01c3b40335257736b299764a8d383388dabc73c8083b8e1bc3d99f0a941444ec60e ··· 15634 15654 languageName: node 15635 15655 linkType: hard 15636 15656 15637 - "fast-xml-parser@npm:^4.0.12, fast-xml-parser@npm:^4.2.4, fast-xml-parser@npm:^4.3.0": 15657 + "fast-xml-parser@npm:^4.3.0": 15638 15658 version: 4.4.0 15639 15659 resolution: "fast-xml-parser@npm:4.4.0" 15640 15660 dependencies: ··· 15867 15887 languageName: node 15868 15888 linkType: hard 15869 15889 15870 - "find-up@npm:^5.0.0, find-up@npm:~5.0.0": 15890 + "find-up@npm:^5.0.0": 15871 15891 version: 5.0.0 15872 15892 resolution: "find-up@npm:5.0.0" 15873 15893 dependencies: ··· 16173 16193 languageName: node 16174 16194 linkType: hard 16175 16195 16176 - "freeport-async@npm:2.0.0": 16196 + "freeport-async@npm:^2.0.0": 16177 16197 version: 2.0.0 16178 16198 resolution: "freeport-async@npm:2.0.0" 16179 16199 checksum: 10/c0bc71eb48a9b60277e55f1b4c7b0c14d385e9a6b3f0870a1d8b1ae441504afd481380fe7923506364d6fb765546a5cef821dcc5fe7ec2ae17bb8902c94d49b9 ··· 16522 16542 languageName: node 16523 16543 linkType: hard 16524 16544 16545 + "get-package-type@npm:^0.1.0": 16546 + version: 0.1.0 16547 + resolution: "get-package-type@npm:0.1.0" 16548 + checksum: 10/bba0811116d11e56d702682ddef7c73ba3481f114590e705fc549f4d868972263896af313c57a25c076e3c0d567e11d919a64ba1b30c879be985fc9d44f96148 16549 + languageName: node 16550 + linkType: hard 16551 + 16525 16552 "get-pkg-repo@npm:^4.2.1": 16526 16553 version: 4.2.1 16527 16554 resolution: "get-pkg-repo@npm:4.2.1" ··· 16711 16738 languageName: node 16712 16739 linkType: hard 16713 16740 16714 - "glob@npm:7.1.6": 16715 - version: 7.1.6 16716 - resolution: "glob@npm:7.1.6" 16741 + "glob@npm:^10.2.2, glob@npm:^10.3.10": 16742 + version: 10.4.3 16743 + resolution: "glob@npm:10.4.3" 16717 16744 dependencies: 16718 - fs.realpath: "npm:^1.0.0" 16719 - inflight: "npm:^1.0.4" 16720 - inherits: "npm:2" 16721 - minimatch: "npm:^3.0.4" 16722 - once: "npm:^1.3.0" 16723 - path-is-absolute: "npm:^1.0.0" 16724 - checksum: 10/7d6ec98bc746980d5fe4d764b9c7ada727e3fbd2a7d85cd96dd95fb18638c9c54a70c692fd2ab5d68a186dc8cd9d6a4192d3df220beed891f687db179c430237 16745 + foreground-child: "npm:^3.1.0" 16746 + jackspeak: "npm:^3.1.2" 16747 + minimatch: "npm:^9.0.4" 16748 + minipass: "npm:^7.1.2" 16749 + package-json-from-dist: "npm:^1.0.0" 16750 + path-scurry: "npm:^1.11.1" 16751 + bin: 16752 + glob: dist/esm/bin.mjs 16753 + checksum: 10/7670e257bc7cf62a5649e79a71fc3b74806516eabfbfef0a949e11c5530c215d0f6d75c8c0c35266ff44ef6cb29b6c0e59be63906909be946d4c65df5d336be8 16725 16754 languageName: node 16726 16755 linkType: hard 16727 16756 16728 - "glob@npm:^10.2.2, glob@npm:^10.3.10": 16729 - version: 10.4.3 16730 - resolution: "glob@npm:10.4.3" 16757 + "glob@npm:^10.4.2": 16758 + version: 10.4.5 16759 + resolution: "glob@npm:10.4.5" 16731 16760 dependencies: 16732 16761 foreground-child: "npm:^3.1.0" 16733 16762 jackspeak: "npm:^3.1.2" ··· 16737 16766 path-scurry: "npm:^1.11.1" 16738 16767 bin: 16739 16768 glob: dist/esm/bin.mjs 16740 - checksum: 10/7670e257bc7cf62a5649e79a71fc3b74806516eabfbfef0a949e11c5530c215d0f6d75c8c0c35266ff44ef6cb29b6c0e59be63906909be946d4c65df5d336be8 16769 + checksum: 10/698dfe11828b7efd0514cd11e573eaed26b2dff611f0400907281ce3eab0c1e56143ef9b35adc7c77ecc71fba74717b510c7c223d34ca8a98ec81777b293d4ac 16741 16770 languageName: node 16742 16771 linkType: hard 16743 16772 ··· 16754 16783 languageName: node 16755 16784 linkType: hard 16756 16785 16757 - "glob@npm:^7.1.1, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6, glob@npm:^7.1.7, glob@npm:^7.2.3": 16786 + "glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6": 16758 16787 version: 7.2.3 16759 16788 resolution: "glob@npm:7.2.3" 16760 16789 dependencies: ··· 16944 16973 languageName: node 16945 16974 linkType: hard 16946 16975 16947 - "graceful-fs@npm:4.2.11, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.3, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": 16976 + "graceful-fs@npm:4.2.11, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": 16948 16977 version: 4.2.11 16949 16978 resolution: "graceful-fs@npm:4.2.11" 16950 16979 checksum: 10/bf152d0ed1dc159239db1ba1f74fdbc40cb02f626770dcd5815c427ce0688c2635a06ed69af364396da4636d0408fcf7d4afdf7881724c3307e46aff30ca49e2 ··· 16958 16987 languageName: node 16959 16988 linkType: hard 16960 16989 16961 - "graphql-tag@npm:^2.10.1": 16962 - version: 2.12.6 16963 - resolution: "graphql-tag@npm:2.12.6" 16964 - dependencies: 16965 - tslib: "npm:^2.1.0" 16966 - peerDependencies: 16967 - graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 16968 - checksum: 10/23a2bc1d3fbeae86444204e0ac08522e09dc369559ba75768e47421a7321b59f352fb5b2c9a5c37d3cf6de890dca4e5ac47e740c7cc622e728572ecaa649089e 16969 - languageName: node 16970 - linkType: hard 16971 - 16972 - "graphql@npm:15.8.0": 16973 - version: 15.8.0 16974 - resolution: "graphql@npm:15.8.0" 16975 - checksum: 10/f8d830287a9028d6779b59c437e0ade63a713b47521b02b60316df1761b805b1a7ce03be88053d224b7f78f5d1d1a786d287ab229cd158b42ebeea9e86daaba5 16976 - languageName: node 16977 - linkType: hard 16978 - 16979 16990 "gtoken@npm:^7.0.0": 16980 16991 version: 7.1.0 16981 16992 resolution: "gtoken@npm:7.1.0" ··· 17124 17135 languageName: node 17125 17136 linkType: hard 17126 17137 17127 - "hermes-estree@npm:0.19.1": 17128 - version: 0.19.1 17129 - resolution: "hermes-estree@npm:0.19.1" 17130 - checksum: 10/dadafea5cf8fcf7d2c2d3d43740898c73b03db4747d4cc83e3cdb06bfcfbf3ee97f4ee26f077aea455771703f5bd18a4cb40c1ce7af9e38ce541d6c03fc8847a 17131 - languageName: node 17132 - linkType: hard 17133 - 17134 17138 "hermes-estree@npm:0.20.1": 17135 17139 version: 0.20.1 17136 17140 resolution: "hermes-estree@npm:0.20.1" ··· 17138 17142 languageName: node 17139 17143 linkType: hard 17140 17144 17141 - "hermes-parser@npm:0.19.1": 17142 - version: 0.19.1 17143 - resolution: "hermes-parser@npm:0.19.1" 17144 - dependencies: 17145 - hermes-estree: "npm:0.19.1" 17146 - checksum: 10/4fd886ce3ab80c79b258fa60085f2915f587aef57bf59e17f6cfe3b0ad2e7b1a1cfff8371b736392f66cff0658a90ece279b608edcb5589f8c56957e799c56f2 17145 + "hermes-estree@npm:0.23.1": 17146 + version: 0.23.1 17147 + resolution: "hermes-estree@npm:0.23.1" 17148 + checksum: 10/b7ad78f53044d53ec1c77e93036c16e34f6f0985c895540876301e4791d4db08da828870977140f5cf1ae34532bbb9d9d013a0a1a4a5a0da05177225648d5295 17149 + languageName: node 17150 + linkType: hard 17151 + 17152 + "hermes-estree@npm:0.24.0": 17153 + version: 0.24.0 17154 + resolution: "hermes-estree@npm:0.24.0" 17155 + checksum: 10/f2c55e06d8a3336efbb19a85974e6a083029a11ea61703d6d626cf7d476deb861189c1ea5f7ecac6055ae4330888100ed0de0343837e01348dec185433b824f4 17156 + languageName: node 17157 + linkType: hard 17158 + 17159 + "hermes-estree@npm:0.25.1": 17160 + version: 0.25.1 17161 + resolution: "hermes-estree@npm:0.25.1" 17162 + checksum: 10/7b1eca98b264a25632064cffa5771360d30cf452e77db1e191f9913ee45cf78c292b2dbca707e92fb71b0870abb97e94b506a5ab80abd96ba237fee169b601fe 17147 17163 languageName: node 17148 17164 linkType: hard 17149 17165 ··· 17156 17172 languageName: node 17157 17173 linkType: hard 17158 17174 17159 - "hermes-profile-transformer@npm:^0.0.6": 17160 - version: 0.0.6 17161 - resolution: "hermes-profile-transformer@npm:0.0.6" 17175 + "hermes-parser@npm:0.23.1": 17176 + version: 0.23.1 17177 + resolution: "hermes-parser@npm:0.23.1" 17162 17178 dependencies: 17163 - source-map: "npm:^0.7.3" 17164 - checksum: 10/92ffe2ad1baa7c6d6ed3f62dc33a1ac579dac408fece35ce82c25ca2844cbd48e8d3e425558bd3f76e20065af787033032ae23c881e5084c5855056389e8cfe1 17179 + hermes-estree: "npm:0.23.1" 17180 + checksum: 10/de88df4f23bd8dc2ffa89c8a317445320af8c7705a2aeeb05c4dd171f037a747982be153a0a237b1c9c7337b79bceaeb5052934cb8a25fe2e2473294a5343334 17181 + languageName: node 17182 + linkType: hard 17183 + 17184 + "hermes-parser@npm:0.24.0": 17185 + version: 0.24.0 17186 + resolution: "hermes-parser@npm:0.24.0" 17187 + dependencies: 17188 + hermes-estree: "npm:0.24.0" 17189 + checksum: 10/c473cf2c3a4dd3fa835c52fe67b4554e88da40cecb4cfd12f0860004eea77256c34c8d5881ef3e0f8bd529edb8f71e1296296e8282b6aee2d1399a97e787ad33 17190 + languageName: node 17191 + linkType: hard 17192 + 17193 + "hermes-parser@npm:0.25.1": 17194 + version: 0.25.1 17195 + resolution: "hermes-parser@npm:0.25.1" 17196 + dependencies: 17197 + hermes-estree: "npm:0.25.1" 17198 + checksum: 10/805efc05691420f236654349872c70731121791fa54de521c7ee51059eae34f84dd19f22ee846741dcb60372f8fb5335719b96b4ecb010d2aed7d872f2eff9cc 17165 17199 languageName: node 17166 17200 linkType: hard 17167 17201 ··· 17424 17458 languageName: node 17425 17459 linkType: hard 17426 17460 17427 - "https-proxy-agent@npm:^5.0.0, https-proxy-agent@npm:^5.0.1": 17461 + "https-proxy-agent@npm:^5.0.0": 17428 17462 version: 5.0.1 17429 17463 resolution: "https-proxy-agent@npm:5.0.1" 17430 17464 dependencies: ··· 17585 17619 languageName: node 17586 17620 linkType: hard 17587 17621 17622 + "immer@npm:^10.0.3": 17623 + version: 10.1.1 17624 + resolution: "immer@npm:10.1.1" 17625 + checksum: 10/9dacf1e8c201d69191ccd88dc5d733bafe166cd45a5a360c5d7c88f1de0dff974a94114d72b35f3106adfe587fcfb131c545856184a2247d89d735ad25589863 17626 + languageName: node 17627 + linkType: hard 17628 + 17588 17629 "import-fresh@npm:^2.0.0": 17589 17630 version: 2.0.0 17590 17631 resolution: "import-fresh@npm:2.0.0" ··· 17731 17772 languageName: node 17732 17773 linkType: hard 17733 17774 17734 - "internal-ip@npm:4.3.0": 17775 + "internal-ip@npm:^4.3.0": 17735 17776 version: 4.3.0 17736 17777 resolution: "internal-ip@npm:4.3.0" 17737 17778 dependencies: ··· 17868 17909 languageName: node 17869 17910 linkType: hard 17870 17911 17871 - "is-buffer@npm:~1.1.1, is-buffer@npm:~1.1.6": 17912 + "is-buffer@npm:~1.1.6": 17872 17913 version: 1.1.6 17873 17914 resolution: "is-buffer@npm:1.1.6" 17874 17915 checksum: 10/f63da109e74bbe8947036ed529d43e4ae0c5fcd0909921dce4917ad3ea212c6a87c29f525ba1d17c0858c18331cf1046d4fc69ef59ed26896b25c8288a627133 ··· 17961 18002 languageName: node 17962 18003 linkType: hard 17963 18004 17964 - "is-extglob@npm:^1.0.0": 17965 - version: 1.0.0 17966 - resolution: "is-extglob@npm:1.0.0" 17967 - checksum: 10/5eea8517feeae5206547c0fc838c1416ec763b30093c286e1965a05f46b74a59ad391f912565f3b67c9c31cab4769ab9c35420e016b608acb47309be8d0d6e94 17968 - languageName: node 17969 - linkType: hard 17970 - 17971 18005 "is-extglob@npm:^2.1.1": 17972 18006 version: 2.1.1 17973 18007 resolution: "is-extglob@npm:2.1.1" 17974 18008 checksum: 10/df033653d06d0eb567461e58a7a8c9f940bd8c22274b94bf7671ab36df5719791aae15eef6d83bbb5e23283967f2f984b8914559d4449efda578c775c4be6f85 17975 - languageName: node 17976 - linkType: hard 17977 - 17978 - "is-fullwidth-code-point@npm:^2.0.0": 17979 - version: 2.0.0 17980 - resolution: "is-fullwidth-code-point@npm:2.0.0" 17981 - checksum: 10/eef9c6e15f68085fec19ff6a978a6f1b8f48018fd1265035552078ee945573594933b09bbd6f562553e2a241561439f1ef5339276eba68d272001343084cfab8 17982 18009 languageName: node 17983 18010 linkType: hard 17984 18011 ··· 18014 18041 languageName: node 18015 18042 linkType: hard 18016 18043 18017 - "is-glob@npm:^2.0.0": 18018 - version: 2.0.1 18019 - resolution: "is-glob@npm:2.0.1" 18020 - dependencies: 18021 - is-extglob: "npm:^1.0.0" 18022 - checksum: 10/089f5f93640072491396a5f075ce73e949a90f35832b782bc49a6b7637d58e392d53cb0b395e059ccab70fcb82ff35d183f6f9ebbcb43227a1e02e3fed5430c9 18023 - languageName: node 18024 - linkType: hard 18025 - 18026 18044 "is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": 18027 18045 version: 4.0.3 18028 18046 resolution: "is-glob@npm:4.0.3" ··· 18047 18065 version: 1.0.0 18048 18066 resolution: "is-interactive@npm:1.0.0" 18049 18067 checksum: 10/824808776e2d468b2916cdd6c16acacebce060d844c35ca6d82267da692e92c3a16fdba624c50b54a63f38bdc4016055b6f443ce57d7147240de4f8cdabaf6f9 18050 - languageName: node 18051 - linkType: hard 18052 - 18053 - "is-invalid-path@npm:^0.1.0": 18054 - version: 0.1.0 18055 - resolution: "is-invalid-path@npm:0.1.0" 18056 - dependencies: 18057 - is-glob: "npm:^2.0.0" 18058 - checksum: 10/184dd40d9c7a765506e4fdcd7e664f86de68a4d5d429964b160255fe40de1b4323d1b4e6ea76ff87debf788a330e4f27cb1dfe5fc2420405e1c8a16a6ed87092 18059 18068 languageName: node 18060 18069 linkType: hard 18061 18070 ··· 18290 18299 languageName: node 18291 18300 linkType: hard 18292 18301 18293 - "is-valid-path@npm:^0.1.1": 18294 - version: 0.1.1 18295 - resolution: "is-valid-path@npm:0.1.1" 18296 - dependencies: 18297 - is-invalid-path: "npm:^0.1.0" 18298 - checksum: 10/d6e716a4a999c75e32ff91ff1ea684fc9e69de05747ec4aaae049460beb971c79f474629dd87a5b4b662691f8323c1920f1b6f1dcdcb39b07082f0ff77b71da6 18299 - languageName: node 18300 - linkType: hard 18301 - 18302 18302 "is-weakref@npm:^1.0.2": 18303 18303 version: 1.0.2 18304 18304 resolution: "is-weakref@npm:1.0.2" ··· 18315 18315 languageName: node 18316 18316 linkType: hard 18317 18317 18318 - "is-wsl@npm:^1.1.0": 18319 - version: 1.1.0 18320 - resolution: "is-wsl@npm:1.1.0" 18321 - checksum: 10/ea157d232351e68c92bd62fc541771096942fe72f69dff452dd26dcc31466258c570a3b04b8cda2e01cd2968255b02951b8670d08ea4ed76d6b1a646061ac4fe 18322 - languageName: node 18323 - linkType: hard 18324 - 18325 18318 "is-wsl@npm:^2.1.1, is-wsl@npm:^2.2.0": 18326 18319 version: 2.2.0 18327 18320 resolution: "is-wsl@npm:2.2.0" ··· 18384 18377 languageName: node 18385 18378 linkType: hard 18386 18379 18380 + "iso-datestring-validator@npm:^2.2.2": 18381 + version: 2.2.2 18382 + resolution: "iso-datestring-validator@npm:2.2.2" 18383 + checksum: 10/68afe892e594e4340a9a050b96bc674dc458ba8b0c8bd552d7e7fe689137e1a9c85b82257d74b46310f3464fed9187ed51b3db698bc8ffe01a824776b11cfb44 18384 + languageName: node 18385 + linkType: hard 18386 + 18387 18387 "isobject@npm:^3.0.1": 18388 18388 version: 3.0.1 18389 18389 resolution: "isobject@npm:3.0.1" ··· 18409 18409 languageName: node 18410 18410 linkType: hard 18411 18411 18412 + "istanbul-lib-coverage@npm:^3.2.0": 18413 + version: 3.2.2 18414 + resolution: "istanbul-lib-coverage@npm:3.2.2" 18415 + checksum: 10/40bbdd1e937dfd8c830fa286d0f665e81b7a78bdabcd4565f6d5667c99828bda3db7fb7ac6b96a3e2e8a2461ddbc5452d9f8bc7d00cb00075fa6a3e99f5b6a81 18416 + languageName: node 18417 + linkType: hard 18418 + 18419 + "istanbul-lib-instrument@npm:^5.0.4": 18420 + version: 5.2.1 18421 + resolution: "istanbul-lib-instrument@npm:5.2.1" 18422 + dependencies: 18423 + "@babel/core": "npm:^7.12.3" 18424 + "@babel/parser": "npm:^7.14.7" 18425 + "@istanbuljs/schema": "npm:^0.1.2" 18426 + istanbul-lib-coverage: "npm:^3.2.0" 18427 + semver: "npm:^6.3.0" 18428 + checksum: 10/bbc4496c2f304d799f8ec22202ab38c010ac265c441947f075c0f7d46bd440b45c00e46017cf9053453d42182d768b1d6ed0e70a142c95ab00df9843aa5ab80e 18429 + languageName: node 18430 + linkType: hard 18431 + 18412 18432 "iterate-object@npm:^1.3.4": 18413 18433 version: 1.3.4 18414 18434 resolution: "iterate-object@npm:1.3.4" ··· 18476 18496 languageName: node 18477 18497 linkType: hard 18478 18498 18499 + "jest-haste-map@npm:^29.7.0": 18500 + version: 29.7.0 18501 + resolution: "jest-haste-map@npm:29.7.0" 18502 + dependencies: 18503 + "@jest/types": "npm:^29.6.3" 18504 + "@types/graceful-fs": "npm:^4.1.3" 18505 + "@types/node": "npm:*" 18506 + anymatch: "npm:^3.0.3" 18507 + fb-watchman: "npm:^2.0.0" 18508 + fsevents: "npm:^2.3.2" 18509 + graceful-fs: "npm:^4.2.9" 18510 + jest-regex-util: "npm:^29.6.3" 18511 + jest-util: "npm:^29.7.0" 18512 + jest-worker: "npm:^29.7.0" 18513 + micromatch: "npm:^4.0.4" 18514 + walker: "npm:^1.0.8" 18515 + dependenciesMeta: 18516 + fsevents: 18517 + optional: true 18518 + checksum: 10/8531b42003581cb18a69a2774e68c456fb5a5c3280b1b9b77475af9e346b6a457250f9d756bfeeae2fe6cbc9ef28434c205edab9390ee970a919baddfa08bb85 18519 + languageName: node 18520 + linkType: hard 18521 + 18479 18522 "jest-message-util@npm:^29.7.0": 18480 18523 version: 29.7.0 18481 18524 resolution: "jest-message-util@npm:29.7.0" ··· 18504 18547 languageName: node 18505 18548 linkType: hard 18506 18549 18550 + "jest-regex-util@npm:^29.6.3": 18551 + version: 29.6.3 18552 + resolution: "jest-regex-util@npm:29.6.3" 18553 + checksum: 10/0518beeb9bf1228261695e54f0feaad3606df26a19764bc19541e0fc6e2a3737191904607fb72f3f2ce85d9c16b28df79b7b1ec9443aa08c3ef0e9efda6f8f2a 18554 + languageName: node 18555 + linkType: hard 18556 + 18507 18557 "jest-util@npm:^29.7.0": 18508 18558 version: 29.7.0 18509 18559 resolution: "jest-util@npm:29.7.0" ··· 18543 18593 languageName: node 18544 18594 linkType: hard 18545 18595 18546 - "jest-worker@npm:^29.6.3": 18596 + "jest-worker@npm:^29.6.3, jest-worker@npm:^29.7.0": 18547 18597 version: 29.7.0 18548 18598 resolution: "jest-worker@npm:29.7.0" 18549 18599 dependencies: ··· 18571 18621 languageName: node 18572 18622 linkType: hard 18573 18623 18574 - "joi@npm:^17.2.1": 18575 - version: 17.13.3 18576 - resolution: "joi@npm:17.13.3" 18577 - dependencies: 18578 - "@hapi/hoek": "npm:^9.3.0" 18579 - "@hapi/topo": "npm:^5.1.0" 18580 - "@sideway/address": "npm:^4.1.5" 18581 - "@sideway/formula": "npm:^3.0.1" 18582 - "@sideway/pinpoint": "npm:^2.0.0" 18583 - checksum: 10/4c150db0c820c3a52f4a55c82c1fc5e144a5b5f4da9ffebc7339a15469d1a447ebb427ced446efcb9709ab56bd71a06c4c67c9381bc1b9f9ae63fc7c89209bdf 18584 - languageName: node 18585 - linkType: hard 18586 - 18587 18624 "join-component@npm:^1.1.0": 18588 18625 version: 1.1.0 18589 18626 resolution: "join-component@npm:1.1.0" ··· 18595 18632 version: 4.15.9 18596 18633 resolution: "jose@npm:4.15.9" 18597 18634 checksum: 10/256234b6f85cdc080b1331f2d475bd58c8ccf459cb20f70ac5e4200b271bce10002b1c2f8e5b96dd975d83065ae5a586d52cdf89d28471d56de5d297992f9905 18635 + languageName: node 18636 + linkType: hard 18637 + 18638 + "jose@npm:^5.2.0": 18639 + version: 5.9.6 18640 + resolution: "jose@npm:5.9.6" 18641 + checksum: 10/3ebbda9f6a96d493944f2720bf4436347884666cd87b7087a61cff12a3b540fe6fd743b5eb8defe7bc2a45aa58992ae6687da78797d91fc4e3e5e8588aa98c7d 18598 18642 languageName: node 18599 18643 linkType: hard 18600 18644 ··· 18698 18742 languageName: node 18699 18743 linkType: hard 18700 18744 18701 - "jsesc@npm:~0.5.0": 18702 - version: 0.5.0 18703 - resolution: "jsesc@npm:0.5.0" 18704 - bin: 18705 - jsesc: bin/jsesc 18706 - checksum: 10/fab949f585c71e169c5cbe00f049f20de74f067081bbd64a55443bad1c71e1b5a5b448f2359bf2fe06f5ed7c07e2e4a9101843b01c823c30b6afc11f5bfaf724 18707 - languageName: node 18708 - linkType: hard 18709 - 18710 18745 "json-bigint@npm:^1.0.0": 18711 18746 version: 1.0.0 18712 18747 resolution: "json-bigint@npm:1.0.0" ··· 18758 18793 version: 1.0.1 18759 18794 resolution: "json-rpc-random-id@npm:1.0.1" 18760 18795 checksum: 10/fcd2e884193a129ace4002bd65a86e9cdb206733b4693baea77bd8b372cf8de3043fbea27716a2c9a716581a908ca8d978d9dfec4847eb2cf77edb4cf4b2252c 18761 - languageName: node 18762 - linkType: hard 18763 - 18764 - "json-schema-deref-sync@npm:^0.13.0": 18765 - version: 0.13.0 18766 - resolution: "json-schema-deref-sync@npm:0.13.0" 18767 - dependencies: 18768 - clone: "npm:^2.1.2" 18769 - dag-map: "npm:~1.0.0" 18770 - is-valid-path: "npm:^0.1.1" 18771 - lodash: "npm:^4.17.13" 18772 - md5: "npm:~2.2.0" 18773 - memory-cache: "npm:~0.2.0" 18774 - traverse: "npm:~0.6.6" 18775 - valid-url: "npm:~1.0.9" 18776 - checksum: 10/5aa27ca37bf8d85080afdcaa637c325a6c2c31a33f6029124b0ad2dd226a64b845412d1089a976ec8d0dc06dc82e8efb70ed26a63d58cebe04287be99ed0d28e 18777 18796 languageName: node 18778 18797 linkType: hard 18779 18798 ··· 19176 19195 languageName: node 19177 19196 linkType: hard 19178 19197 19179 - "lightningcss-darwin-arm64@npm:1.19.0": 19180 - version: 1.19.0 19181 - resolution: "lightningcss-darwin-arm64@npm:1.19.0" 19182 - conditions: os=darwin & cpu=arm64 19183 - languageName: node 19184 - linkType: hard 19185 - 19186 19198 "lightningcss-darwin-arm64@npm:1.22.0": 19187 19199 version: 1.22.0 19188 19200 resolution: "lightningcss-darwin-arm64@npm:1.22.0" ··· 19190 19202 languageName: node 19191 19203 linkType: hard 19192 19204 19193 - "lightningcss-darwin-x64@npm:1.19.0": 19194 - version: 1.19.0 19195 - resolution: "lightningcss-darwin-x64@npm:1.19.0" 19196 - conditions: os=darwin & cpu=x64 19205 + "lightningcss-darwin-arm64@npm:1.27.0": 19206 + version: 1.27.0 19207 + resolution: "lightningcss-darwin-arm64@npm:1.27.0" 19208 + conditions: os=darwin & cpu=arm64 19197 19209 languageName: node 19198 19210 linkType: hard 19199 19211 ··· 19204 19216 languageName: node 19205 19217 linkType: hard 19206 19218 19219 + "lightningcss-darwin-x64@npm:1.27.0": 19220 + version: 1.27.0 19221 + resolution: "lightningcss-darwin-x64@npm:1.27.0" 19222 + conditions: os=darwin & cpu=x64 19223 + languageName: node 19224 + linkType: hard 19225 + 19207 19226 "lightningcss-freebsd-x64@npm:1.22.0": 19208 19227 version: 1.22.0 19209 19228 resolution: "lightningcss-freebsd-x64@npm:1.22.0" ··· 19211 19230 languageName: node 19212 19231 linkType: hard 19213 19232 19214 - "lightningcss-linux-arm-gnueabihf@npm:1.19.0": 19215 - version: 1.19.0 19216 - resolution: "lightningcss-linux-arm-gnueabihf@npm:1.19.0" 19217 - conditions: os=linux & cpu=arm 19233 + "lightningcss-freebsd-x64@npm:1.27.0": 19234 + version: 1.27.0 19235 + resolution: "lightningcss-freebsd-x64@npm:1.27.0" 19236 + conditions: os=freebsd & cpu=x64 19218 19237 languageName: node 19219 19238 linkType: hard 19220 19239 ··· 19225 19244 languageName: node 19226 19245 linkType: hard 19227 19246 19228 - "lightningcss-linux-arm64-gnu@npm:1.19.0": 19229 - version: 1.19.0 19230 - resolution: "lightningcss-linux-arm64-gnu@npm:1.19.0" 19231 - conditions: os=linux & cpu=arm64 & libc=glibc 19247 + "lightningcss-linux-arm-gnueabihf@npm:1.27.0": 19248 + version: 1.27.0 19249 + resolution: "lightningcss-linux-arm-gnueabihf@npm:1.27.0" 19250 + conditions: os=linux & cpu=arm 19232 19251 languageName: node 19233 19252 linkType: hard 19234 19253 ··· 19239 19258 languageName: node 19240 19259 linkType: hard 19241 19260 19242 - "lightningcss-linux-arm64-musl@npm:1.19.0": 19243 - version: 1.19.0 19244 - resolution: "lightningcss-linux-arm64-musl@npm:1.19.0" 19245 - conditions: os=linux & cpu=arm64 & libc=musl 19261 + "lightningcss-linux-arm64-gnu@npm:1.27.0": 19262 + version: 1.27.0 19263 + resolution: "lightningcss-linux-arm64-gnu@npm:1.27.0" 19264 + conditions: os=linux & cpu=arm64 & libc=glibc 19246 19265 languageName: node 19247 19266 linkType: hard 19248 19267 ··· 19253 19272 languageName: node 19254 19273 linkType: hard 19255 19274 19256 - "lightningcss-linux-x64-gnu@npm:1.19.0": 19257 - version: 1.19.0 19258 - resolution: "lightningcss-linux-x64-gnu@npm:1.19.0" 19259 - conditions: os=linux & cpu=x64 & libc=glibc 19275 + "lightningcss-linux-arm64-musl@npm:1.27.0": 19276 + version: 1.27.0 19277 + resolution: "lightningcss-linux-arm64-musl@npm:1.27.0" 19278 + conditions: os=linux & cpu=arm64 & libc=musl 19260 19279 languageName: node 19261 19280 linkType: hard 19262 19281 ··· 19267 19286 languageName: node 19268 19287 linkType: hard 19269 19288 19270 - "lightningcss-linux-x64-musl@npm:1.19.0": 19271 - version: 1.19.0 19272 - resolution: "lightningcss-linux-x64-musl@npm:1.19.0" 19273 - conditions: os=linux & cpu=x64 & libc=musl 19289 + "lightningcss-linux-x64-gnu@npm:1.27.0": 19290 + version: 1.27.0 19291 + resolution: "lightningcss-linux-x64-gnu@npm:1.27.0" 19292 + conditions: os=linux & cpu=x64 & libc=glibc 19274 19293 languageName: node 19275 19294 linkType: hard 19276 19295 ··· 19281 19300 languageName: node 19282 19301 linkType: hard 19283 19302 19284 - "lightningcss-win32-x64-msvc@npm:1.19.0": 19285 - version: 1.19.0 19286 - resolution: "lightningcss-win32-x64-msvc@npm:1.19.0" 19287 - conditions: os=win32 & cpu=x64 19303 + "lightningcss-linux-x64-musl@npm:1.27.0": 19304 + version: 1.27.0 19305 + resolution: "lightningcss-linux-x64-musl@npm:1.27.0" 19306 + conditions: os=linux & cpu=x64 & libc=musl 19307 + languageName: node 19308 + linkType: hard 19309 + 19310 + "lightningcss-win32-arm64-msvc@npm:1.27.0": 19311 + version: 1.27.0 19312 + resolution: "lightningcss-win32-arm64-msvc@npm:1.27.0" 19313 + conditions: os=win32 & cpu=arm64 19288 19314 languageName: node 19289 19315 linkType: hard 19290 19316 19291 19317 "lightningcss-win32-x64-msvc@npm:1.22.0": 19292 19318 version: 1.22.0 19293 19319 resolution: "lightningcss-win32-x64-msvc@npm:1.22.0" 19320 + conditions: os=win32 & cpu=x64 19321 + languageName: node 19322 + linkType: hard 19323 + 19324 + "lightningcss-win32-x64-msvc@npm:1.27.0": 19325 + version: 1.27.0 19326 + resolution: "lightningcss-win32-x64-msvc@npm:1.27.0" 19294 19327 conditions: os=win32 & cpu=x64 19295 19328 languageName: node 19296 19329 linkType: hard ··· 19332 19365 languageName: node 19333 19366 linkType: hard 19334 19367 19335 - "lightningcss@npm:~1.19.0": 19336 - version: 1.19.0 19337 - resolution: "lightningcss@npm:1.19.0" 19368 + "lightningcss@npm:~1.27.0": 19369 + version: 1.27.0 19370 + resolution: "lightningcss@npm:1.27.0" 19338 19371 dependencies: 19339 19372 detect-libc: "npm:^1.0.3" 19340 - lightningcss-darwin-arm64: "npm:1.19.0" 19341 - lightningcss-darwin-x64: "npm:1.19.0" 19342 - lightningcss-linux-arm-gnueabihf: "npm:1.19.0" 19343 - lightningcss-linux-arm64-gnu: "npm:1.19.0" 19344 - lightningcss-linux-arm64-musl: "npm:1.19.0" 19345 - lightningcss-linux-x64-gnu: "npm:1.19.0" 19346 - lightningcss-linux-x64-musl: "npm:1.19.0" 19347 - lightningcss-win32-x64-msvc: "npm:1.19.0" 19373 + lightningcss-darwin-arm64: "npm:1.27.0" 19374 + lightningcss-darwin-x64: "npm:1.27.0" 19375 + lightningcss-freebsd-x64: "npm:1.27.0" 19376 + lightningcss-linux-arm-gnueabihf: "npm:1.27.0" 19377 + lightningcss-linux-arm64-gnu: "npm:1.27.0" 19378 + lightningcss-linux-arm64-musl: "npm:1.27.0" 19379 + lightningcss-linux-x64-gnu: "npm:1.27.0" 19380 + lightningcss-linux-x64-musl: "npm:1.27.0" 19381 + lightningcss-win32-arm64-msvc: "npm:1.27.0" 19382 + lightningcss-win32-x64-msvc: "npm:1.27.0" 19348 19383 dependenciesMeta: 19349 19384 lightningcss-darwin-arm64: 19350 19385 optional: true 19351 19386 lightningcss-darwin-x64: 19387 + optional: true 19388 + lightningcss-freebsd-x64: 19352 19389 optional: true 19353 19390 lightningcss-linux-arm-gnueabihf: 19354 19391 optional: true ··· 19360 19397 optional: true 19361 19398 lightningcss-linux-x64-musl: 19362 19399 optional: true 19400 + lightningcss-win32-arm64-msvc: 19401 + optional: true 19363 19402 lightningcss-win32-x64-msvc: 19364 19403 optional: true 19365 - checksum: 10/634ca4bd41a59eef3feca0123588da77ab644bc6b6d55e87b6a0b3d9c84b0c951ac19e326ab10948134af10cc2e1382b34cb251e334b0081c6e00fb3a8b31c2e 19404 + checksum: 10/275a0103c7dc1dfcf8e456a0523d1719a1caff916c45229ec62cdb28a814dce12b7065b88865fb74fc03a2a658ac3361caff5c348f1646313513c125d4f27954 19366 19405 languageName: node 19367 19406 linkType: hard 19368 19407 ··· 19722 19761 languageName: node 19723 19762 linkType: hard 19724 19763 19725 - "lodash@npm:^4.17.10, lodash@npm:^4.17.13, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4": 19764 + "lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4": 19726 19765 version: 4.17.21 19727 19766 resolution: "lodash@npm:4.17.21" 19728 19767 checksum: 10/c08619c038846ea6ac754abd6dd29d2568aa705feb69339e836dfa8d8b09abbb2f859371e86863eda41848221f9af43714491467b5b0299122431e202bb0c532 ··· 19774 19813 languageName: node 19775 19814 linkType: hard 19776 19815 19777 - "logkitty@npm:^0.7.1": 19778 - version: 0.7.1 19779 - resolution: "logkitty@npm:0.7.1" 19780 - dependencies: 19781 - ansi-fragments: "npm:^0.2.1" 19782 - dayjs: "npm:^1.8.15" 19783 - yargs: "npm:^15.1.0" 19784 - bin: 19785 - logkitty: bin/logkitty.js 19786 - checksum: 10/1b9ab873198f31d42f353ab05cee93678b66788de159ea8ff2425afb20bf929eb021cbd2890d7dbdea59ddacdc029e8d8d0d485a35af0583435ff36daeef180c 19787 - languageName: node 19788 - linkType: hard 19789 - 19790 19816 "long@npm:^5.0.0": 19791 19817 version: 5.2.3 19792 19818 resolution: "long@npm:5.2.3" ··· 20041 20067 crypt: "npm:0.0.2" 20042 20068 is-buffer: "npm:~1.1.6" 20043 20069 checksum: 10/88dce9fb8df1a084c2385726dcc18c7f54e0b64c261b5def7cdfe4928c4ee1cd68695c34108b4fab7ecceb05838c938aa411c6143df9fdc0026c4ddb4e4e72fa 20044 - languageName: node 20045 - linkType: hard 20046 - 20047 - "md5@npm:~2.2.0": 20048 - version: 2.2.1 20049 - resolution: "md5@npm:2.2.1" 20050 - dependencies: 20051 - charenc: "npm:~0.0.1" 20052 - crypt: "npm:~0.0.1" 20053 - is-buffer: "npm:~1.1.1" 20054 - checksum: 10/ba5f82d39670124739f144446aec1c1d592e63c2d757df32fafe716a0b7db6a2948406c94023c5dac1d855ccb5b1973ebcb541236378306f6862e7f525e037d8 20055 - languageName: node 20056 - linkType: hard 20057 - 20058 - "md5hex@npm:^1.0.0": 20059 - version: 1.0.0 20060 - resolution: "md5hex@npm:1.0.0" 20061 - checksum: 10/b47124b3c7e1fda8a1f4894ff65840f9563a690e019c4f12069c53e4b104cbc8e46917568604af119e04ba20a2c1017317d6d6ab88c4c86c49280da72c00b651 20062 20070 languageName: node 20063 20071 linkType: hard 20064 20072 ··· 20126 20134 languageName: node 20127 20135 linkType: hard 20128 20136 20129 - "memory-cache@npm:~0.2.0": 20130 - version: 0.2.0 20131 - resolution: "memory-cache@npm:0.2.0" 20132 - checksum: 10/583573d75702123e29a27c0323934ca9a468e0b530845714be7b584dcef8a38085d8f7bb97c2fe8eceb021e73dd6edaad1750f2b9f0d87732e634871302fa154 20133 - languageName: node 20134 - linkType: hard 20135 - 20136 20137 "meow@npm:^8.1.2": 20137 20138 version: 8.1.2 20138 20139 resolution: "meow@npm:8.1.2" ··· 20191 20192 languageName: node 20192 20193 linkType: hard 20193 20194 20195 + "metro-babel-transformer@npm:0.81.0": 20196 + version: 0.81.0 20197 + resolution: "metro-babel-transformer@npm:0.81.0" 20198 + dependencies: 20199 + "@babel/core": "npm:^7.25.2" 20200 + flow-enums-runtime: "npm:^0.0.6" 20201 + hermes-parser: "npm:0.24.0" 20202 + nullthrows: "npm:^1.1.1" 20203 + checksum: 10/183ccc4890cef88a0bfb8c9be34a471fe27e48bc33465b2ecfcc605475ec1c28ff27d870ce934ca282a199d61ed5a46d62b42553503f07c1f93adc6d2697b5d2 20204 + languageName: node 20205 + linkType: hard 20206 + 20194 20207 "metro-cache-key@npm:0.80.9": 20195 20208 version: 0.80.9 20196 20209 resolution: "metro-cache-key@npm:0.80.9" ··· 20198 20211 languageName: node 20199 20212 linkType: hard 20200 20213 20214 + "metro-cache-key@npm:0.81.0": 20215 + version: 0.81.0 20216 + resolution: "metro-cache-key@npm:0.81.0" 20217 + dependencies: 20218 + flow-enums-runtime: "npm:^0.0.6" 20219 + checksum: 10/a96e4062ac0f4684f1d80c8b8c3da380c9d7be506c2bc14750d46a6850610c6e05cb1907cc5421393299f25f40575335e899667519d5435c95a09b0438619847 20220 + languageName: node 20221 + linkType: hard 20222 + 20201 20223 "metro-cache@npm:0.80.9": 20202 20224 version: 0.80.9 20203 20225 resolution: "metro-cache@npm:0.80.9" ··· 20208 20230 languageName: node 20209 20231 linkType: hard 20210 20232 20211 - "metro-config@npm:0.80.9, metro-config@npm:^0.80.3, metro-config@npm:^0.80.4": 20233 + "metro-cache@npm:0.81.0": 20234 + version: 0.81.0 20235 + resolution: "metro-cache@npm:0.81.0" 20236 + dependencies: 20237 + exponential-backoff: "npm:^3.1.1" 20238 + flow-enums-runtime: "npm:^0.0.6" 20239 + metro-core: "npm:0.81.0" 20240 + checksum: 10/20f01fea29dad35fe76fdb9e50ddc428a849696d2e37262ed80e4a96101f708ab1c3196846df0e7569b057267604cc50ffa51065ab6a1c0adafcdabe0615cc41 20241 + languageName: node 20242 + linkType: hard 20243 + 20244 + "metro-config@npm:0.80.9, metro-config@npm:^0.80.4": 20212 20245 version: 0.80.9 20213 20246 resolution: "metro-config@npm:0.80.9" 20214 20247 dependencies: ··· 20223 20256 languageName: node 20224 20257 linkType: hard 20225 20258 20226 - "metro-core@npm:0.80.9, metro-core@npm:^0.80.3": 20259 + "metro-config@npm:0.81.0, metro-config@npm:^0.81.0": 20260 + version: 0.81.0 20261 + resolution: "metro-config@npm:0.81.0" 20262 + dependencies: 20263 + connect: "npm:^3.6.5" 20264 + cosmiconfig: "npm:^5.0.5" 20265 + flow-enums-runtime: "npm:^0.0.6" 20266 + jest-validate: "npm:^29.6.3" 20267 + metro: "npm:0.81.0" 20268 + metro-cache: "npm:0.81.0" 20269 + metro-core: "npm:0.81.0" 20270 + metro-runtime: "npm:0.81.0" 20271 + checksum: 10/f331e9b6dbbe9dbde2e34cbfc1f0a5f59ed1a02f0f64a9df5b2a2e8d4d8164264292d98ba5fb8c08e7973814a74609204370f3f488d74c573eb3e77bf06d08cc 20272 + languageName: node 20273 + linkType: hard 20274 + 20275 + "metro-core@npm:0.80.9": 20227 20276 version: 0.80.9 20228 20277 resolution: "metro-core@npm:0.80.9" 20229 20278 dependencies: ··· 20233 20282 languageName: node 20234 20283 linkType: hard 20235 20284 20285 + "metro-core@npm:0.81.0, metro-core@npm:^0.81.0": 20286 + version: 0.81.0 20287 + resolution: "metro-core@npm:0.81.0" 20288 + dependencies: 20289 + flow-enums-runtime: "npm:^0.0.6" 20290 + lodash.throttle: "npm:^4.1.1" 20291 + metro-resolver: "npm:0.81.0" 20292 + checksum: 10/ee6ea1372872949889f45b1f05ef21dc0d49966a7866d2d410b3d4145f5c45f8d3d4de3d3c5348ddcd8e8e6e1bd517971715a5435b6a03ce6ef775abcbb3559f 20293 + languageName: node 20294 + linkType: hard 20295 + 20236 20296 "metro-file-map@npm:0.80.9": 20237 20297 version: 0.80.9 20238 20298 resolution: "metro-file-map@npm:0.80.9" ··· 20255 20315 languageName: node 20256 20316 linkType: hard 20257 20317 20318 + "metro-file-map@npm:0.81.0": 20319 + version: 0.81.0 20320 + resolution: "metro-file-map@npm:0.81.0" 20321 + dependencies: 20322 + anymatch: "npm:^3.0.3" 20323 + debug: "npm:^2.2.0" 20324 + fb-watchman: "npm:^2.0.0" 20325 + flow-enums-runtime: "npm:^0.0.6" 20326 + fsevents: "npm:^2.3.2" 20327 + graceful-fs: "npm:^4.2.4" 20328 + invariant: "npm:^2.2.4" 20329 + jest-worker: "npm:^29.6.3" 20330 + micromatch: "npm:^4.0.4" 20331 + node-abort-controller: "npm:^3.1.1" 20332 + nullthrows: "npm:^1.1.1" 20333 + walker: "npm:^1.0.7" 20334 + dependenciesMeta: 20335 + fsevents: 20336 + optional: true 20337 + checksum: 10/1bb3b66be5cbb9171674dbf2b635c4ec47cac53cdcb3fbaecba61d5730d6d99bfc1dbdfed8b2b0d745208e29024491138d9058a56ed541a7c774ef6486731bf1 20338 + languageName: node 20339 + linkType: hard 20340 + 20258 20341 "metro-minify-terser@npm:0.80.9": 20259 20342 version: 0.80.9 20260 20343 resolution: "metro-minify-terser@npm:0.80.9" ··· 20264 20347 languageName: node 20265 20348 linkType: hard 20266 20349 20350 + "metro-minify-terser@npm:0.81.0": 20351 + version: 0.81.0 20352 + resolution: "metro-minify-terser@npm:0.81.0" 20353 + dependencies: 20354 + flow-enums-runtime: "npm:^0.0.6" 20355 + terser: "npm:^5.15.0" 20356 + checksum: 10/53472e5d476613c652f0e8bdf68429c80c66b71dd9a559c2185d56f41a8463ba3431353d453d2e20615875d070389ec24247ddbce67c4d7783bfc85113af18e0 20357 + languageName: node 20358 + linkType: hard 20359 + 20267 20360 "metro-resolver@npm:0.80.9": 20268 20361 version: 0.80.9 20269 20362 resolution: "metro-resolver@npm:0.80.9" ··· 20271 20364 languageName: node 20272 20365 linkType: hard 20273 20366 20274 - "metro-runtime@npm:0.80.9, metro-runtime@npm:^0.80.3": 20367 + "metro-resolver@npm:0.81.0": 20368 + version: 0.81.0 20369 + resolution: "metro-resolver@npm:0.81.0" 20370 + dependencies: 20371 + flow-enums-runtime: "npm:^0.0.6" 20372 + checksum: 10/b0f81dab785d8d533e1fd103072c173716b88055ff224a277f5a15ac52c151b19e1b95df53cf7854bd751ecf46fff00cea243e2d9986110f46b2f6df45615bf9 20373 + languageName: node 20374 + linkType: hard 20375 + 20376 + "metro-runtime@npm:0.80.9": 20275 20377 version: 0.80.9 20276 20378 resolution: "metro-runtime@npm:0.80.9" 20277 20379 dependencies: ··· 20280 20382 languageName: node 20281 20383 linkType: hard 20282 20384 20283 - "metro-source-map@npm:0.80.9, metro-source-map@npm:^0.80.3": 20385 + "metro-runtime@npm:0.81.0, metro-runtime@npm:^0.81.0": 20386 + version: 0.81.0 20387 + resolution: "metro-runtime@npm:0.81.0" 20388 + dependencies: 20389 + "@babel/runtime": "npm:^7.25.0" 20390 + flow-enums-runtime: "npm:^0.0.6" 20391 + checksum: 10/fdb87c44adc73e217993f2d1f33d7c3ef17d4707747993eb38d5fda5d943e6ffe95e7d82cdc9a9ae7ef56fe56c62865ca3b424e72efa2d7bd2560cd1bb10180c 20392 + languageName: node 20393 + linkType: hard 20394 + 20395 + "metro-source-map@npm:0.80.9": 20284 20396 version: 0.80.9 20285 20397 resolution: "metro-source-map@npm:0.80.9" 20286 20398 dependencies: ··· 20296 20408 languageName: node 20297 20409 linkType: hard 20298 20410 20411 + "metro-source-map@npm:0.81.0, metro-source-map@npm:^0.81.0": 20412 + version: 0.81.0 20413 + resolution: "metro-source-map@npm:0.81.0" 20414 + dependencies: 20415 + "@babel/traverse": "npm:^7.25.3" 20416 + "@babel/traverse--for-generate-function-map": "npm:@babel/traverse@^7.25.3" 20417 + "@babel/types": "npm:^7.25.2" 20418 + flow-enums-runtime: "npm:^0.0.6" 20419 + invariant: "npm:^2.2.4" 20420 + metro-symbolicate: "npm:0.81.0" 20421 + nullthrows: "npm:^1.1.1" 20422 + ob1: "npm:0.81.0" 20423 + source-map: "npm:^0.5.6" 20424 + vlq: "npm:^1.0.0" 20425 + checksum: 10/4092f3faa8d56705d77d02a15fcab46eaad68d3225796981235635e300ddf5b34db58a9ebfc3e74c4e95fee9775bf22d482840f08f5c2014befc4d8a12b50f7d 20426 + languageName: node 20427 + linkType: hard 20428 + 20299 20429 "metro-symbolicate@npm:0.80.9": 20300 20430 version: 0.80.9 20301 20431 resolution: "metro-symbolicate@npm:0.80.9" ··· 20312 20442 languageName: node 20313 20443 linkType: hard 20314 20444 20445 + "metro-symbolicate@npm:0.81.0": 20446 + version: 0.81.0 20447 + resolution: "metro-symbolicate@npm:0.81.0" 20448 + dependencies: 20449 + flow-enums-runtime: "npm:^0.0.6" 20450 + invariant: "npm:^2.2.4" 20451 + metro-source-map: "npm:0.81.0" 20452 + nullthrows: "npm:^1.1.1" 20453 + source-map: "npm:^0.5.6" 20454 + through2: "npm:^2.0.1" 20455 + vlq: "npm:^1.0.0" 20456 + bin: 20457 + metro-symbolicate: src/index.js 20458 + checksum: 10/d612994ac2857fae713f6bf84c64c94c8e4c745b4532bfa11263623f2da9d7966709960b374c40726ffd40aabbc689924d4117c5c2fc380e024720bc8164b620 20459 + languageName: node 20460 + linkType: hard 20461 + 20315 20462 "metro-transform-plugins@npm:0.80.9": 20316 20463 version: 0.80.9 20317 20464 resolution: "metro-transform-plugins@npm:0.80.9" ··· 20325 20472 languageName: node 20326 20473 linkType: hard 20327 20474 20475 + "metro-transform-plugins@npm:0.81.0": 20476 + version: 0.81.0 20477 + resolution: "metro-transform-plugins@npm:0.81.0" 20478 + dependencies: 20479 + "@babel/core": "npm:^7.25.2" 20480 + "@babel/generator": "npm:^7.25.0" 20481 + "@babel/template": "npm:^7.25.0" 20482 + "@babel/traverse": "npm:^7.25.3" 20483 + flow-enums-runtime: "npm:^0.0.6" 20484 + nullthrows: "npm:^1.1.1" 20485 + checksum: 10/acf4e7133c815c39c459ea55b72a6217eb5aaefe7a48e2c6d98ec0ce9c1ac76a2eb1d89d6b50c7f836a942e1a76a722c88eab0ffe51f31f30433a7b20c399ea0 20486 + languageName: node 20487 + linkType: hard 20488 + 20328 20489 "metro-transform-worker@npm:0.80.9, metro-transform-worker@npm:^0.80.4": 20329 20490 version: 0.80.9 20330 20491 resolution: "metro-transform-worker@npm:0.80.9" ··· 20345 20506 languageName: node 20346 20507 linkType: hard 20347 20508 20348 - "metro@npm:0.80.9, metro@npm:^0.80.3": 20509 + "metro-transform-worker@npm:0.81.0": 20510 + version: 0.81.0 20511 + resolution: "metro-transform-worker@npm:0.81.0" 20512 + dependencies: 20513 + "@babel/core": "npm:^7.25.2" 20514 + "@babel/generator": "npm:^7.25.0" 20515 + "@babel/parser": "npm:^7.25.3" 20516 + "@babel/types": "npm:^7.25.2" 20517 + flow-enums-runtime: "npm:^0.0.6" 20518 + metro: "npm:0.81.0" 20519 + metro-babel-transformer: "npm:0.81.0" 20520 + metro-cache: "npm:0.81.0" 20521 + metro-cache-key: "npm:0.81.0" 20522 + metro-minify-terser: "npm:0.81.0" 20523 + metro-source-map: "npm:0.81.0" 20524 + metro-transform-plugins: "npm:0.81.0" 20525 + nullthrows: "npm:^1.1.1" 20526 + checksum: 10/6aca50e38add14aa4cb473938cbce1da5aac822dbc1934d592effc59f14fad891b63aa44b432ccfc5feb79792a186678565e7624ecdea70d139f006006ced5ba 20527 + languageName: node 20528 + linkType: hard 20529 + 20530 + "metro@npm:0.80.9": 20349 20531 version: 0.80.9 20350 20532 resolution: "metro@npm:0.80.9" 20351 20533 dependencies: ··· 20398 20580 languageName: node 20399 20581 linkType: hard 20400 20582 20583 + "metro@npm:0.81.0, metro@npm:^0.81.0": 20584 + version: 0.81.0 20585 + resolution: "metro@npm:0.81.0" 20586 + dependencies: 20587 + "@babel/code-frame": "npm:^7.24.7" 20588 + "@babel/core": "npm:^7.25.2" 20589 + "@babel/generator": "npm:^7.25.0" 20590 + "@babel/parser": "npm:^7.25.3" 20591 + "@babel/template": "npm:^7.25.0" 20592 + "@babel/traverse": "npm:^7.25.3" 20593 + "@babel/types": "npm:^7.25.2" 20594 + accepts: "npm:^1.3.7" 20595 + chalk: "npm:^4.0.0" 20596 + ci-info: "npm:^2.0.0" 20597 + connect: "npm:^3.6.5" 20598 + debug: "npm:^2.2.0" 20599 + denodeify: "npm:^1.2.1" 20600 + error-stack-parser: "npm:^2.0.6" 20601 + flow-enums-runtime: "npm:^0.0.6" 20602 + graceful-fs: "npm:^4.2.4" 20603 + hermes-parser: "npm:0.24.0" 20604 + image-size: "npm:^1.0.2" 20605 + invariant: "npm:^2.2.4" 20606 + jest-worker: "npm:^29.6.3" 20607 + jsc-safe-url: "npm:^0.2.2" 20608 + lodash.throttle: "npm:^4.1.1" 20609 + metro-babel-transformer: "npm:0.81.0" 20610 + metro-cache: "npm:0.81.0" 20611 + metro-cache-key: "npm:0.81.0" 20612 + metro-config: "npm:0.81.0" 20613 + metro-core: "npm:0.81.0" 20614 + metro-file-map: "npm:0.81.0" 20615 + metro-resolver: "npm:0.81.0" 20616 + metro-runtime: "npm:0.81.0" 20617 + metro-source-map: "npm:0.81.0" 20618 + metro-symbolicate: "npm:0.81.0" 20619 + metro-transform-plugins: "npm:0.81.0" 20620 + metro-transform-worker: "npm:0.81.0" 20621 + mime-types: "npm:^2.1.27" 20622 + nullthrows: "npm:^1.1.1" 20623 + serialize-error: "npm:^2.1.0" 20624 + source-map: "npm:^0.5.6" 20625 + strip-ansi: "npm:^6.0.0" 20626 + throat: "npm:^5.0.0" 20627 + ws: "npm:^7.5.10" 20628 + yargs: "npm:^17.6.2" 20629 + bin: 20630 + metro: src/cli.js 20631 + checksum: 10/56955726fee6da4d6b4666843969f0008ce7c4c43d8c3659a20eac4391d6cac41d6b0568ed6e49f3221fa2d01e60261f07bceafbc606db4519a4000a37c0edaf 20632 + languageName: node 20633 + linkType: hard 20634 + 20401 20635 "micro-ftch@npm:^0.3.1": 20402 20636 version: 0.3.1 20403 20637 resolution: "micro-ftch@npm:0.3.1" ··· 20450 20684 languageName: node 20451 20685 linkType: hard 20452 20686 20453 - "mime@npm:^2.4.1": 20454 - version: 2.6.0 20455 - resolution: "mime@npm:2.6.0" 20456 - bin: 20457 - mime: cli.js 20458 - checksum: 10/7da117808b5cd0203bb1b5e33445c330fe213f4d8ee2402a84d62adbde9716ca4fb90dd6d9ab4e77a4128c6c5c24a9c4c9f6a4d720b095b1b342132d02dba58d 20459 - languageName: node 20460 - linkType: hard 20461 - 20462 20687 "mime@npm:^3.0.0": 20463 20688 version: 3.0.0 20464 20689 resolution: "mime@npm:3.0.0" ··· 20851 21076 languageName: node 20852 21077 linkType: hard 20853 21078 20854 - "multiformats@npm:^9.4.2": 21079 + "multiformats@npm:^9.4.2, multiformats@npm:^9.9.0": 20855 21080 version: 9.9.0 20856 21081 resolution: "multiformats@npm:9.9.0" 20857 21082 checksum: 10/ad55c7d480d22f4258a68fd88aa2aab744fe0cb1e68d732fc886f67d858b37e3aa6c2cec12b2960ead7730d43be690931485238569952d8a3d7f90fdc726c652 ··· 20994 21219 lower-case: "npm:^2.0.2" 20995 21220 tslib: "npm:^2.0.3" 20996 21221 checksum: 10/0b2ebc113dfcf737d48dde49cfebf3ad2d82a8c3188e7100c6f375e30eafbef9e9124aadc3becef237b042fd5eb0aad2fd78669c20972d045bbe7fea8ba0be5c 20997 - languageName: node 20998 - linkType: hard 20999 - 21000 - "nocache@npm:^3.0.1": 21001 - version: 3.0.4 21002 - resolution: "nocache@npm:3.0.4" 21003 - checksum: 10/e980eac3c6c81ff6336728e10e798a251b48866822a3fbf98f74b800cafe2b1a8ac8f676a48ac454d4db9509cd501d72ffb9d5509c30b054b5d8800117a079fc 21004 21222 languageName: node 21005 21223 linkType: hard 21006 21224 ··· 21077 21295 languageName: node 21078 21296 linkType: hard 21079 21297 21080 - "node-fetch@npm:^2.2.0, node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.12, node-fetch@npm:^2.6.7, node-fetch@npm:^2.6.9": 21298 + "node-fetch@npm:^2.2.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.12, node-fetch@npm:^2.6.7, node-fetch@npm:^2.6.9": 21081 21299 version: 2.7.0 21082 21300 resolution: "node-fetch@npm:2.7.0" 21083 21301 dependencies: ··· 21206 21424 version: 2.0.18 21207 21425 resolution: "node-releases@npm:2.0.18" 21208 21426 checksum: 10/241e5fa9556f1c12bafb83c6c3e94f8cf3d8f2f8f904906ecef6e10bcaa1d59aa61212d4651bec70052015fc54bd3fdcdbe7fc0f638a17e6685aa586c076ec4e 21209 - languageName: node 21210 - linkType: hard 21211 - 21212 - "node-stream-zip@npm:^1.9.1": 21213 - version: 1.15.0 21214 - resolution: "node-stream-zip@npm:1.15.0" 21215 - checksum: 10/3fb56144d23456e1b42fe9d24656999e4ef6aeccce3cae43fc97ba6c341ee448aeceb4dc8fb57ee78eab1a6da49dd46c9650fdb2f16b137630a335df9560c647 21216 21427 languageName: node 21217 21428 linkType: hard 21218 21429 ··· 21517 21728 languageName: node 21518 21729 linkType: hard 21519 21730 21731 + "ob1@npm:0.81.0": 21732 + version: 0.81.0 21733 + resolution: "ob1@npm:0.81.0" 21734 + dependencies: 21735 + flow-enums-runtime: "npm:^0.0.6" 21736 + checksum: 10/f3215ccf72604b4db5f9cfc6c83454a136a035ffd26faffec2c100d5810b87599cc95e167888320f3865959a5f9762c03de20a9e40cf66fc13706886820a9523 21737 + languageName: node 21738 + linkType: hard 21739 + 21520 21740 "obj-multiplex@npm:^1.0.0": 21521 21741 version: 1.0.0 21522 21742 resolution: "obj-multiplex@npm:1.0.0" ··· 21714 21934 languageName: node 21715 21935 linkType: hard 21716 21936 21717 - "open@npm:^6.2.0": 21718 - version: 6.4.0 21719 - resolution: "open@npm:6.4.0" 21720 - dependencies: 21721 - is-wsl: "npm:^1.1.0" 21722 - checksum: 10/9b1cfda7a649f432c8bfa281796d28b5a49f7afcb470d9054ca94c7d0b1e8273432f55134dd953eb593ffce244de1b701ee89e6fe9c25ea8215eb1ca1ae8a1a9 21723 - languageName: node 21724 - linkType: hard 21725 - 21726 21937 "open@npm:^7.0.3": 21727 21938 version: 7.4.2 21728 21939 resolution: "open@npm:7.4.2" ··· 21733 21944 languageName: node 21734 21945 linkType: hard 21735 21946 21736 - "open@npm:^8.0.4, open@npm:^8.0.9, open@npm:^8.3.0, open@npm:^8.4.0": 21947 + "open@npm:^8.0.4, open@npm:^8.0.9, open@npm:^8.4.0": 21737 21948 version: 8.4.2 21738 21949 resolution: "open@npm:8.4.2" 21739 21950 dependencies: ··· 21758 21969 languageName: node 21759 21970 linkType: hard 21760 21971 21761 - "ora@npm:3.4.0, ora@npm:^3.4.0": 21762 - version: 3.4.0 21763 - resolution: "ora@npm:3.4.0" 21764 - dependencies: 21765 - chalk: "npm:^2.4.2" 21766 - cli-cursor: "npm:^2.1.0" 21767 - cli-spinners: "npm:^2.0.0" 21768 - log-symbols: "npm:^2.2.0" 21769 - strip-ansi: "npm:^5.2.0" 21770 - wcwidth: "npm:^1.0.1" 21771 - checksum: 10/c8ea1fe255fe9739673c0df6e9bc454061aded80372f2018be93336e16ca0988cc4181e4ddd971cb8062f2f12eb922ef2fec9742979f3c8bcac2b51346e35f45 21772 - languageName: node 21773 - linkType: hard 21774 - 21775 21972 "ora@npm:5.3.0": 21776 21973 version: 5.3.0 21777 21974 resolution: "ora@npm:5.3.0" ··· 21788 21985 languageName: node 21789 21986 linkType: hard 21790 21987 21988 + "ora@npm:^3.4.0": 21989 + version: 3.4.0 21990 + resolution: "ora@npm:3.4.0" 21991 + dependencies: 21992 + chalk: "npm:^2.4.2" 21993 + cli-cursor: "npm:^2.1.0" 21994 + cli-spinners: "npm:^2.0.0" 21995 + log-symbols: "npm:^2.2.0" 21996 + strip-ansi: "npm:^5.2.0" 21997 + wcwidth: "npm:^1.0.1" 21998 + checksum: 10/c8ea1fe255fe9739673c0df6e9bc454061aded80372f2018be93336e16ca0988cc4181e4ddd971cb8062f2f12eb922ef2fec9742979f3c8bcac2b51346e35f45 21999 + languageName: node 22000 + linkType: hard 22001 + 21791 22002 "ora@npm:^5.1.0, ora@npm:^5.4.1": 21792 22003 version: 5.4.1 21793 22004 resolution: "ora@npm:5.4.1" ··· 22411 22622 languageName: node 22412 22623 linkType: hard 22413 22624 22414 - "pirates@npm:^4.0.1, pirates@npm:^4.0.6": 22625 + "pirates@npm:^4.0.1, pirates@npm:^4.0.4, pirates@npm:^4.0.6": 22415 22626 version: 4.0.6 22416 22627 resolution: "pirates@npm:4.0.6" 22417 22628 checksum: 10/d02dda76f4fec1cbdf395c36c11cf26f76a644f9f9a1bfa84d3167d0d3154d5289aacc72677aa20d599bb4a6937a471de1b65c995e2aea2d8687cbcd7e43ea5f ··· 22634 22845 languageName: node 22635 22846 linkType: hard 22636 22847 22637 - "pretty-bytes@npm:5.6.0": 22848 + "pretty-bytes@npm:^5.6.0": 22638 22849 version: 5.6.0 22639 22850 resolution: "pretty-bytes@npm:5.6.0" 22640 22851 checksum: 10/9c082500d1e93434b5b291bd651662936b8bd6204ec9fa17d563116a192d6d86b98f6d328526b4e8d783c07d5499e2614a807520249692da9ec81564b2f439cd ··· 22651 22862 languageName: node 22652 22863 linkType: hard 22653 22864 22654 - "pretty-format@npm:^24": 22655 - version: 24.9.0 22656 - resolution: "pretty-format@npm:24.9.0" 22657 - dependencies: 22658 - "@jest/types": "npm:^24.9.0" 22659 - ansi-regex: "npm:^4.0.0" 22660 - ansi-styles: "npm:^3.2.0" 22661 - react-is: "npm:^16.8.4" 22662 - checksum: 10/f6664330e8129fd9039d328c90abea3ea6b8acf36f813cc8fc83aad8b1f755b54f756e317c88ef75f66132caeae107bb4b5f134ae7380bbf57e35d37bcfb197f 22663 - languageName: node 22664 - linkType: hard 22665 - 22666 - "pretty-format@npm:^26.5.2, pretty-format@npm:^26.6.2": 22667 - version: 26.6.2 22668 - resolution: "pretty-format@npm:26.6.2" 22669 - dependencies: 22670 - "@jest/types": "npm:^26.6.2" 22671 - ansi-regex: "npm:^5.0.0" 22672 - ansi-styles: "npm:^4.0.0" 22673 - react-is: "npm:^17.0.1" 22674 - checksum: 10/94a4c661bf77ed7c448d064c5af35796acbd972a33cff8a38030547ac396087bcd47f2f6e530824486cf4c8e9d9342cc8dd55fd068f135b19325b51e0cd06f87 22675 - languageName: node 22676 - linkType: hard 22677 - 22678 22865 "pretty-format@npm:^29.7.0": 22679 22866 version: 29.7.0 22680 22867 resolution: "pretty-format@npm:29.7.0" ··· 22728 22915 languageName: node 22729 22916 linkType: hard 22730 22917 22731 - "progress@npm:2.0.3, progress@npm:^2.0.3": 22918 + "progress@npm:^2.0.3": 22732 22919 version: 2.0.3 22733 22920 resolution: "progress@npm:2.0.3" 22734 22921 checksum: 10/e6f0bcb71f716eee9dfac0fe8a2606e3704d6a64dd93baaf49fbadbc8499989a610fe14cf1bc6f61b6d6653c49408d94f4a94e124538084efd8e4cf525e0293d ··· 22784 22971 languageName: node 22785 22972 linkType: hard 22786 22973 22787 - "prompts@npm:^2.3.2, prompts@npm:^2.4.2": 22974 + "prompts@npm:^2.3.2": 22788 22975 version: 2.4.2 22789 22976 resolution: "prompts@npm:2.4.2" 22790 22977 dependencies: ··· 22973 23160 languageName: node 22974 23161 linkType: hard 22975 23162 22976 - "querystring@npm:^0.2.1": 22977 - version: 0.2.1 22978 - resolution: "querystring@npm:0.2.1" 22979 - checksum: 10/5ae2eeb8c6d70263a3d13ffaf234ce9593ae0e95ad8ea04aa540e14ff66679347420817aeb4fe6fdfa2aaa7fac86e311b6f1d3da2187f433082ad9125c808c14 22980 - languageName: node 22981 - linkType: hard 22982 - 22983 23163 "queue-microtask@npm:^1.2.2": 22984 23164 version: 1.2.3 22985 23165 resolution: "queue-microtask@npm:1.2.3" ··· 23085 23265 languageName: node 23086 23266 linkType: hard 23087 23267 23088 - "react-devtools-core@npm:^5.0.0": 23089 - version: 5.3.1 23090 - resolution: "react-devtools-core@npm:5.3.1" 23268 + "react-devtools-core@npm:^5.3.1": 23269 + version: 5.3.2 23270 + resolution: "react-devtools-core@npm:5.3.2" 23091 23271 dependencies: 23092 23272 shell-quote: "npm:^1.6.1" 23093 23273 ws: "npm:^7" 23094 - checksum: 10/247056e0cbb791f4e181f9331b0ab945feb1a770f5f76c9899d7a2d429afd20bcd69763af38e9eb881ac6f5a961dc7f07ee146babaa4111612747c68102dfa13 23274 + checksum: 10/640123f775daeb2176ebc9caf85b1cb9dbb147cbb607f221254ac4967530ddf96332a582d5b169c840984220596a23780ed6f9b37c37461160e9b623f5f4caee 23095 23275 languageName: node 23096 23276 linkType: hard 23097 23277 ··· 23116 23296 languageName: node 23117 23297 linkType: hard 23118 23298 23119 - "react-is@npm:^16.12.0 || ^17.0.0 || ^18.0.0, react-is@npm:^18.0.0": 23120 - version: 18.3.1 23121 - resolution: "react-is@npm:18.3.1" 23122 - checksum: 10/d5f60c87d285af24b1e1e7eaeb123ec256c3c8bdea7061ab3932e3e14685708221bf234ec50b21e10dd07f008f1b966a2730a0ce4ff67905b3872ff2042aec22 23123 - languageName: node 23124 - linkType: hard 23125 - 23126 - "react-is@npm:^16.13.0, react-is@npm:^16.13.1, react-is@npm:^16.7.0, react-is@npm:^16.8.4": 23299 + "react-is@npm:^16.13.0, react-is@npm:^16.13.1, react-is@npm:^16.7.0": 23127 23300 version: 16.13.1 23128 23301 resolution: "react-is@npm:16.13.1" 23129 23302 checksum: 10/5aa564a1cde7d391ac980bedee21202fc90bdea3b399952117f54fb71a932af1e5902020144fb354b4690b2414a0c7aafe798eb617b76a3d441d956db7726fdf 23130 23303 languageName: node 23131 23304 linkType: hard 23132 23305 23133 - "react-is@npm:^17.0.1": 23134 - version: 17.0.2 23135 - resolution: "react-is@npm:17.0.2" 23136 - checksum: 10/73b36281e58eeb27c9cc6031301b6ae19ecdc9f18ae2d518bdb39b0ac564e65c5779405d623f1df9abf378a13858b79442480244bd579968afc1faf9a2ce5e05 23306 + "react-is@npm:^18.0.0": 23307 + version: 18.3.1 23308 + resolution: "react-is@npm:18.3.1" 23309 + checksum: 10/d5f60c87d285af24b1e1e7eaeb123ec256c3c8bdea7061ab3932e3e14685708221bf234ec50b21e10dd07f008f1b966a2730a0ce4ff67905b3872ff2042aec22 23137 23310 languageName: node 23138 23311 linkType: hard 23139 23312 ··· 23222 23395 languageName: node 23223 23396 linkType: hard 23224 23397 23225 - "react-native-safe-area-context@npm:4.14.0": 23226 - version: 4.14.0 23227 - resolution: "react-native-safe-area-context@npm:4.14.0" 23398 + "react-native-safe-area-context@npm:4.12.0": 23399 + version: 4.12.0 23400 + resolution: "react-native-safe-area-context@npm:4.12.0" 23228 23401 peerDependencies: 23229 23402 react: "*" 23230 23403 react-native: "*" 23231 - checksum: 10/64e7b6314da1af137cccaf18a5604869eb777f69d777ae1a88cc1f7e1dffc951fd4cc6472134a6cd4311698de4b58e283fc63843ee6eb86ad285ea807de01fa1 23404 + checksum: 10/1db86f38c20c8b22ea274ea895b3cedbb1f8d8260d7f726ab4ee315f5e1e611ba3dde89c43dcb3ccccf97dfc3e7d8b11b79ffe4a6369697b6fed3bd80eaaf7c5 23232 23405 languageName: node 23233 23406 linkType: hard 23234 23407 23235 - "react-native-screens@npm:3.35.0": 23236 - version: 3.35.0 23237 - resolution: "react-native-screens@npm:3.35.0" 23408 + "react-native-screens@npm:~4.1.0": 23409 + version: 4.1.0 23410 + resolution: "react-native-screens@npm:4.1.0" 23238 23411 dependencies: 23239 23412 react-freeze: "npm:^1.0.0" 23240 23413 warn-once: "npm:^0.1.0" 23241 23414 peerDependencies: 23242 23415 react: "*" 23243 23416 react-native: "*" 23244 - checksum: 10/18085fb68bb2349330cb9b536f79161474788bc478b4b13e23de26d80b68000c60c0b79ba19d430ed0693350c062863f0620da6397d3bd24da08c09181c0fcfd 23417 + checksum: 10/b3758288be667cd265ec958a6c4f8d75fc93c80624ae05b054e8645e12db5e68e1ccb376017aa392a950304bb220c937e4d819ccf0eb579a125bccb6ef4b919a 23245 23418 languageName: node 23246 23419 linkType: hard 23247 23420 ··· 23297 23470 languageName: node 23298 23471 linkType: hard 23299 23472 23300 - "react-native-webview@npm:13.12.3": 23301 - version: 13.12.3 23302 - resolution: "react-native-webview@npm:13.12.3" 23473 + "react-native-webview@npm:13.12.4": 23474 + version: 13.12.4 23475 + resolution: "react-native-webview@npm:13.12.4" 23303 23476 dependencies: 23304 23477 escape-string-regexp: "npm:^4.0.0" 23305 23478 invariant: "npm:2.2.4" 23306 23479 peerDependencies: 23307 23480 react: "*" 23308 23481 react-native: "*" 23309 - checksum: 10/291f01b311185d6e3be6b9bbd0f5a44642ecc6f9f405bf3f6043fdf9e3faa024e45c1d62f2abb93807e2906f7be0d9079a517f9c34cd42604407b44710501212 23482 + checksum: 10/38ada42370873fb0361d66eb0c246a62d2bf67fc80cfc4f5ba4f733af6c8459555e4a11d91d86e49c1ef1e41caef985efafb73af2c0d9b749e9f113129a18289 23310 23483 languageName: node 23311 23484 linkType: hard 23312 23485 ··· 23323 23496 languageName: node 23324 23497 linkType: hard 23325 23498 23326 - "react-native@npm:0.74.6": 23327 - version: 0.74.6 23328 - resolution: "react-native@npm:0.74.6" 23499 + "react-native@npm:0.76.2": 23500 + version: 0.76.2 23501 + resolution: "react-native@npm:0.76.2" 23329 23502 dependencies: 23330 23503 "@jest/create-cache-key-function": "npm:^29.6.3" 23331 - "@react-native-community/cli": "npm:13.6.9" 23332 - "@react-native-community/cli-platform-android": "npm:13.6.9" 23333 - "@react-native-community/cli-platform-ios": "npm:13.6.9" 23334 - "@react-native/assets-registry": "npm:0.74.88" 23335 - "@react-native/codegen": "npm:0.74.88" 23336 - "@react-native/community-cli-plugin": "npm:0.74.88" 23337 - "@react-native/gradle-plugin": "npm:0.74.88" 23338 - "@react-native/js-polyfills": "npm:0.74.88" 23339 - "@react-native/normalize-colors": "npm:0.74.88" 23340 - "@react-native/virtualized-lists": "npm:0.74.88" 23504 + "@react-native/assets-registry": "npm:0.76.2" 23505 + "@react-native/codegen": "npm:0.76.2" 23506 + "@react-native/community-cli-plugin": "npm:0.76.2" 23507 + "@react-native/gradle-plugin": "npm:0.76.2" 23508 + "@react-native/js-polyfills": "npm:0.76.2" 23509 + "@react-native/normalize-colors": "npm:0.76.2" 23510 + "@react-native/virtualized-lists": "npm:0.76.2" 23341 23511 abort-controller: "npm:^3.0.0" 23342 23512 anser: "npm:^1.4.9" 23343 23513 ansi-regex: "npm:^5.0.0" 23514 + babel-jest: "npm:^29.7.0" 23515 + babel-plugin-syntax-hermes-parser: "npm:^0.23.1" 23344 23516 base64-js: "npm:^1.5.1" 23345 23517 chalk: "npm:^4.0.0" 23518 + commander: "npm:^12.0.0" 23346 23519 event-target-shim: "npm:^5.0.1" 23347 23520 flow-enums-runtime: "npm:^0.0.6" 23348 23521 glob: "npm:^7.1.1" ··· 23350 23523 jest-environment-node: "npm:^29.6.3" 23351 23524 jsc-android: "npm:^250231.0.0" 23352 23525 memoize-one: "npm:^5.0.0" 23353 - metro-runtime: "npm:^0.80.3" 23354 - metro-source-map: "npm:^0.80.3" 23526 + metro-runtime: "npm:^0.81.0" 23527 + metro-source-map: "npm:^0.81.0" 23355 23528 mkdirp: "npm:^0.5.1" 23356 23529 nullthrows: "npm:^1.1.1" 23357 - pretty-format: "npm:^26.5.2" 23530 + pretty-format: "npm:^29.7.0" 23358 23531 promise: "npm:^8.3.0" 23359 - react-devtools-core: "npm:^5.0.0" 23532 + react-devtools-core: "npm:^5.3.1" 23360 23533 react-refresh: "npm:^0.14.0" 23361 - react-shallow-renderer: "npm:^16.15.0" 23362 23534 regenerator-runtime: "npm:^0.13.2" 23363 23535 scheduler: "npm:0.24.0-canary-efb381bbf-20230505" 23536 + semver: "npm:^7.1.3" 23364 23537 stacktrace-parser: "npm:^0.1.10" 23365 23538 whatwg-fetch: "npm:^3.0.0" 23366 - ws: "npm:^6.2.2" 23539 + ws: "npm:^6.2.3" 23367 23540 yargs: "npm:^17.6.2" 23368 23541 peerDependencies: 23369 23542 "@types/react": ^18.2.6 23370 - react: 18.2.0 23543 + react: ^18.2.0 23371 23544 peerDependenciesMeta: 23372 23545 "@types/react": 23373 23546 optional: true 23374 23547 bin: 23375 23548 react-native: cli.js 23376 - checksum: 10/9e9af7584ed194313c3932a6f18d1de9135bd3fc0e48f94709d0e46121f22b428afd3376850f5b4dd10836a08319d0436d314680b277d656734754e21f2202f5 23549 + checksum: 10/9b17c53804b8d6819548f634fde2acc4e1c583c0514617a8d20fbdb332ebb518d68f4934dbbcdd31c1ea6d0e6d41d48b00dee1a76b8060c07c0e13d2d51b55fd 23550 + languageName: node 23551 + linkType: hard 23552 + 23553 + "react-redux@npm:^9.1.2": 23554 + version: 9.1.2 23555 + resolution: "react-redux@npm:9.1.2" 23556 + dependencies: 23557 + "@types/use-sync-external-store": "npm:^0.0.3" 23558 + use-sync-external-store: "npm:^1.0.0" 23559 + peerDependencies: 23560 + "@types/react": ^18.2.25 23561 + react: ^18.0 23562 + redux: ^5.0.0 23563 + peerDependenciesMeta: 23564 + "@types/react": 23565 + optional: true 23566 + redux: 23567 + optional: true 23568 + checksum: 10/319b3286f538da7e609ca90fc6762ffae007c5cf75e525a25237ac2feaee63d9cf76fe766817de1fc8f27e7bde825ca409c463037d26dd8e57c435d383f80c50 23377 23569 languageName: node 23378 23570 linkType: hard 23379 23571 ··· 23416 23608 "@types/react": 23417 23609 optional: true 23418 23610 checksum: 10/9fac79e1c2ed2c85729bfe82f61ef4ae5ce51f478736a13892a9a11e05cbd4e9599f9f0e012cb5fc0719e18dc1dd687ab61f516193228615df636db8b851245e 23419 - languageName: node 23420 - linkType: hard 23421 - 23422 - "react-shallow-renderer@npm:^16.15.0": 23423 - version: 16.15.0 23424 - resolution: "react-shallow-renderer@npm:16.15.0" 23425 - dependencies: 23426 - object-assign: "npm:^4.1.1" 23427 - react-is: "npm:^16.12.0 || ^17.0.0 || ^18.0.0" 23428 - peerDependencies: 23429 - react: ^16.0.0 || ^17.0.0 || ^18.0.0 23430 - checksum: 10/06457fe5bcaa44aeca998905b6849304742ea1cc2d3841e4a0964c745ff392bc4dec07f8c779f317faacce3a0bf6f84e15020ac0fa81adb931067dbb0baf707b 23431 23611 languageName: node 23432 23612 linkType: hard 23433 23613 ··· 23652 23832 languageName: node 23653 23833 linkType: hard 23654 23834 23655 - "regenerate-unicode-properties@npm:^10.1.0": 23656 - version: 10.1.1 23657 - resolution: "regenerate-unicode-properties@npm:10.1.1" 23658 - dependencies: 23659 - regenerate: "npm:^1.4.2" 23660 - checksum: 10/b855152efdcca0ecc37ceb0cb6647a544344555fc293af3b57191b918e1bc9c95ee404a9a64a1d692bf66d45850942c29d93f2740c0d1980d3a8ea2ca63b184e 23835 + "redux-thunk@npm:^3.1.0": 23836 + version: 3.1.0 23837 + resolution: "redux-thunk@npm:3.1.0" 23838 + peerDependencies: 23839 + redux: ^5.0.0 23840 + checksum: 10/38c563db5f0bbec90d2e65cc27f3c870c1b6102e0c071258734fac41cb0e51d31d894125815c2f4133b20aff231f51f028ad99bccc05a7e3249f1a5d5a959ed3 23841 + languageName: node 23842 + linkType: hard 23843 + 23844 + "redux@npm:^5.0.1": 23845 + version: 5.0.1 23846 + resolution: "redux@npm:5.0.1" 23847 + checksum: 10/a373f9ed65693ead58bea5ef61c1d6bef39da9f2706db3be6f84815f3a1283230ecd1184efb1b3daa7f807d8211b0181564ca8f336fc6ee0b1e2fa0ba06737c2 23661 23848 languageName: node 23662 23849 linkType: hard 23663 23850 ··· 23691 23878 languageName: node 23692 23879 linkType: hard 23693 23880 23881 + "regenerator-transform@npm:^0.15.2": 23882 + version: 0.15.2 23883 + resolution: "regenerator-transform@npm:0.15.2" 23884 + dependencies: 23885 + "@babel/runtime": "npm:^7.8.4" 23886 + checksum: 10/c4fdcb46d11bbe32605b4b9ed76b21b8d3f241a45153e9dc6f5542fed4c7744fed459f42701f650d5d5956786bf7de57547329d1c05a9df2ed9e367b9d903302 23887 + languageName: node 23888 + linkType: hard 23889 + 23694 23890 "regexp.prototype.flags@npm:^1.5.2": 23695 23891 version: 1.5.2 23696 23892 resolution: "regexp.prototype.flags@npm:1.5.2" ··· 23703 23899 languageName: node 23704 23900 linkType: hard 23705 23901 23706 - "regexpu-core@npm:^5.3.1": 23707 - version: 5.3.2 23708 - resolution: "regexpu-core@npm:5.3.2" 23709 - dependencies: 23710 - "@babel/regjsgen": "npm:^0.8.0" 23711 - regenerate: "npm:^1.4.2" 23712 - regenerate-unicode-properties: "npm:^10.1.0" 23713 - regjsparser: "npm:^0.9.1" 23714 - unicode-match-property-ecmascript: "npm:^2.0.0" 23715 - unicode-match-property-value-ecmascript: "npm:^2.1.0" 23716 - checksum: 10/ed0d7c66d84c633fbe8db4939d084c780190eca11f6920807dfb8ebac59e2676952cd8f2008d9c86ae8cf0463ea5fd12c5cff09ef2ce7d51ee6b420a5eb4d177 23717 - languageName: node 23718 - linkType: hard 23719 - 23720 23902 "regexpu-core@npm:^6.1.1": 23721 23903 version: 6.1.1 23722 23904 resolution: "regexpu-core@npm:6.1.1" ··· 23749 23931 languageName: node 23750 23932 linkType: hard 23751 23933 23752 - "regjsparser@npm:^0.9.1": 23753 - version: 0.9.1 23754 - resolution: "regjsparser@npm:0.9.1" 23755 - dependencies: 23756 - jsesc: "npm:~0.5.0" 23757 - bin: 23758 - regjsparser: bin/parser 23759 - checksum: 10/be7757ef76e1db10bf6996001d1021048b5fb12f5cb470a99b8cf7f3ff943f0f0e2291c0dcdbb418b458ddc4ac10e48680a822b69ef487a0284c8b6b77beddc3 23760 - languageName: node 23761 - linkType: hard 23762 - 23763 23934 "relateurl@npm:^0.2.7": 23764 23935 version: 0.2.7 23765 23936 resolution: "relateurl@npm:0.2.7" ··· 23842 24013 languageName: node 23843 24014 linkType: hard 23844 24015 24016 + "reselect@npm:^5.1.0": 24017 + version: 5.1.1 24018 + resolution: "reselect@npm:5.1.1" 24019 + checksum: 10/1fdae11a39ed9c8d85a24df19517c8372ee24fefea9cce3fae9eaad8e9cefbba5a3d4940c6fe31296b6addf76e035588c55798f7e6e147e1b7c0855f119e7fa5 24020 + languageName: node 24021 + linkType: hard 24022 + 23845 24023 "resolve-alpn@npm:^1.0.0": 23846 24024 version: 1.2.1 23847 24025 resolution: "resolve-alpn@npm:1.2.1" ··· 23898 24076 languageName: node 23899 24077 linkType: hard 23900 24078 24079 + "resolve-workspace-root@npm:^2.0.0": 24080 + version: 2.0.0 24081 + resolution: "resolve-workspace-root@npm:2.0.0" 24082 + checksum: 10/c2de02d213ca327964bd2a1e6cbb17d96d2adbd738b6aa737129ed952ef4f7e52b79452599e1ef99c6cf4f109c937866b7f3abf34f8f41af376e1b08a03523a4 24083 + languageName: node 24084 + linkType: hard 24085 + 23901 24086 "resolve.exports@npm:^2.0.2": 23902 24087 version: 2.0.2 23903 24088 resolution: "resolve.exports@npm:2.0.2" ··· 24034 24219 version: 1.4.1 24035 24220 resolution: "rfdc@npm:1.4.1" 24036 24221 checksum: 10/2f3d11d3d8929b4bfeefc9acb03aae90f971401de0add5ae6c5e38fec14f0405e6a4aad8fdb76344bfdd20c5193110e3750cbbd28ba86d73729d222b6cf4a729 24037 - languageName: node 24038 - linkType: hard 24039 - 24040 - "rimraf@npm:^2.6.2": 24041 - version: 2.7.1 24042 - resolution: "rimraf@npm:2.7.1" 24043 - dependencies: 24044 - glob: "npm:^7.1.3" 24045 - bin: 24046 - rimraf: ./bin.js 24047 - checksum: 10/4586c296c736483e297da7cffd19475e4a3e41d07b1ae124aad5d687c79e4ffa716bdac8732ed1db942caf65271cee9dd39f8b639611de161a2753e2112ffe1d 24048 24222 languageName: node 24049 24223 linkType: hard 24050 24224 ··· 24270 24444 languageName: node 24271 24445 linkType: hard 24272 24446 24273 - "semver@npm:^6.0.0, semver@npm:^6.2.0, semver@npm:^6.3.1": 24447 + "semver@npm:^6.0.0, semver@npm:^6.2.0, semver@npm:^6.3.0, semver@npm:^6.3.1": 24274 24448 version: 6.3.1 24275 24449 resolution: "semver@npm:6.3.1" 24276 24450 bin: ··· 24288 24462 languageName: node 24289 24463 linkType: hard 24290 24464 24291 - "semver@npm:^7.3.5, semver@npm:^7.5.1, semver@npm:^7.5.2, semver@npm:^7.5.4, semver@npm:^7.6.0": 24465 + "semver@npm:^7.3.5, semver@npm:^7.5.1, semver@npm:^7.5.4, semver@npm:^7.6.0": 24292 24466 version: 7.6.2 24293 24467 resolution: "semver@npm:7.6.2" 24294 24468 bin: ··· 24297 24471 languageName: node 24298 24472 linkType: hard 24299 24473 24300 - "send@npm:0.18.0, send@npm:^0.18.0": 24474 + "send@npm:0.18.0": 24301 24475 version: 0.18.0 24302 24476 resolution: "send@npm:0.18.0" 24303 24477 dependencies: ··· 24336 24510 range-parser: "npm:~1.2.1" 24337 24511 statuses: "npm:2.0.1" 24338 24512 checksum: 10/1f6064dea0ae4cbe4878437aedc9270c33f2a6650a77b56a16b62d057527f2766d96ee282997dd53ec0339082f2aad935bc7d989b46b48c82fc610800dc3a1d0 24513 + languageName: node 24514 + linkType: hard 24515 + 24516 + "send@npm:^0.19.0": 24517 + version: 0.19.1 24518 + resolution: "send@npm:0.19.1" 24519 + dependencies: 24520 + debug: "npm:2.6.9" 24521 + depd: "npm:2.0.0" 24522 + destroy: "npm:1.2.0" 24523 + encodeurl: "npm:~2.0.0" 24524 + escape-html: "npm:~1.0.3" 24525 + etag: "npm:~1.8.1" 24526 + fresh: "npm:0.5.2" 24527 + http-errors: "npm:2.0.0" 24528 + mime: "npm:1.6.0" 24529 + ms: "npm:2.1.3" 24530 + on-finished: "npm:2.4.1" 24531 + range-parser: "npm:~1.2.1" 24532 + statuses: "npm:2.0.1" 24533 + checksum: 10/360bf50a839c7bbc181f67c3a0f3424a7ad8016dfebcd9eb90891f4b762b4377da14414c32250d67b53872e884171c27469110626f6c22765caa7c38c207ee1d 24339 24534 languageName: node 24340 24535 linkType: hard 24341 24536 ··· 24538 24733 languageName: node 24539 24734 linkType: hard 24540 24735 24541 - "shell-quote@npm:^1.6.1, shell-quote@npm:^1.7.3, shell-quote@npm:^1.8.1": 24736 + "shell-quote@npm:^1.6.1, shell-quote@npm:^1.8.1": 24542 24737 version: 1.8.1 24543 24738 resolution: "shell-quote@npm:1.8.1" 24544 24739 checksum: 10/af19ab5a1ec30cb4b2f91fd6df49a7442d5c4825a2e269b3712eded10eedd7f9efeaab96d57829880733fc55bcdd8e9b1d8589b4befb06667c731d08145e274d ··· 24626 24821 languageName: node 24627 24822 linkType: hard 24628 24823 24629 - "slice-ansi@npm:^2.0.0": 24630 - version: 2.1.0 24631 - resolution: "slice-ansi@npm:2.1.0" 24632 - dependencies: 24633 - ansi-styles: "npm:^3.2.0" 24634 - astral-regex: "npm:^1.0.0" 24635 - is-fullwidth-code-point: "npm:^2.0.0" 24636 - checksum: 10/4e82995aa59cef7eb03ef232d73c2239a15efa0ace87a01f3012ebb942e963fbb05d448ce7391efcd52ab9c32724164aba2086f5143e0445c969221dde3b6b1e 24637 - languageName: node 24638 - linkType: hard 24639 - 24640 24824 "slice-ansi@npm:^4.0.0": 24641 24825 version: 4.0.0 24642 24826 resolution: "slice-ansi@npm:4.0.0" ··· 24799 24983 languageName: node 24800 24984 linkType: hard 24801 24985 24802 - "source-map@npm:^0.5.0, source-map@npm:^0.5.6": 24986 + "source-map@npm:^0.5.6": 24803 24987 version: 0.5.7 24804 24988 resolution: "source-map@npm:0.5.7" 24805 24989 checksum: 10/9b4ac749ec5b5831cad1f8cc4c19c4298ebc7474b24a0acf293e2f040f03f8eeccb3d01f12aa0f90cf46d555c887e03912b83a042c627f419bda5152d89c5269 ··· 24813 24997 languageName: node 24814 24998 linkType: hard 24815 24999 24816 - "source-map@npm:^0.7.3, source-map@npm:^0.7.4": 25000 + "source-map@npm:^0.7.4": 24817 25001 version: 0.7.4 24818 25002 resolution: "source-map@npm:0.7.4" 24819 25003 checksum: 10/a0f7c9b797eda93139842fd28648e868a9a03ea0ad0d9fa6602a0c1f17b7fb6a7dcca00c144476cccaeaae5042e99a285723b1a201e844ad67221bf5d428f1dc ··· 25132 25316 languageName: node 25133 25317 linkType: hard 25134 25318 25135 - "strip-ansi@npm:^5.0.0, strip-ansi@npm:^5.2.0": 25319 + "strip-ansi@npm:^5.2.0": 25136 25320 version: 5.2.0 25137 25321 resolution: "strip-ansi@npm:5.2.0" 25138 25322 dependencies: ··· 25277 25461 languageName: node 25278 25462 linkType: hard 25279 25463 25280 - "sucrase@npm:3.34.0": 25281 - version: 3.34.0 25282 - resolution: "sucrase@npm:3.34.0" 25464 + "sucrase@npm:3.35.0": 25465 + version: 3.35.0 25466 + resolution: "sucrase@npm:3.35.0" 25283 25467 dependencies: 25284 25468 "@jridgewell/gen-mapping": "npm:^0.3.2" 25285 25469 commander: "npm:^4.0.0" 25286 - glob: "npm:7.1.6" 25470 + glob: "npm:^10.3.10" 25287 25471 lines-and-columns: "npm:^1.1.6" 25288 25472 mz: "npm:^2.7.0" 25289 25473 pirates: "npm:^4.0.1" ··· 25291 25475 bin: 25292 25476 sucrase: bin/sucrase 25293 25477 sucrase-node: bin/sucrase-node 25294 - checksum: 10/b64d154a7a7eaa4b39668c3124bd08cd505f683d36ac4fb94def6491fb3af155b24b6e41b55011e38582e7d59c440af79ffba8709f3da78aeedf2f07b6d51d84 25478 + checksum: 10/bc601558a62826f1c32287d4fdfa4f2c09fe0fec4c4d39d0e257fd9116d7d6227a18309721d4185ec84c9dc1af0d5ec0e05a42a337fbb74fc293e068549aacbe 25295 25479 languageName: node 25296 25480 linkType: hard 25297 25481 ··· 25309 25493 languageName: node 25310 25494 linkType: hard 25311 25495 25312 - "sudo-prompt@npm:^9.0.0, sudo-prompt@npm:^9.1.1": 25496 + "sudo-prompt@npm:^9.1.1": 25313 25497 version: 9.2.1 25314 25498 resolution: "sudo-prompt@npm:9.2.1" 25315 25499 checksum: 10/0557d0eecebf8db8212df4a9816509c875ca65ad9ee26a55240848820f9bdbdbbd9e5a1bdb5aa052fb1f748cba4ef90c8da9b40628f59e6dc79ca986e80740de ··· 25522 25706 languageName: node 25523 25707 linkType: hard 25524 25708 25525 - "temp-dir@npm:1.0.0, temp-dir@npm:^1.0.0": 25709 + "temp-dir@npm:1.0.0": 25526 25710 version: 1.0.0 25527 25711 resolution: "temp-dir@npm:1.0.0" 25528 25712 checksum: 10/cb2b58ddfb12efa83e939091386ad73b425c9a8487ea0095fe4653192a40d49184a771a1beba99045fbd011e389fd563122d79f54f82be86a55620667e08a6b2 25529 25713 languageName: node 25530 25714 linkType: hard 25531 25715 25532 - "temp-dir@npm:^2.0.0": 25716 + "temp-dir@npm:^2.0.0, temp-dir@npm:~2.0.0": 25533 25717 version: 2.0.0 25534 25718 resolution: "temp-dir@npm:2.0.0" 25535 25719 checksum: 10/cc4f0404bf8d6ae1a166e0e64f3f409b423f4d1274d8c02814a59a5529f07db6cd070a749664141b992b2c1af337fa9bb451a460a43bb9bcddc49f235d3115aa ··· 25555 25739 languageName: node 25556 25740 linkType: hard 25557 25741 25558 - "tempy@npm:0.3.0": 25559 - version: 0.3.0 25560 - resolution: "tempy@npm:0.3.0" 25561 - dependencies: 25562 - temp-dir: "npm:^1.0.0" 25563 - type-fest: "npm:^0.3.1" 25564 - unique-string: "npm:^1.0.0" 25565 - checksum: 10/063f52e6eb1b20eb723d658b3751ee4990d2966fd16f9881c23cc0f8d7756f4b5b0ee8bddd53a32b5a21d8f81d81c1bbbe1c5e0f5e7b113db8849b0442afffe0 25566 - languageName: node 25567 - linkType: hard 25568 - 25569 25742 "tempy@npm:^0.7.1": 25570 25743 version: 0.7.1 25571 25744 resolution: "tempy@npm:0.7.1" ··· 25639 25812 languageName: node 25640 25813 linkType: hard 25641 25814 25815 + "test-exclude@npm:^6.0.0": 25816 + version: 6.0.0 25817 + resolution: "test-exclude@npm:6.0.0" 25818 + dependencies: 25819 + "@istanbuljs/schema": "npm:^0.1.2" 25820 + glob: "npm:^7.1.4" 25821 + minimatch: "npm:^3.0.4" 25822 + checksum: 10/8fccb2cb6c8fcb6bb4115394feb833f8b6cf4b9503ec2485c2c90febf435cac62abe882a0c5c51a37b9bbe70640cdd05acf5f45e486ac4583389f4b0855f69e5 25823 + languageName: node 25824 + linkType: hard 25825 + 25642 25826 "text-extensions@npm:^1.0.0": 25643 25827 version: 1.9.0 25644 25828 resolution: "text-extensions@npm:1.9.0" ··· 25718 25902 languageName: node 25719 25903 linkType: hard 25720 25904 25905 + "tlds@npm:^1.234.0": 25906 + version: 1.255.0 25907 + resolution: "tlds@npm:1.255.0" 25908 + bin: 25909 + tlds: bin.js 25910 + checksum: 10/ec42c9e913ded4cdce26cc95343be444850ac23ed6193944d7eb5b6e0a2978fb597956aaed1e9e22f1cd5c562aed94a6664c4779048593b8d3170e7a54c62f75 25911 + languageName: node 25912 + linkType: hard 25913 + 25721 25914 "tmp-promise@npm:^3.0.2": 25722 25915 version: 3.0.3 25723 25916 resolution: "tmp-promise@npm:3.0.3" ··· 25796 25989 languageName: node 25797 25990 linkType: hard 25798 25991 25799 - "traverse@npm:~0.6.6": 25800 - version: 0.6.9 25801 - resolution: "traverse@npm:0.6.9" 25802 - dependencies: 25803 - gopd: "npm:^1.0.1" 25804 - typedarray.prototype.slice: "npm:^1.0.3" 25805 - which-typed-array: "npm:^1.1.15" 25806 - checksum: 10/7f42c2fa3451a8b51e3bfb5b6f884684f4f8142c5eb2ee8a0c413e805d532fcc470cd4700d3bfd00271c0221f8c6132263cf559e60ea35df05aebc9551977a2f 25807 - languageName: node 25808 - linkType: hard 25809 - 25810 25992 "treeverse@npm:^3.0.0": 25811 25993 version: 3.0.0 25812 25994 resolution: "treeverse@npm:3.0.0" ··· 25827 26009 dependencies: 25828 26010 escape-string-regexp: "npm:^1.0.2" 25829 26011 checksum: 10/e25c235305b82c43f1d64a67a71226c406b00281755e4c2c4f3b1d0b09c687a535dd3c4483327f949f28bb89dc400a0bc5e5b749054f4b99f49ebfe48ba36496 25830 - languageName: node 25831 - linkType: hard 25832 - 25833 - "trim-right@npm:^1.0.1": 25834 - version: 1.0.1 25835 - resolution: "trim-right@npm:1.0.1" 25836 - checksum: 10/9120af534e006a7424a4f9358710e6e707887b6ccf7ea69e50d6ac6464db1fe22268400def01752f09769025d480395159778153fb98d4a2f6f40d4cf5d4f3b6 25837 26012 languageName: node 25838 26013 linkType: hard 25839 26014 ··· 26006 26181 languageName: node 26007 26182 linkType: hard 26008 26183 26009 - "type-fest@npm:^0.3.1": 26010 - version: 0.3.1 26011 - resolution: "type-fest@npm:0.3.1" 26012 - checksum: 10/a969e953d87889e089ea8b370b12a0c90410e198287aeba1a5618a325492967be338ebaf85aecfb542d312dedbcf5e12be9291e5e5d3b0b6c990992a224d07ae 26013 - languageName: node 26014 - linkType: hard 26015 - 26016 26184 "type-fest@npm:^0.4.1": 26017 26185 version: 0.4.1 26018 26186 resolution: "type-fest@npm:0.4.1" ··· 26117 26285 languageName: node 26118 26286 linkType: hard 26119 26287 26120 - "typedarray.prototype.slice@npm:^1.0.3": 26121 - version: 1.0.3 26122 - resolution: "typedarray.prototype.slice@npm:1.0.3" 26123 - dependencies: 26124 - call-bind: "npm:^1.0.7" 26125 - define-properties: "npm:^1.2.1" 26126 - es-abstract: "npm:^1.23.0" 26127 - es-errors: "npm:^1.3.0" 26128 - typed-array-buffer: "npm:^1.0.2" 26129 - typed-array-byte-offset: "npm:^1.0.2" 26130 - checksum: 10/07bfebdfb7a67b2a80557bf4f1061d8a68ee847d7f04c91c7aa327aa90681f97e1ea3efef17b3b8f336a7f2da1d2ff95dd92de59a4788b4e6373318b27fca2c1 26131 - languageName: node 26132 - linkType: hard 26133 - 26134 26288 "typedarray@npm:^0.0.6": 26135 26289 version: 0.0.6 26136 26290 resolution: "typedarray@npm:0.0.6" ··· 26158 26312 languageName: node 26159 26313 linkType: hard 26160 26314 26315 + "typescript@npm:~5.3.3": 26316 + version: 5.3.3 26317 + resolution: "typescript@npm:5.3.3" 26318 + bin: 26319 + tsc: bin/tsc 26320 + tsserver: bin/tsserver 26321 + checksum: 10/6e4e6a14a50c222b3d14d4ea2f729e79f972fa536ac1522b91202a9a65af3605c2928c4a790a4a50aa13694d461c479ba92cedaeb1e7b190aadaa4e4b96b8e18 26322 + languageName: node 26323 + linkType: hard 26324 + 26161 26325 "typescript@patch:typescript@npm%3A>=3 < 6#optional!builtin<compat/typescript>": 26162 26326 version: 5.5.3 26163 26327 resolution: "typescript@patch:typescript@npm%3A5.5.3#optional!builtin<compat/typescript>::version=5.5.3&hash=b45daf" ··· 26178 26342 languageName: node 26179 26343 linkType: hard 26180 26344 26345 + "typescript@patch:typescript@npm%3A~5.3.3#optional!builtin<compat/typescript>": 26346 + version: 5.3.3 26347 + resolution: "typescript@patch:typescript@npm%3A5.3.3#optional!builtin<compat/typescript>::version=5.3.3&hash=e012d7" 26348 + bin: 26349 + tsc: bin/tsc 26350 + tsserver: bin/tsserver 26351 + checksum: 10/c93786fcc9a70718ba1e3819bab56064ead5817004d1b8186f8ca66165f3a2d0100fee91fa64c840dcd45f994ca5d615d8e1f566d39a7470fc1e014dbb4cf15d 26352 + languageName: node 26353 + linkType: hard 26354 + 26181 26355 "ua-parser-js@npm:^1.0.35, ua-parser-js@npm:^1.0.37": 26182 26356 version: 1.0.38 26183 26357 resolution: "ua-parser-js@npm:1.0.38" ··· 26216 26390 bin: 26217 26391 uglifyjs: bin/uglifyjs 26218 26392 checksum: 10/44b37f88805565ba478665f4d5560388a072b314c38708046a5b97ca49ec40cb0d34414daff77d44695991098b7596536847e7d87b4590f457fc757e1d2904cc 26393 + languageName: node 26394 + linkType: hard 26395 + 26396 + "uint8arrays@npm:3.0.0": 26397 + version: 3.0.0 26398 + resolution: "uint8arrays@npm:3.0.0" 26399 + dependencies: 26400 + multiformats: "npm:^9.4.2" 26401 + checksum: 10/744777ab7200af3e4559bb342c63d66d78575ff1d1fd2a8161d9b90cc15545ffcb549541880dc45157db5fead70384ba6cca30066f670999941536942c2e77b7 26219 26402 languageName: node 26220 26403 linkType: hard 26221 26404 ··· 26277 26460 languageName: node 26278 26461 linkType: hard 26279 26462 26463 + "undici@npm:^6.18.2": 26464 + version: 6.21.0 26465 + resolution: "undici@npm:6.21.0" 26466 + checksum: 10/c8ff80dcadfcf613e7fe697c37519fca070fcf1cfccc69ffb6a7080a22e225eb79d232e9f70e32b099b3e67ac4216e8fd615e188cfb792e09df9233471ec17e0 26467 + languageName: node 26468 + linkType: hard 26469 + 26280 26470 "unenv@npm:^1.9.0": 26281 26471 version: 1.10.0 26282 26472 resolution: "unenv@npm:1.10.0" ··· 26357 26547 languageName: node 26358 26548 linkType: hard 26359 26549 26360 - "unique-string@npm:^1.0.0": 26361 - version: 1.0.0 26362 - resolution: "unique-string@npm:1.0.0" 26363 - dependencies: 26364 - crypto-random-string: "npm:^1.0.0" 26365 - checksum: 10/4970f1592785cbb818d970056ee73327779629d19d72bf02443162e553f79bd44ab56d123d43aad887f1db34016c3d7457e3ad78fdc026ea468c3f610b198a0d 26366 - languageName: node 26367 - linkType: hard 26368 - 26369 - "unique-string@npm:^2.0.0": 26550 + "unique-string@npm:^2.0.0, unique-string@npm:~2.0.0": 26370 26551 version: 2.0.0 26371 26552 resolution: "unique-string@npm:2.0.0" 26372 26553 dependencies: ··· 26551 26732 languageName: node 26552 26733 linkType: hard 26553 26734 26554 - "url-join@npm:4.0.0": 26555 - version: 4.0.0 26556 - resolution: "url-join@npm:4.0.0" 26557 - checksum: 10/b7d167149bb21fb569e84160e7b551b994d58bea38a69663de510ae1db868f70fa5d37e1acdcc42d71f3837144a8880b6b96ca096c4c8c384eabc92ccf88a962 26558 - languageName: node 26559 - linkType: hard 26560 - 26561 26735 "use-callback-ref@npm:^1.3.0": 26562 26736 version: 1.3.2 26563 26737 resolution: "use-callback-ref@npm:1.3.2" ··· 26607 26781 languageName: node 26608 26782 linkType: hard 26609 26783 26784 + "use-sync-external-store@npm:^1.0.0": 26785 + version: 1.2.2 26786 + resolution: "use-sync-external-store@npm:1.2.2" 26787 + peerDependencies: 26788 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 26789 + checksum: 10/671e9c190aab9a8374a5d468c6ba17f52c38b6fae970110bc196fc1e2b57204149aea9619be49a1bb5207fb6e51d8afd19c3bcb94afe61813fed039821461dc0 26790 + languageName: node 26791 + linkType: hard 26792 + 26610 26793 "username@npm:^5.1.0": 26611 26794 version: 5.1.0 26612 26795 resolution: "username@npm:5.1.0" ··· 26710 26893 version: 3.0.1 26711 26894 resolution: "v8-compile-cache-lib@npm:3.0.1" 26712 26895 checksum: 10/88d3423a52b6aaf1836be779cab12f7016d47ad8430dffba6edf766695e6d90ad4adaa3d8eeb512cc05924f3e246c4a4ca51e089dccf4402caa536b5e5be8961 26713 - languageName: node 26714 - linkType: hard 26715 - 26716 - "valid-url@npm:~1.0.9": 26717 - version: 1.0.9 26718 - resolution: "valid-url@npm:1.0.9" 26719 - checksum: 10/343dfaf85eb3691dc8eb93f7bc007be1ee6091e6c6d1a68bf633cb85e4bf2930e34ca9214fb2c3330de5b652510b257a8ee1ff0a0a37df0925e9dabf93ee512d 26720 26896 languageName: node 26721 26897 linkType: hard 26722 26898 ··· 26877 27053 languageName: node 26878 27054 linkType: hard 26879 27055 26880 - "walker@npm:^1.0.7": 27056 + "walker@npm:^1.0.7, walker@npm:^1.0.8": 26881 27057 version: 1.0.8 26882 27058 resolution: "walker@npm:1.0.8" 26883 27059 dependencies: ··· 26921 27097 languageName: node 26922 27098 linkType: hard 26923 27099 27100 + "web-streams-polyfill@npm:^3.3.2": 27101 + version: 3.3.3 27102 + resolution: "web-streams-polyfill@npm:3.3.3" 27103 + checksum: 10/8e7e13501b3834094a50abe7c0b6456155a55d7571312b89570012ef47ec2a46d766934768c50aabad10a9c30dd764a407623e8bfcc74fcb58495c29130edea9 27104 + languageName: node 27105 + linkType: hard 27106 + 26924 27107 "webauthn-p256@npm:0.0.10": 26925 27108 version: 0.0.10 26926 27109 resolution: "webauthn-p256@npm:0.0.10" ··· 27213 27396 languageName: node 27214 27397 linkType: hard 27215 27398 27216 - "wonka@npm:^4.0.14": 27217 - version: 4.0.15 27218 - resolution: "wonka@npm:4.0.15" 27219 - checksum: 10/33810f67e1f981181689e7c61129d21b3591bc48bc91516d164cb1b85bd09ada33ef0a3ad3922484912b848a50c84d0318e3428dccc597e491f9829fd0b1fe61 27220 - languageName: node 27221 - linkType: hard 27222 - 27223 27399 "wonka@npm:^6.3.2": 27224 27400 version: 6.3.4 27225 27401 resolution: "wonka@npm:6.3.4" ··· 27313 27489 languageName: node 27314 27490 linkType: hard 27315 27491 27492 + "write-file-atomic@npm:^4.0.2": 27493 + version: 4.0.2 27494 + resolution: "write-file-atomic@npm:4.0.2" 27495 + dependencies: 27496 + imurmurhash: "npm:^0.1.4" 27497 + signal-exit: "npm:^3.0.7" 27498 + checksum: 10/3be1f5508a46c190619d5386b1ac8f3af3dbe951ed0f7b0b4a0961eed6fc626bd84b50cf4be768dabc0a05b672f5d0c5ee7f42daa557b14415d18c3a13c7d246 27499 + languageName: node 27500 + linkType: hard 27501 + 27316 27502 "write-json-file@npm:^3.2.0": 27317 27503 version: 3.2.0 27318 27504 resolution: "write-json-file@npm:3.2.0" ··· 27368 27554 languageName: node 27369 27555 linkType: hard 27370 27556 27371 - "ws@npm:^6.2.2": 27557 + "ws@npm:^6.2.3": 27372 27558 version: 6.2.3 27373 27559 resolution: "ws@npm:6.2.3" 27374 27560 dependencies: ··· 27377 27563 languageName: node 27378 27564 linkType: hard 27379 27565 27380 - "ws@npm:^7, ws@npm:^7.4.6, ws@npm:^7.5.1": 27566 + "ws@npm:^7, ws@npm:^7.4.6, ws@npm:^7.5.1, ws@npm:^7.5.10": 27381 27567 version: 7.5.10 27382 27568 resolution: "ws@npm:7.5.10" 27383 27569 peerDependencies: ··· 27500 27686 languageName: node 27501 27687 linkType: hard 27502 27688 27503 - "yaml@npm:^2.2.1": 27504 - version: 2.4.5 27505 - resolution: "yaml@npm:2.4.5" 27506 - bin: 27507 - yaml: bin.mjs 27508 - checksum: 10/b09bf5a615a65276d433d76b8e34ad6b4c0320b85eb3f1a39da132c61ae6e2ff34eff4624e6458d96d49566c93cf43408ba5e568218293a8c6541a2006883f64 27509 - languageName: node 27510 - linkType: hard 27511 - 27512 27689 "yaml@npm:~2.5.0": 27513 27690 version: 2.5.1 27514 27691 resolution: "yaml@npm:2.5.1" ··· 27557 27734 languageName: node 27558 27735 linkType: hard 27559 27736 27560 - "yargs@npm:^15.1.0, yargs@npm:^15.3.1": 27737 + "yargs@npm:^15.3.1": 27561 27738 version: 15.4.1 27562 27739 resolution: "yargs@npm:15.4.1" 27563 27740 dependencies: ··· 27628 27805 languageName: node 27629 27806 linkType: hard 27630 27807 27631 - "zod-validation-error@npm:^2.1.0": 27632 - version: 2.1.0 27633 - resolution: "zod-validation-error@npm:2.1.0" 27634 - peerDependencies: 27635 - zod: ^3.18.0 27636 - checksum: 10/fdd3a9fdf176571404abf22af3af330e89227c3cb2e7092d61d0c6dfc8dd688648025346303585a03db51aa466efef5ebb8bdf14dbe630ccdedd5d0aa00741ab 27637 - languageName: node 27638 - linkType: hard 27639 - 27640 - "zod@npm:^3.22.4": 27808 + "zod@npm:^3.23.8": 27641 27809 version: 3.23.8 27642 27810 resolution: "zod@npm:3.23.8" 27643 27811 checksum: 10/846fd73e1af0def79c19d510ea9e4a795544a67d5b34b7e1c4d0425bf6bfd1c719446d94cdfa1721c1987d891321d61f779e8236fde517dc0e524aa851a6eff1