diff --git a/go.mod b/go.mod
index 2939e31c..4cd5f436 100644
--- a/go.mod
+++ b/go.mod
@@ -9,7 +9,7 @@ require (
github.com/camunda/zeebe/clients/go/v8 v8.5.25
github.com/cockroachdb/pebble v1.1.5
github.com/denisenkom/go-mssqldb v0.12.3
- github.com/dromara/carbon/v2 v2.6.14
+ github.com/dromara/carbon/v2 v2.6.15
github.com/dustin/go-humanize v1.0.1
github.com/emersion/go-imap v1.2.1
github.com/emersion/go-message v0.18.2
@@ -18,11 +18,10 @@ require (
github.com/gofiber/fiber/v2 v2.52.9
github.com/google/uuid v1.6.0
github.com/gotd/contrib v0.21.1
- github.com/gotd/td v0.132.0
+ github.com/gotd/td v0.133.0
github.com/jackc/pgx/v5 v5.7.6
github.com/jmoiron/sqlx v1.4.0
github.com/joho/godotenv v1.5.1
- github.com/klauspost/compress v1.18.1
github.com/lib/pq v1.10.9
github.com/mattn/go-sqlite3 v1.14.32
github.com/mdp/qrterminal/v3 v3.2.1
@@ -33,17 +32,15 @@ require (
github.com/segmentio/kafka-go v0.4.49
github.com/tinkoff/invest-api-go-sdk v1.4.6
github.com/xhit/go-simple-mail/v2 v2.16.0
- gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange v1.0.36
go.etcd.io/bbolt v1.4.3
- go.mau.fi/whatsmeow v0.0.0-20251028165006-ad7a618ba42f
+ go.mau.fi/whatsmeow v0.0.0-20251116104239-3aca43070cd4
go.uber.org/zap v1.27.0
- golang.org/x/crypto v0.43.0
- golang.org/x/exp v0.0.0-20251023183803-a4bb9ffd2546
- golang.org/x/net v0.46.0
+ golang.org/x/crypto v0.44.0
+ golang.org/x/net v0.47.0
google.golang.org/protobuf v1.36.10
gopkg.in/natefinch/lumberjack.v2 v2.2.1
gorm.io/driver/postgres v1.6.0
- gorm.io/driver/sqlserver v1.6.1
+ gorm.io/driver/sqlserver v1.6.3
gorm.io/gorm v1.31.1
)
@@ -70,7 +67,7 @@ require (
github.com/elliotchance/orderedmap/v3 v3.1.0 // indirect
github.com/emersion/go-sasl v0.0.0-20241020182733-b788ff22d5a6 // indirect
github.com/fatih/color v1.18.0 // indirect
- github.com/getsentry/sentry-go v0.36.2 // indirect
+ github.com/getsentry/sentry-go v0.37.0 // indirect
github.com/ghodss/yaml v1.0.0 // indirect
github.com/go-faster/jx v1.1.0 // indirect
github.com/go-faster/xor v1.0.0 // indirect
@@ -91,6 +88,7 @@ require (
github.com/jackc/puddle/v2 v2.2.2 // indirect
github.com/jinzhu/inflection v1.0.0 // indirect
github.com/jinzhu/now v1.1.5 // indirect
+ github.com/klauspost/compress v1.18.1 // indirect
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
github.com/klauspost/crc32 v1.3.0 // indirect
github.com/kr/pretty v0.3.1 // indirect
@@ -98,7 +96,7 @@ require (
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mattn/go-runewidth v0.0.19 // indirect
- github.com/microsoft/go-mssqldb v1.9.3 // indirect
+ github.com/microsoft/go-mssqldb v1.9.4 // indirect
github.com/minio/crc64nvme v1.1.1 // indirect
github.com/minio/md5-simd v1.1.2 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
@@ -121,28 +119,28 @@ require (
github.com/segmentio/asm v1.2.1 // indirect
github.com/shopspring/decimal v1.4.0 // indirect
github.com/stretchr/testify v1.11.1 // indirect
- github.com/syndtr/goleveldb v1.0.0 // indirect
github.com/tinylib/msgp v1.5.0 // indirect
github.com/toorop/go-dkim v0.0.0-20250226130143-9025cce95817 // indirect
github.com/valyala/bytebufferpool v1.0.0 // indirect
github.com/valyala/fasthttp v1.68.0 // indirect
github.com/vektah/gqlparser/v2 v2.5.31 // indirect
go.mau.fi/libsignal v0.2.1 // indirect
- go.mau.fi/util v0.9.2 // indirect
+ go.mau.fi/util v0.9.3 // indirect
go.opentelemetry.io/otel v1.38.0 // indirect
go.opentelemetry.io/otel/metric v1.38.0 // indirect
go.opentelemetry.io/otel/trace v1.38.0 // indirect
go.uber.org/atomic v1.11.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.yaml.in/yaml/v2 v2.4.3 // indirect
- golang.org/x/mod v0.29.0 // indirect
- golang.org/x/oauth2 v0.32.0 // indirect
- golang.org/x/sync v0.17.0 // indirect
- golang.org/x/sys v0.37.0 // indirect
- golang.org/x/term v0.36.0 // indirect
- golang.org/x/text v0.30.0 // indirect
- golang.org/x/tools v0.38.0 // indirect
- google.golang.org/genproto/googleapis/rpc v0.0.0-20251103181224-f26f9409b101 // indirect
+ golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6 // indirect
+ golang.org/x/mod v0.30.0 // indirect
+ golang.org/x/oauth2 v0.33.0 // indirect
+ golang.org/x/sync v0.18.0 // indirect
+ golang.org/x/sys v0.38.0 // indirect
+ golang.org/x/term v0.37.0 // indirect
+ golang.org/x/text v0.31.0 // indirect
+ golang.org/x/tools v0.39.0 // indirect
+ google.golang.org/genproto/googleapis/rpc v0.0.0-20251111163417-95abcf5c77ba // indirect
google.golang.org/grpc v1.76.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
diff --git a/go.sum b/go.sum
index 2c5683a1..83f081d4 100644
--- a/go.sum
+++ b/go.sum
@@ -85,8 +85,8 @@ github.com/dlclark/regexp2 v1.11.5 h1:Q/sSnsKerHeCkc/jSTNq1oCm7KiVgUMZRDUoRu0JQZ
github.com/dlclark/regexp2 v1.11.5/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko=
github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ=
-github.com/dromara/carbon/v2 v2.6.14 h1:U4mN6eH/E5GqPI67MSro8aJ5yg1DbenKItKTFwr5Fqg=
-github.com/dromara/carbon/v2 v2.6.14/go.mod h1:NGo3reeV5vhWCYWcSqbJRZm46MEwyfYI5EJRdVFoLJo=
+github.com/dromara/carbon/v2 v2.6.15 h1:3HuC3XcWczIHUTbg/f0CSVydtKEdM+P0GM1sdsbwXmI=
+github.com/dromara/carbon/v2 v2.6.15/go.mod h1:NGo3reeV5vhWCYWcSqbJRZm46MEwyfYI5EJRdVFoLJo=
github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
github.com/elliotchance/orderedmap/v3 v3.1.0 h1:j4DJ5ObEmMBt/lcwIecKcoRxIQUEnw0L804lXYDt/pg=
@@ -102,9 +102,8 @@ github.com/emersion/go-sasl v0.0.0-20241020182733-b788ff22d5a6/go.mod h1:iL2twTe
github.com/emersion/go-textwrapper v0.0.0-20200911093747-65d896831594/go.mod h1:aqO8z8wPrjkscevZJFVE1wXJrLpC5LtJG7fqLOsPb2U=
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
-github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
-github.com/getsentry/sentry-go v0.36.2 h1:uhuxRPTrUy0dnSzTd0LrYXlBYygLkKY0hhlG5LXarzM=
-github.com/getsentry/sentry-go v0.36.2/go.mod h1:p5Im24mJBeruET8Q4bbcMfCQ+F+Iadc4L48tB1apo2c=
+github.com/getsentry/sentry-go v0.37.0 h1:5bavywHxVkU/9aOIF4fn3s5RTJX5Hdw6K2W6jLYtM98=
+github.com/getsentry/sentry-go v0.37.0/go.mod h1:eRXCoh3uvmjQLY6qu63BjUZnaBu5L5WhMV1RwYO8W5s=
github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxIA=
@@ -148,10 +147,8 @@ github.com/golang-sql/sqlexp v0.1.0 h1:ZCD6MBpcuOVfGVqsEmY5/4FtYiKz6tSyUv9LPEDei
github.com/golang-sql/sqlexp v0.1.0/go.mod h1:J4ad9Vo8ZCWQ2GMrC4UCQy1JpCbwU9m3EOqtpKwwwHI=
github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc=
github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs=
-github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
-github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v1.0.0 h1:Oy607GVXHs7RtbggtPBnr2RmDArIsAefDwvrdWvRhGs=
github.com/golang/snappy v1.0.0/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
@@ -168,14 +165,12 @@ github.com/gotd/ige v0.2.2 h1:XQ9dJZwBfDnOGSTxKXBGP4gMud3Qku2ekScRjDWWfEk=
github.com/gotd/ige v0.2.2/go.mod h1:tuCRb+Y5Y3eNTo3ypIfNpQ4MFjrnONiL2jN2AKZXmb0=
github.com/gotd/neo v0.1.5 h1:oj0iQfMbGClP8xI59x7fE/uHoTJD7NZH9oV1WNuPukQ=
github.com/gotd/neo v0.1.5/go.mod h1:9A2a4bn9zL6FADufBdt7tZt+WMhvZoc5gWXihOPoiBQ=
-github.com/gotd/td v0.132.0 h1:Iqm3S2b+8kDgA9237IDXRxj7sryUpvy+4Cr50/0tpx4=
-github.com/gotd/td v0.132.0/go.mod h1:4CDGYS+rDtOqotRheGaF9MS5g6jaUewvSXqBNJnx8SQ=
+github.com/gotd/td v0.133.0 h1:4wBM590McSUg6ooGjd+k4taAN8R50cyrOOkPV5cELa0=
+github.com/gotd/td v0.133.0/go.mod h1:SEgKTinqT8UPQDbcvjqk2iflcUvmv4uKsIgpZKe/788=
github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3 h1:B+8ClL/kCQkRiU82d9xajRPKYMrB7E0MbtzWVi1K4ns=
github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3/go.mod h1:NbCUVmiS4foBGBHOYlCT25+YmGpJ32dZPi75pGEUpj4=
github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
-github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI=
-github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM=
github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg=
github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo=
@@ -233,8 +228,8 @@ github.com/mattn/go-sqlite3 v1.14.32/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxU
github.com/mdp/qrterminal/v3 v3.2.1 h1:6+yQjiiOsSuXT5n9/m60E54vdgFsw0zhADHhHLrFet4=
github.com/mdp/qrterminal/v3 v3.2.1/go.mod h1:jOTmXvnBsMy5xqLniO0R++Jmjs2sTm9dFSuQ5kpz/SU=
github.com/microsoft/go-mssqldb v1.8.2/go.mod h1:vp38dT33FGfVotRiTmDo3bFyaHq+p3LektQrjTULowo=
-github.com/microsoft/go-mssqldb v1.9.3 h1:hy4p+LDC8LIGvI3JATnLVmBOLMJbmn5X400mr5j0lPs=
-github.com/microsoft/go-mssqldb v1.9.3/go.mod h1:GBbW9ASTiDC+mpgWDGKdm3FnFLTUsLYN3iFL90lQ+PA=
+github.com/microsoft/go-mssqldb v1.9.4 h1:sHrj3GcdgkxytZ09aZ3+ys72pMeyEXJowT44j74pNgs=
+github.com/microsoft/go-mssqldb v1.9.4/go.mod h1:GBbW9ASTiDC+mpgWDGKdm3FnFLTUsLYN3iFL90lQ+PA=
github.com/minio/crc64nvme v1.1.1 h1:8dwx/Pz49suywbO+auHCBpCtlW1OfpcLN7wYgVR6wAI=
github.com/minio/crc64nvme v1.1.1/go.mod h1:eVfm2fAzLlxMdUGc0EEBGSMmPwmXD5XiNRpnu9J3bvg=
github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=
@@ -255,11 +250,6 @@ github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
github.com/ogen-go/ogen v1.16.0 h1:fKHEYokW/QrMzVNXId74/6RObRIUs9T2oroGKtR25Iw=
github.com/ogen-go/ogen v1.16.0/go.mod h1:s3nWiMzybSf8fhxckyO+wtto92+QHpEL8FmkPnhL3jI=
-github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
-github.com/onsi/ginkgo v1.7.0 h1:WSHQ+IS43OoUrWtD1/bbclrwK8TTH5hzp+umCiuxHgs=
-github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
-github.com/onsi/gomega v1.4.3 h1:RE1xgDvH7imwFD45h+u2SgIfERHlS2yNG4DObb5BSKU=
-github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
github.com/petermattis/goid v0.0.0-20250904145737-900bdf8bb490 h1:QTvNkZ5ylY0PGgA+Lih+GdboMLY/G9SEGLMEGVjTVA4=
github.com/petermattis/goid v0.0.0-20250904145737-900bdf8bb490/go.mod h1:pxMtw7cyUw6B2bRH0ZBANSPg+AoSud1I1iyJHI69jH4=
github.com/philhofer/fwd v1.2.0 h1:e6DnBTl7vGY+Gz322/ASL4Gyp1FspeMvx1RNDoToZuM=
@@ -319,8 +309,6 @@ github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXl
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
-github.com/syndtr/goleveldb v1.0.0 h1:fBdIW9lB4Iz0n9khmH8w27SJ3QEJ7+IgjPEwGSZiFdE=
-github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ=
github.com/tinkoff/invest-api-go-sdk v1.4.6 h1:A/HJ/azi3zC6qnPADIqsmHgfZcl+RSK/iDksxhZTQOI=
github.com/tinkoff/invest-api-go-sdk v1.4.6/go.mod h1:Wx/BIiJ1AAGa4vKyADDlPEWQTdv23mxYsTcj4TREvN0=
github.com/tinylib/msgp v1.5.0 h1:GWnqAE54wmnlFazjq2+vgr736Akg58iiHImh+kPY2pc=
@@ -347,16 +335,14 @@ github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3i
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange v1.0.36 h1:H817fXKn2fHCHv3GcR9hci54d2srGhhVEADDrWyJhXU=
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange v1.0.36/go.mod h1:+ZbwpurumFpi0GbiahOY4shV6WB2kguFxN486+76prs=
go.etcd.io/bbolt v1.4.3 h1:dEadXpI6G79deX5prL3QRNP6JB8UxVkqo4UPnHaNXJo=
go.etcd.io/bbolt v1.4.3/go.mod h1:tKQlpPaYCVFctUIgFKFnAlvbmB3tpy1vkTnDWohtc0E=
go.mau.fi/libsignal v0.2.1 h1:vRZG4EzTn70XY6Oh/pVKrQGuMHBkAWlGRC22/85m9L0=
go.mau.fi/libsignal v0.2.1/go.mod h1:iVvjrHyfQqWajOUaMEsIfo3IqgVMrhWcPiiEzk7NgoU=
-go.mau.fi/util v0.9.2 h1:+S4Z03iCsGqU2WY8X2gySFsFjaLlUHFRDVCYvVwynKM=
-go.mau.fi/util v0.9.2/go.mod h1:055elBBCJSdhRsmub7ci9hXZPgGr1U6dYg44cSgRgoU=
-go.mau.fi/whatsmeow v0.0.0-20251028165006-ad7a618ba42f h1:UfzKgeEBRlDj3E2B/z+no17BstkAxO4kIUNSgR6Cwrw=
-go.mau.fi/whatsmeow v0.0.0-20251028165006-ad7a618ba42f/go.mod h1:RwBrMQAWCHGzMdDZ6EwjcY4Aj3g8Efx8c7GACTdiAME=
+go.mau.fi/util v0.9.3 h1:aqNF8KDIN8bFpFbybSk+mEBil7IHeBwlujfyTnvP0uU=
+go.mau.fi/util v0.9.3/go.mod h1:krWWfBM1jWTb5f8NCa2TLqWMQuM81X7TGQjhMjBeXmQ=
+go.mau.fi/whatsmeow v0.0.0-20251116104239-3aca43070cd4 h1:7hXdxCFs2Me4nypiWjdBNonaFrPfmYJvEtTOwLctSHU=
+go.mau.fi/whatsmeow v0.0.0-20251116104239-3aca43070cd4/go.mod h1:5aYaEa3FF5e5XWsA8Xa80ttUXZvb6HyaBGgo2SfzUkE=
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8=
@@ -395,10 +381,10 @@ golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOM
golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M=
golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM=
-golang.org/x/crypto v0.43.0 h1:dduJYIi3A3KOfdGOHX8AVZ/jGiyPa3IbBozJ5kNuE04=
-golang.org/x/crypto v0.43.0/go.mod h1:BFbav4mRNlXJL4wNeejLpWxB7wMbc79PdRGhWKncxR0=
-golang.org/x/exp v0.0.0-20251023183803-a4bb9ffd2546 h1:mgKeJMpvi0yx/sU5GsxQ7p6s2wtOnGAHZWCHUM4KGzY=
-golang.org/x/exp v0.0.0-20251023183803-a4bb9ffd2546/go.mod h1:j/pmGrbnkbPtQfxEe5D0VQhZC6qKbfKifgD0oM7sR70=
+golang.org/x/crypto v0.44.0 h1:A97SsFvM3AIwEEmTBiaxPPTYpDC47w720rdiiUvgoAU=
+golang.org/x/crypto v0.44.0/go.mod h1:013i+Nw79BMiQiMsOPcVCB5ZIJbYkerPrGnOa00tvmc=
+golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6 h1:zfMcR1Cs4KNuomFFgGefv5N0czO2XZpUbxGUy8i8ug0=
+golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6/go.mod h1:46edojNIoXTNOhySWIWdix628clX9ODXwPsQuG6hsK0=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
@@ -407,9 +393,8 @@ golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
-golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
-golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
-golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
+golang.org/x/mod v0.30.0 h1:fDEXFVZ/fmCKProc/yAXXUijritrDzahmwwefnjoPFk=
+golang.org/x/mod v0.30.0/go.mod h1:lAsf5O2EvJeSFMiBxXDki7sCgAxEUcZHXoXMKT4GJKc=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -432,11 +417,10 @@ golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8=
golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM=
golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE=
-golang.org/x/net v0.46.0 h1:giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4=
-golang.org/x/net v0.46.0/go.mod h1:Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210=
-golang.org/x/oauth2 v0.32.0 h1:jsCblLleRMDrxMN29H3z/k1KliIvpLgCkE6R8FXXNgY=
-golang.org/x/oauth2 v0.32.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
-golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
+golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
+golang.org/x/oauth2 v0.33.0 h1:4Q+qn+E5z8gPRJfmRy7C2gGG3T4jIprK6aSYgTXGRpo=
+golang.org/x/oauth2 v0.33.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -447,9 +431,8 @@ golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.9.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
-golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
-golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
-golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
+golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -474,8 +457,8 @@ golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
-golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
-golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
+golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
+golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
@@ -491,8 +474,8 @@ golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58=
golang.org/x/term v0.19.0/go.mod h1:2CuTdWZ7KHSQwUzKva0cbMg6q2DMI3Mmxp+gKJbskEk=
golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY=
golang.org/x/term v0.21.0/go.mod h1:ooXLefLobQVslOqselCNF4SxFAaoS6KujMbsGzSDmX0=
-golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q=
-golang.org/x/term v0.36.0/go.mod h1:Qu394IJq6V6dCBRgwqshf3mPF85AqzYEzofzRdZkWss=
+golang.org/x/term v0.37.0 h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU=
+golang.org/x/term v0.37.0/go.mod h1:5pB4lxRNYYVZuTLmy8oR2BH8dflOR+IbTYFD8fi3254=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
@@ -507,8 +490,8 @@ golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI=
golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
-golang.org/x/text v0.30.0 h1:yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k=
-golang.org/x/text v0.30.0/go.mod h1:yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM=
+golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
+golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
@@ -517,16 +500,16 @@ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
-golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
-golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
+golang.org/x/tools v0.39.0 h1:ik4ho21kwuQln40uelmciQPp9SipgNDdrafrYA4TmQQ=
+golang.org/x/tools v0.39.0/go.mod h1:JnefbkDPyD8UU2kI5fuf8ZX4/yUeh9W877ZeBONxUqQ=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk=
gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20251103181224-f26f9409b101 h1:tRPGkdGHuewF4UisLzzHHr1spKw92qLM98nIzxbC0wY=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20251103181224-f26f9409b101/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20251111163417-95abcf5c77ba h1:UKgtfRM7Yh93Sya0Fo8ZzhDP4qBckrrxEr2oF5UIVb8=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20251111163417-95abcf5c77ba/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk=
google.golang.org/grpc v1.76.0 h1:UnVkv1+uMLYXoIz6o7chp59WfQUYA2ex/BXQ9rHZu7A=
google.golang.org/grpc v1.76.0/go.mod h1:Ju12QI8M6iQJtbcsV+awF5a4hfJMLi4X0JLo94ULZ6c=
google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
@@ -534,12 +517,8 @@ google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
-gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
-gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
gopkg.in/natefinch/lumberjack.v2 v2.2.1 h1:bBRl1b0OH9s/DuPhuXpNl+VtCaJXFZ5/uEFST95x9zc=
gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYskCTPBJVb9jqSc=
-gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
-gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
@@ -551,8 +530,8 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gorm.io/driver/postgres v1.6.0 h1:2dxzU8xJ+ivvqTRph34QX+WrRaJlmfyPqXmoGVjMBa4=
gorm.io/driver/postgres v1.6.0/go.mod h1:vUw0mrGgrTK+uPHEhAdV4sfFELrByKVGnaVRkXDhtWo=
-gorm.io/driver/sqlserver v1.6.1 h1:XWISFsu2I2pqd1KJhhTZNJMx1jNQ+zVL/Q8ovDcUjtY=
-gorm.io/driver/sqlserver v1.6.1/go.mod h1:VZeNn7hqX1aXoN5TPAFGWvxWG90xtA8erGn2gQmpc6U=
+gorm.io/driver/sqlserver v1.6.3 h1:UR+nWCuphPnq7UxnL57PSrlYjuvs+sf1N59GgFX7uAI=
+gorm.io/driver/sqlserver v1.6.3/go.mod h1:VZeNn7hqX1aXoN5TPAFGWvxWG90xtA8erGn2gQmpc6U=
gorm.io/gorm v1.25.4/go.mod h1:L4uxeKpfBml98NYqVqwAdmV1a2nBtAec/cf3fpucW/k=
gorm.io/gorm v1.30.0/go.mod h1:8Z33v652h4//uMA76KjeDH8mJXPm1QNCYrMeatR0DOE=
gorm.io/gorm v1.31.1 h1:7CA8FTFz/gRfgqgpeKIBcervUn3xSyPUmr6B2WXJ7kg=
diff --git a/pkg/version/version.txt b/pkg/version/version.txt
index e959aa25..2be74d05 100644
--- a/pkg/version/version.txt
+++ b/pkg/version/version.txt
@@ -1 +1 @@
-v1.0.226-2-gf48a50b5 2025-10-15 17:32:50 +0300
+v1.0.231 2025-11-11 14:55:39 +0300
diff --git a/sync_exchange_connect/sync_exchange_connect.go b/sync_exchange_connect/sync_exchange_connect.go
deleted file mode 100644
index bcb6f8c4..00000000
--- a/sync_exchange_connect/sync_exchange_connect.go
+++ /dev/null
@@ -1,277 +0,0 @@
-// модуль для обмена с сервисом NATS через sync_exchange
-package sync_exchange_connect
-
-import (
- "bytes"
- "context"
- "fmt"
- "github.com/ManyakRus/starter/contextmain"
- "github.com/ManyakRus/starter/log"
- "github.com/ManyakRus/starter/nats_connect"
- "github.com/ManyakRus/starter/stopapp"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types"
- "os"
- "runtime/pprof"
- "sync"
- "time"
-)
-
-// TopicNamePprof_Heap_Suffix - имя суффикса топика с профилем памяти
-const TopicNamePprof_Heap_Suffix = ".heap_profile"
-
-// TopicNamePprof_Goroutine_Suffix - имя суффикса топика с профилем памяти
-const TopicNamePprof_Goroutine_Suffix = ".goroutine_profile"
-
-// serviceName - имя сервиса который подключается
-var serviceName string
-
-// Connect - подключение к NATS SyncExchange
-func Connect(ServiceName, ServiceVersion string) {
- err := Connect_err(ServiceName, ServiceVersion)
- LogInfo_Connected(err)
-}
-
-// LogInfo_Connected - выводит сообщение в Лог, или паника при ошибке
-func LogInfo_Connected(err error) {
- if err != nil {
- log.Panicln("Can not start NATS, server: ", nats_connect.Settings.NATS_HOST, " error: ", err)
- } else {
- log.Info("NATS connected. OK., server: ", nats_connect.Settings.NATS_HOST, ":", nats_connect.Settings.NATS_PORT)
- }
-
-}
-
-// Connect_err - подключение к NATS SyncExchange
-func Connect_err(ServiceName, ServiceVersion string) error {
- var err error
-
- //запомним ServiceName
- if serviceName == "" {
- serviceName = ServiceName
- }
-
- //
- nats_connect.FillSettings()
- sNATS_PORT := (nats_connect.Settings.NATS_PORT)
- url := "nats://" + nats_connect.Settings.NATS_HOST + ":" + sNATS_PORT
-
- err = sync_exchange.InitSyncExchange(url, ServiceName, ServiceVersion)
-
- return err
-}
-
-// Start - необходимые процедуры для подключения к серверу Nats SyncExchange
-func Start(ServiceName, ServiceVersion string) {
- var err error
-
- ctx := contextmain.GetContext()
- WaitGroup := stopapp.GetWaitGroup_Main()
- err = Start_ctx(&ctx, WaitGroup, ServiceName, ServiceVersion)
- LogInfo_Connected(err)
-
-}
-
-// Start_ctx - необходимые процедуры для подключения к NATS с библиотекой SyncExchange
-// Свой контекст и WaitGroup нужны для остановки работы сервиса Graceful shutdown
-// Для тех кто пользуется этим репозиторием для старта и останова сервиса можно просто Start()
-func Start_ctx(ctx *context.Context, WaitGroup *sync.WaitGroup, ServiceName, ServiceVersion string) error {
- var err error
-
- //запомним к себе контекст
- if contextmain.Ctx != ctx {
- contextmain.SetContext(ctx)
- }
- //contextmain.Ctx = ctx
- if ctx == nil {
- contextmain.GetContext()
- }
-
- //запомним к себе WaitGroup
- stopapp.SetWaitGroup_Main(WaitGroup)
- if WaitGroup == nil {
- stopapp.StartWaitStop()
- }
-
- //
- err = Connect_err(ServiceName, ServiceVersion)
- if err != nil {
- return err
- }
-
- stopapp.GetWaitGroup_Main().Add(1)
- go WaitStop()
-
- return err
-}
-
-// CloseConnection - закрывает соединение с NATS
-func CloseConnection() {
- err := sync_exchange.DeInitSyncExchange()
- if err != nil {
- log.Warn("CloseConnection() warning: ", err)
- } else {
- log.Info("NATS stopped")
- }
-
- //return err
-}
-
-// WaitStop - ожидает отмену глобального контекста или сигнала завершения приложения
-func WaitStop() {
- defer stopapp.GetWaitGroup_Main().Done()
-
- select {
- case <-contextmain.GetContext().Done():
- log.Warn("Context app is canceled. sync_exchange_connect")
- }
-
- //ждём пока отправляемых сейчас сообщений будет =0
- stopapp.WaitTotalMessagesSendingNow("sync_exchange_connect")
-
- //закрываем соединение
- CloseConnection()
-}
-
-// SendResponseError - Отправляет ответ в NATS SyncExchange
-func SendResponseError(sp *sync_types.SyncPackage, err error) {
-
- if err == nil {
- return
- }
-
- sp_otvet := sync_types.MakeSyncError("", 0, err.Error())
-
- err = sync_exchange.SendResponse(sp, sp_otvet)
- if err != nil {
- log.Error("SendResponse() Error: ", err)
- }
-
-}
-
-// Start_PprofNats - профилирование памяти отправляет в NATS, бесконечно + WaitGroup
-func Start_PprofNats() {
- TextTest := TextTestOrEmpty()
- topicHeapProfile := serviceName + TextTest + TopicNamePprof_Heap_Suffix
- log.Info("Start_PprofNats(), topic: ", topicHeapProfile)
-
- stopapp.GetWaitGroup_Main().Add(1)
- go pprofNats_forever_go()
-}
-
-// pprofNats_forever_go - профилирование памяти отправляет в NATS, бесконечно + WaitGroup
-func pprofNats_forever_go() {
- defer stopapp.GetWaitGroup_Main().Done()
- PprofNats_forever()
-}
-
-// PprofNats_forever - профилирование памяти отправляет в NATS, бесконечно
-func PprofNats_forever() {
- var err error
-
- ticker := time.NewTicker(60 * time.Second)
- defer ticker.Stop()
-
-loop:
- for {
- select {
- case <-contextmain.GetContext().Done():
- log.Warn("Context app is canceled. sync_exchange_connect.ping")
- break loop
- case <-ticker.C:
- err = PprofNats1()
- if err != nil {
- err = fmt.Errorf("PprofNats1(), error: %w", err)
- log.Error(err)
- time.Sleep(60 * time.Second)
- }
- }
- }
-}
-
-// PprofNats1 - профилирование памяти отправляет в NATS 1 раз
-func PprofNats1() error {
- var err error
-
- //память
- err = PprofMemoryProfile1()
- if err != nil {
- err = fmt.Errorf("PprofMemoryProfile1(), error: %w", err)
- log.Error(err)
- return err
- }
-
- //горутины
- err = PprofGoroutines1()
- if err != nil {
- err = fmt.Errorf("PprofMemoryProfile1(), error: %w", err)
- log.Error(err)
- return err
- }
-
- return err
-}
-
-// PprofMemoryProfile1 - профилирование памяти отправляет в NATS 1 раз
-func PprofMemoryProfile1() error {
- var err error
-
- TextTest := TextTestOrEmpty()
- topicHeapProfile := serviceName + TextTest + TopicNamePprof_Heap_Suffix
- var buf bytes.Buffer
- err = pprof.WriteHeapProfile(&buf)
- if err != nil {
- err = fmt.Errorf("pprof.WriteHeapProfile(), topic: %v, error: %w", topicHeapProfile, err)
- log.Error(err)
- time.Sleep(10 * time.Second)
- return err
- }
- err = sync_exchange.SendRawMessage(topicHeapProfile, buf.Bytes())
- if err != nil {
- err = fmt.Errorf("sync_exchange.SendRawMessage(), topic: %v, error: %w", topicHeapProfile, err)
- log.Error(err)
- time.Sleep(10 * time.Second)
- return err
- }
-
- return err
-}
-
-// PprofGoroutines1 - профилирование горутин отправляет в NATS 1 раз
-func PprofGoroutines1() error {
- var err error
-
- TextTest := TextTestOrEmpty()
- topicHeapProfile := serviceName + TextTest + TopicNamePprof_Goroutine_Suffix
- var buf bytes.Buffer
- err = pprof.Lookup("goroutine").WriteTo(&buf, 2)
- if err != nil {
- err = fmt.Errorf("pprof.WriteHeapProfile(), topic: %v, error: %w", topicHeapProfile, err)
- log.Error(err)
- time.Sleep(10 * time.Second)
- return err
- }
- err = sync_exchange.SendRawMessage(topicHeapProfile, buf.Bytes())
- if err != nil {
- err = fmt.Errorf("sync_exchange.SendRawMessage(), topic: %v, error: %w", topicHeapProfile, err)
- log.Error(err)
- time.Sleep(10 * time.Second)
- return err
- }
-
- return err
-}
-
-// TextTestOrEmpty - возвращает "_test" или ""
-func TextTestOrEmpty() string {
- Otvet := "_test"
- stage := os.Getenv("STAGE")
- switch stage {
- case "dev":
- Otvet = ""
- case "prod":
- Otvet = ""
- }
-
- return Otvet
-}
diff --git a/sync_exchange_connect/sync_exchange_connect.zip b/sync_exchange_connect/sync_exchange_connect.zip
new file mode 100644
index 00000000..8643f11f
Binary files /dev/null and b/sync_exchange_connect/sync_exchange_connect.zip differ
diff --git a/sync_exchange_connect/sync_exchange_connect_test.go b/sync_exchange_connect/sync_exchange_connect_test.go
deleted file mode 100644
index 23f28369..00000000
--- a/sync_exchange_connect/sync_exchange_connect_test.go
+++ /dev/null
@@ -1,66 +0,0 @@
-package sync_exchange_connect
-
-import (
- "github.com/ManyakRus/starter/config_main"
- "github.com/ManyakRus/starter/contextmain"
- "github.com/ManyakRus/starter/micro"
- "github.com/ManyakRus/starter/pkg/version"
- "github.com/ManyakRus/starter/stopapp"
- "testing"
-)
-
-var SERVICE_NAME_TEST = "starter_test"
-
-func TestConnect(t *testing.T) {
- config_main.LoadEnv()
- Connect(SERVICE_NAME_TEST, version.Version)
- defer CloseConnection()
-
- micro.Pause(100)
-
-}
-
-func TestStartNats(t *testing.T) {
- config_main.LoadEnv()
- Start(SERVICE_NAME_TEST, version.Version)
- defer CloseConnection()
-
- micro.Pause(100)
-
- contextmain.CancelContext()
- contextmain.GetNewContext()
-}
-
-func TestCloseConnection(t *testing.T) {
- config_main.LoadEnv()
- Connect(SERVICE_NAME_TEST, version.Version)
- defer CloseConnection()
-}
-
-func TestWaitStop(t *testing.T) {
-
- stopapp.GetWaitGroup_Main().Add(1)
- go WaitStop()
-
- _ = contextmain.GetContext()
- contextmain.CancelContext()
-
- stopapp.GetWaitGroup_Main().Wait()
-
- contextmain.GetNewContext()
-}
-
-func TestPprofNats1(t *testing.T) {
- config_main.LoadEnvTest()
- Connect(SERVICE_NAME_TEST, version.Version)
- defer CloseConnection()
-
- PprofNats1()
-}
-
-func TestTextTestOrEmpty(t *testing.T) {
- Otvet := TextTestOrEmpty()
- if Otvet != "" && Otvet != "_test" {
- t.Errorf("TextTestOrEmpty() error: Otvet=%v", Otvet)
- }
-}
diff --git a/vendor/github.com/dromara/carbon/v2/README.cn.md b/vendor/github.com/dromara/carbon/v2/README.cn.md
index 112b9fe9..8e354907 100644
--- a/vendor/github.com/dromara/carbon/v2/README.cn.md
+++ b/vendor/github.com/dromara/carbon/v2/README.cn.md
@@ -13,11 +13,12 @@
## 项目简介
-`Carbon` 是一个轻量级、语义化、对开发者友好的 `golang` 时间处理库,不依赖于 `任何` 第三方库, `100%` 单元测试覆盖率,已被 [awesome-go](https://github.com/yinggaozhen/awesome-go-cn#日期和时间 "awesome-go-cn") 和 [hello-github](https://hellogithub.com/repository/dromara/carbon "hello-github") 收录,并获得
+`Carbon` 是一个轻量级、语义化、对开发者友好的 `golang` 时间处理库,不依赖于 `任何` 第三方库, `100%` 单元测试覆盖率,已被 [docker](https://github.com/docker/docker-language-server/blob/main/go.mod#L10 "docker") 组织使用以及被 [awesome-go](https://github.com/yinggaozhen/awesome-go-cn#日期和时间 "awesome-go-cn") 和 [hello-github](https://hellogithub.com/repository/dromara/carbon "hello-github") 收录,并获得
`gitee` 2024 年最有价值项目(`GVP`)和 `gitcode` 2024 年度开源摘星计划 (`G-Star`) 项目
-
-
+
+
+
## 仓库地址
@@ -31,7 +32,7 @@
### 安装使用
-> go version >= 1.18
+> go version >= 1.19
```go
// 使用 github 库
@@ -102,9 +103,12 @@ carbon.IsTestNow() // false
-[如何为 carbon 添加新的本地化语言支持](docs/CONTRIBUTING.cn.md)
-## 赞助
+## 翻译者
+欢迎帮助将 `Carbon` 翻译为更多本地化语言
+[如何为 carbon 添加新的本地化语言支持](https://carbon.go-pkg.com/zh/appendix/contribution-guide.html)
+
+## 赞助
`Carbon` 是一个非商业开源项目, 如果你想支持 `Carbon`,
你可以为开发者 [购买一杯咖啡](https://carbon.go-pkg.com/zh/sponsor.html)
diff --git a/vendor/github.com/dromara/carbon/v2/README.ja.md b/vendor/github.com/dromara/carbon/v2/README.ja.md
index f5846618..6a5a73e0 100644
--- a/vendor/github.com/dromara/carbon/v2/README.ja.md
+++ b/vendor/github.com/dromara/carbon/v2/README.ja.md
@@ -13,7 +13,9 @@
## イントロ
-`Carbon` は軽量、セマンティック、開発者に優しい `golang` 時間処理ライブラリ, `いかなる`第三者ライブラリにも依存せず、`100%`ユニットテストカバレッジ率は、[awesome-go](https://github.com/avelino/awesome-go#date-and-time "awesome-go") と [hello-github](https://hellogithub.com/en/repository/dromara/carbon "hello-github") 収録
+`Carbon` は軽量でセマンティックで開発者に優しい `golang` 時間処理ライブラリで、サードパーティ製ライブラリに依存せず、ユニットテストのカバー率は `100%` で、[docker](https://github.com/docker/docker-language-server/blob/main/go.mod#L10 "docker") に公式採用され、[awesome-go](https://github.com/yinggaozhen/awesome-go-cn#日期和时间 "awesome-go-cn") と [hello-github](https://hellogithub.com/repository/dromara/carbon "hello-github") にも収録されています。
+
+
## リポジトリ
@@ -26,7 +28,7 @@
## クイックスタート
### インストール
-> go version >= 1.18
+> go version >= 1.19
```go
// github から使う
@@ -39,13 +41,13 @@ import "gitee.com/dromara/carbon/v2"
// gitcode から使う
go get -u gitcode.com/dromara/carbon/v2
-import "gitcode.com/dromara/carbon/v2"
+import "gitcode.com/dromara/gitcode/v2"
```
`Carbon` は [dromara](https://dromara.org/ "dromara") 組織に寄付されたためリポジトリのURLが変更されました。以前のリポジトリ `golang-module/carbon` を使用している場合は`go.mod`で新しいリポジトリURLに変更するか下記コマンドを実行します
```go
-go mod edit -replace github.com/golang-module/carbon/v2=github.com/dromara/carbon/v2
+go mod edit -replace github.com/golang-module/carbon/v2 = github.com/dromara/carbon/v2
```
### 使い方と例
@@ -71,14 +73,14 @@ carbon.CreateFromDateTime(2020, 8, 5, 13, 14, 15).ToString() // 2020-08-05 13:14
carbon.CreateFromTimestamp(1596633255).ToString() // 2020-08-05 13:14:15 +0000 UTC
carbon.Parse("2020-07-05 13:14:15").DiffForHumans() // 1 month before
-carbon.Parse("2020-07-05 13:14:15").SetLocale("jp").DiffForHumans() // 1 ヶ月前
+carbon.Parse("2020-07-05 13:14:15").SetLocale("zh-CN").DiffForHumans() // 1 月前
carbon.ClearTestNow()
carbon.IsTestNow() // false
```
-詳細については 公式ドキュメント
+より多くの使用例については、公式ドキュメントをご覧ください。
-より多くの使用例については、公式ドキュメントをご覧ください。性能テストレポートについては、[分析レポート](docs/BENCHMARK.ja.md)をご参照ください
+性能テストレポートについては、[ベンチマークレポート](docs/BENCHMARK.ja.md)をご参照ください
## リファレンス
@@ -96,7 +98,10 @@ carbon.IsTestNow() // false
-[Carbon に新しいローカライズ言語サポートを追加する方法](docs/CONTRIBUTING.ja.md)
+## 翻訳者
+`Carbon` を他のローカライズ言語に翻訳してくださる方を募集しています
+
+[Carbon に新しいローカライズ言語サポートを追加する方法](https://carbon.go-pkg.com/ja/appendix/contribution-guide.html)
## スポンサー
diff --git a/vendor/github.com/dromara/carbon/v2/README.ko.md b/vendor/github.com/dromara/carbon/v2/README.ko.md
index e6090b42..4a9c2c33 100644
--- a/vendor/github.com/dromara/carbon/v2/README.ko.md
+++ b/vendor/github.com/dromara/carbon/v2/README.ko.md
@@ -9,11 +9,13 @@
[](https://hellogithub.com/en/repository/dromara/carbon)
[](https://github.com/dromara/carbon/blob/master/LICENSE)
-한국어 | [English](README.md) | [简体中文](README.zh.md) | [日本語](README.ja.md)
+한국어 | [English](README.md) | [简体中文](README.cn.md) | [日本語](README.ja.md)
## 소개
-`Carbon`은 `golang`을 위한 간단하고, 의미론적이며, 개발자 친화적인 시간 패키지입니다. `100%` 단위 테스트 커버리지를 제공하며, `어떤` 서드파티 패키지에도 의존하지 않으며, [awesome-go](https://github.com/avelino/awesome-go#date-and-time "awesome-go")와 [hello-github](https://hellogithub.com/en/repository/dromara/carbon "hello-github")에 포함되어 있습니다.
+`Carbon` 은 가벼우면서도 의미론적이고 개발자 친화적인 `golang` 시간 처리 라이브러리로, `어떤` 서드파티 라이브러리에도 의존하지 않으며, `100%` 단위 테스트 커버리지를 가지고 있으며, [docker](https://github.com/docker/docker-language-server/blob/main/go.mod#L10 "docker")에 공식적으로 사용되고 있고 [awesome-go](https://github.com/yinggaozhen/awesome-go-cn#日期和时间 "awesome-go-cn") 와 [hello-github](https://hellogithub.com/repository/dromara/carbon "hello-github")에도 수록되어 있습니다.
+
+
## 저장소
@@ -26,7 +28,7 @@
## 빠른 시작
### 설치
-> go version >= 1.18
+> go version >= 1.19
```go
// GitHub를 통해
@@ -39,7 +41,7 @@ import "gitee.com/dromara/carbon/v2"
// GitCode를 통해
go get -u gitcode.com/dromara/carbon/v2
-import "gitee.com/dromara/gitcode/v2"
+import "gitcode.com/dromara/gitcode/v2"
```
`Carbon`은 [dromara](https://dromara.org/ "dromara") 조직에 기부되었으며, 저장소 URL이 변경되었습니다. 이전에 사용하던 저장소가 `golang-module/carbon`이었다면, `go.mod`에서 원래 저장소를 새 저장소로 교체하거나 다음 명령을 실행하세요:
@@ -77,7 +79,9 @@ carbon.ClearTestNow()
carbon.IsTestNow() // false
```
-더 많은 사용 예시는 공식 문서를 참조하세요. 성능 테스트 보고서는 [분석 보고서](docs/BENCHMARK.ko.md)를 참조하세요.
+더 많은 사용 예시는 공식 문서를 참조하세요.
+
+성능 테스트 보고서는 [벤치마크 보고서](docs/BENCHMARK.ko.md)를 참조하세요.
## 참고 자료
@@ -95,7 +99,10 @@ carbon.IsTestNow() // false
-[Carbon에 새로운 로컬라이즈드 언어 지원을 추가하는 방법](docs/CONTRIBUTING.ko.md)
+## 번역자
+`Carbon` 을 더 많은 로컬라이즈드 언어로 번역하는 데 도움을 요청드립니다
+
+[Carbon에 새로운 로컬라이즈드 언어 지원을 추가하는 방법](https://carbon.go-pkg.com/ko/appendix/contribution-guide.html)
## 스폰서
diff --git a/vendor/github.com/dromara/carbon/v2/README.md b/vendor/github.com/dromara/carbon/v2/README.md
index 1f76c37b..8f5ecb04 100644
--- a/vendor/github.com/dromara/carbon/v2/README.md
+++ b/vendor/github.com/dromara/carbon/v2/README.md
@@ -13,7 +13,9 @@ English | [简体中文](README.cn.md) | [日本語](README.ja.md) | [한국어]
## Introduction
-`Carbon` is a simple, semantic and developer-friendly time package for `golang`, `100%` unit test coverage, doesn't depend on `any` third-party package and has been included by [awesome-go](https://github.com/avelino/awesome-go#date-and-time "awesome-go") and [hello-github](https://hellogithub.com/en/repository/dromara/carbon "hello-github")
+`Carbon` is a lightweight, semantic, and developer-friendly `golang` time package that doesn't depend on `any` third-party package, has `100%` unit test coverage, and has been used by [docker](https://github.com/docker/docker-language-server/blob/main/go.mod#L10 "docker") organization as well as included by [awesome-go](https://github.com/yinggaozhen/awesome-go-cn#日期和时间 "awesome-go-cn") and [hello-github](https://hellogithub.com/repository/dromara/carbon "hello-github").
+
+
## Repository
@@ -26,20 +28,20 @@ English | [简体中文](README.cn.md) | [日本語](README.ja.md) | [한국어]
## Quick Start
### Installation
-> go version >= 1.18
+> go version >= 1.19
```go
-// By github
+// Via github
go get -u github.com/dromara/carbon/v2
import "github.com/dromara/carbon/v2"
-// By gitee
+// Via gitee
go get -u gitee.com/dromara/carbon/v2
import "gitee.com/dromara/carbon/v2"
-// By gitcode
+// Via gitcode
go get -u gitcode.com/dromara/carbon/v2
-import "gitee.com/dromara/gitcode/v2"
+import "gitcode.com/dromara/gitcode/v2"
```
`Carbon` was donated to the [dromara](https://dromara.org/ "dromara") organization, the repository URL has changed. If
@@ -100,7 +102,10 @@ Thanks to all the following who contributed to `Carbon`:
-[How to add new localized language support to carbon](docs/CONTRIBUTING.en.md)
+## Translators
+Ask for help to translate `Carbon` in other localized languages
+
+[How to add new localized language support to carbon](https://carbon.go-pkg.com/appendix/contribution-guide.html)
## Sponsors
diff --git a/vendor/github.com/dromara/carbon/v2/constants.go b/vendor/github.com/dromara/carbon/v2/constants.go
index 11092784..aa5b9df7 100644
--- a/vendor/github.com/dromara/carbon/v2/constants.go
+++ b/vendor/github.com/dromara/carbon/v2/constants.go
@@ -5,7 +5,7 @@ import (
)
// Version current version
-const Version = "2.6.14"
+const Version = "2.6.15"
// timezone constants
const (
@@ -180,6 +180,7 @@ const (
RubyDateLayout = time.RubyDate
UnixDateLayout = time.UnixDate
W3cLayout = RFC3339Layout
+ HttpLayout = "Mon, 02 Jan 2006 15:04:05 GMT"
RFC1036Layout = "Mon, 02 Jan 06 15:04:05 -0700"
RFC1123Layout = time.RFC1123
@@ -250,6 +251,8 @@ const (
RssFormat = "D, d M Y H:i:s O"
RubyDateFormat = "D M d H:i:s O Y"
UnixDateFormat = "D M j H:i:s Z Y"
+ W3cFormat = RFC3339Format
+ HttpFormat = "D, d M Y H:i:s \\G\\M\\T"
RFC1036Format = "D, d M y H:i:s O"
RFC1123Format = "D, d M Y H:i:s Z"
diff --git a/vendor/github.com/dromara/carbon/v2/creator.go b/vendor/github.com/dromara/carbon/v2/creator.go
index 580b130d..b5663370 100644
--- a/vendor/github.com/dromara/carbon/v2/creator.go
+++ b/vendor/github.com/dromara/carbon/v2/creator.go
@@ -13,7 +13,7 @@ func CreateFromStdTime(stdTime StdTime, timezone ...string) *Carbon {
loc *Location
err error
)
- if loc, err = parseTimezone(timezone[0]); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
return NewCarbon(stdTime.In(loc))
@@ -22,16 +22,10 @@ func CreateFromStdTime(stdTime StdTime, timezone ...string) *Carbon {
// CreateFromTimestamp creates a Carbon instance from a given timestamp with second precision.
func CreateFromTimestamp(timestamp int64, timezone ...string) *Carbon {
var (
- tz string
loc *Location
err error
)
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- if loc, err = parseTimezone(tz); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
return NewCarbon(time.Unix(timestamp, MinNanosecond).In(loc))
@@ -40,16 +34,10 @@ func CreateFromTimestamp(timestamp int64, timezone ...string) *Carbon {
// CreateFromTimestampMilli creates a Carbon instance from a given timestamp with millisecond precision.
func CreateFromTimestampMilli(timestampMilli int64, timezone ...string) *Carbon {
var (
- tz string
loc *Location
err error
)
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- if loc, err = parseTimezone(tz); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
return NewCarbon(time.Unix(timestampMilli/1e3, (timestampMilli%1e3)*1e6).In(loc))
@@ -58,16 +46,10 @@ func CreateFromTimestampMilli(timestampMilli int64, timezone ...string) *Carbon
// CreateFromTimestampMicro creates a Carbon instance from a given timestamp with microsecond precision.
func CreateFromTimestampMicro(timestampMicro int64, timezone ...string) *Carbon {
var (
- tz string
loc *Location
err error
)
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- if loc, err = parseTimezone(tz); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
return NewCarbon(time.Unix(timestampMicro/1e6, (timestampMicro%1e6)*1e3).In(loc))
@@ -76,16 +58,10 @@ func CreateFromTimestampMicro(timestampMicro int64, timezone ...string) *Carbon
// CreateFromTimestampNano creates a Carbon instance from a given timestamp with nanosecond precision.
func CreateFromTimestampNano(timestampNano int64, timezone ...string) *Carbon {
var (
- tz string
loc *Location
err error
)
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- if loc, err = parseTimezone(tz); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
return NewCarbon(time.Unix(timestampNano/1e9, timestampNano%1e9).In(loc))
@@ -158,16 +134,10 @@ func CreateFromTimeNano(hour, minute, second, nanosecond int, timezone ...string
// creates a new Carbon instance from a given date, time and nanosecond.
func create(year, month, day, hour, minute, second, nanosecond int, timezone ...string) *Carbon {
var (
- tz string
loc *Location
err error
)
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- if loc, err = parseTimezone(tz); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
return NewCarbon(time.Date(year, time.Month(month), day, hour, minute, second, nanosecond, loc))
diff --git a/vendor/github.com/dromara/carbon/v2/difference.go b/vendor/github.com/dromara/carbon/v2/difference.go
index 1fa64693..2cc960fa 100644
--- a/vendor/github.com/dromara/carbon/v2/difference.go
+++ b/vendor/github.com/dromara/carbon/v2/difference.go
@@ -235,7 +235,15 @@ func (c *Carbon) DiffInDuration(carbon ...*Carbon) Duration {
// DiffAbsInDuration gets the difference in duration with absolute value.
func (c *Carbon) DiffAbsInDuration(carbon ...*Carbon) Duration {
- return c.DiffInDuration(carbon...).Abs()
+ d := c.DiffInDuration(carbon...)
+ switch {
+ case d >= 0:
+ return d
+ case d == minDuration:
+ return maxDuration
+ default:
+ return -d
+ }
}
// DiffForHumans gets the difference in a human-readable format, i18n is supported.
diff --git a/vendor/github.com/dromara/carbon/v2/helper.go b/vendor/github.com/dromara/carbon/v2/helper.go
index 16a00e20..94c4b427 100644
--- a/vendor/github.com/dromara/carbon/v2/helper.go
+++ b/vendor/github.com/dromara/carbon/v2/helper.go
@@ -131,24 +131,30 @@ func format2layout(format string) string {
// timezoneCache caches parsed timezone locations to avoid repeated parsing
var timezoneCache sync.Map
-// parses a timezone string as a time.Location instance.
-func parseTimezone(timezone string) (loc *Location, err error) {
- if timezone == "" {
+// parses timezone strings as a time.Location instance.
+func parseTimezone(timezone ...string) (loc *Location, err error) {
+ var tz string
+ if len(timezone) > 0 {
+ tz = timezone[0]
+ } else {
+ tz = DefaultTimezone
+ }
+ if tz == "" {
return nil, ErrEmptyTimezone()
}
// Check cache first
- if cached, exists := timezoneCache.Load(timezone); exists {
+ if cached, exists := timezoneCache.Load(tz); exists {
return cached.(*Location), nil
}
- if loc, err = time.LoadLocation(timezone); err != nil {
- err = fmt.Errorf("%w: %w", ErrInvalidTimezone(timezone), err)
+ if loc, err = time.LoadLocation(tz); err != nil {
+ err = fmt.Errorf("%w: %w", ErrInvalidTimezone(tz), err)
return
}
// Cache the successful result
- timezoneCache.Store(timezone, loc)
+ timezoneCache.Store(tz, loc)
return
}
diff --git a/vendor/github.com/dromara/carbon/v2/lang/af.json b/vendor/github.com/dromara/carbon/v2/lang/af.json
new file mode 100644
index 00000000..618e54e0
--- /dev/null
+++ b/vendor/github.com/dromara/carbon/v2/lang/af.json
@@ -0,0 +1,22 @@
+{
+ "name": "Afrikaans",
+ "author": "https://cursor.com/",
+ "months": "Januarie|Februarie|Maart|April|Mei|Junie|Julie|Augustus|September|Oktober|November|Desember",
+ "short_months": "Jan|Feb|Mrt|Apr|Mei|Jun|Jul|Aug|Sep|Okt|Nov|Des",
+ "weeks": "Sondag|Maandag|Dinsdag|Woensdag|Donderdag|Vrydag|Saterdag",
+ "short_weeks": "So|Ma|Di|Wo|Do|Vr|Sa",
+ "seasons": "Lente|Somer|Herfs|Winter",
+ "constellations": "Ram|Bul|Tweelinge|Kreef|Leeu|Maagd|Weegskaal|Skerpioen|Boogskutter|Steenbok|Waterdraer|Visse",
+ "year": "1 jaar|%d jare",
+ "month": "1 maand|%d maande",
+ "week": "1 week|%d weke",
+ "day": "1 dag|%d dae",
+ "hour": "1 uur|%d ure",
+ "minute": "1 minuut|%d minute",
+ "second": "1 sekonde|%d sekondes",
+ "now": "nou net",
+ "ago": "%s gelede",
+ "from_now": "%s van nou af",
+ "before": "%s voor",
+ "after": "%s na"
+}
diff --git a/vendor/github.com/dromara/carbon/v2/lang/mn.json b/vendor/github.com/dromara/carbon/v2/lang/mn.json
new file mode 100644
index 00000000..88022af3
--- /dev/null
+++ b/vendor/github.com/dromara/carbon/v2/lang/mn.json
@@ -0,0 +1,22 @@
+{
+ "name": "Mongolian",
+ "author": "https://cursor.com/",
+ "months": "Нэгдүгээр сар|Хоёрдугаар сар|Гуравдугаар сар|Дөрөвдүгээр сар|Тавдугаар сар|Зургадугаар сар|Долдугаар сар|Наймдугаар сар|Есдүгээр сар|Аравдугаар сар|Арван нэгдүгээр сар|Арван хоёрдугаар сар",
+ "short_months": "1-р сар|2-р сар|3-р сар|4-р сар|5-р сар|6-р сар|7-р сар|8-р сар|9-р сар|10-р сар|11-р сар|12-р сар",
+ "weeks": "Ням|Даваа|Мягмар|Лхагва|Пүрэв|Баасан|Бямба",
+ "short_weeks": "Ня|Да|Мя|Лх|Пү|Ба|Бя",
+ "seasons": "Хавар|Зун|Намар|Өвөл",
+ "constellations": "Хуч|Үхэр|Ихэр|Хавч|Арслан|Охин|Жин|Хилэнцэт|Нум|Матар|Хүмхэн|Загас",
+ "year": "%d жил",
+ "month": "%d сар",
+ "week": "%d долоо хоног",
+ "day": "%d өдөр",
+ "hour": "%d цаг",
+ "minute": "%d минут",
+ "second": "%d секунд",
+ "now": "яг одоо",
+ "ago": "%s өмнө",
+ "from_now": "%s дараа",
+ "before": "%s өмнө",
+ "after": "%s дараа"
+}
diff --git a/vendor/github.com/dromara/carbon/v2/lang/nb.json b/vendor/github.com/dromara/carbon/v2/lang/nb.json
index 0da803b8..9ec0ea5b 100644
--- a/vendor/github.com/dromara/carbon/v2/lang/nb.json
+++ b/vendor/github.com/dromara/carbon/v2/lang/nb.json
@@ -1,5 +1,5 @@
{
- "name": "Norsk bokmål",
+ "name": "Norwegian",
"author": "https://github.com/bendikrb ",
"months": "januar|februar|mars|april|mai|juni|juli|august|september|oktober|november|desember",
"short_months": "jan|feb|mar|apr|mai|jun|jul|aug|sep|okt|nov|des",
diff --git a/vendor/github.com/dromara/carbon/v2/lang/nl.json b/vendor/github.com/dromara/carbon/v2/lang/nl.json
index e9df4408..bde46306 100644
--- a/vendor/github.com/dromara/carbon/v2/lang/nl.json
+++ b/vendor/github.com/dromara/carbon/v2/lang/nl.json
@@ -3,7 +3,7 @@
"author": "https://github.com/RemcoE33",
"months": "januari|februari|maart|april|mei|juni|juli|augustus|september|oktober|november|december",
"short_months": "jan|feb|mrt|apr|mei|jun|jul|aug|sep|okt|nov|dec",
- "weeks": "Zondag|Maandag|Dinsdag|Woensdag|Donderdag|Vrijdag|Zaterdag|Zondag",
+ "weeks": "Zondag|Maandag|Dinsdag|Woensdag|Donderdag|Vrijdag|Zaterdag",
"short_weeks": "zo|ma|di|wo|do|vr|za",
"seasons": "Lente|Zomer|Herfst|Winter",
"constellations": "Ram|Stier|Tweelingen|Kreeft|Leeuw|Maagd|Weegschaal|Schorpioen|Boogschutter|Steenbok|Waterman|Vissen",
diff --git a/vendor/github.com/dromara/carbon/v2/outputer.go b/vendor/github.com/dromara/carbon/v2/outputer.go
index 4fa252f0..a09dfd67 100644
--- a/vendor/github.com/dromara/carbon/v2/outputer.go
+++ b/vendor/github.com/dromara/carbon/v2/outputer.go
@@ -18,7 +18,7 @@ func (c *Carbon) GoString() string {
// ToString outputs a string in "2006-01-02 15:04:05.999999999 -0700 MST" layout.
func (c *Carbon) ToString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -29,7 +29,7 @@ func (c *Carbon) ToString(timezone ...string) string {
// ToMonthString outputs a string in month layout like "January", i18n is supported.
func (c *Carbon) ToMonthString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -55,7 +55,7 @@ func (c *Carbon) ToMonthString(timezone ...string) string {
// ToShortMonthString outputs a string in short month layout like "Jan", i18n is supported.
func (c *Carbon) ToShortMonthString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -81,7 +81,7 @@ func (c *Carbon) ToShortMonthString(timezone ...string) string {
// ToWeekString outputs a string in week layout like "Sunday", i18n is supported.
func (c *Carbon) ToWeekString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -107,7 +107,7 @@ func (c *Carbon) ToWeekString(timezone ...string) string {
// ToShortWeekString outputs a string in short week layout like "Sun", i18n is supported.
func (c *Carbon) ToShortWeekString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -133,7 +133,7 @@ func (c *Carbon) ToShortWeekString(timezone ...string) string {
// ToDayDateTimeString outputs a string in "Mon, Jan 2, 2006 3:04 PM" layout.
func (c *Carbon) ToDayDateTimeString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -144,7 +144,7 @@ func (c *Carbon) ToDayDateTimeString(timezone ...string) string {
// ToDateTimeString outputs a string in "2006-01-02 15:04:05" layout.
func (c *Carbon) ToDateTimeString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -155,7 +155,7 @@ func (c *Carbon) ToDateTimeString(timezone ...string) string {
// ToDateTimeMilliString outputs a string in "2006-01-02 15:04:05.999" layout.
func (c *Carbon) ToDateTimeMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -166,7 +166,7 @@ func (c *Carbon) ToDateTimeMilliString(timezone ...string) string {
// ToDateTimeMicroString outputs a string in "2006-01-02 15:04:05.999999" layout.
func (c *Carbon) ToDateTimeMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -177,7 +177,7 @@ func (c *Carbon) ToDateTimeMicroString(timezone ...string) string {
// ToDateTimeNanoString outputs a string in "2006-01-02 15:04:05.999999999" layout.
func (c *Carbon) ToDateTimeNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -188,7 +188,7 @@ func (c *Carbon) ToDateTimeNanoString(timezone ...string) string {
// ToShortDateTimeString outputs a string in "20060102150405" layout.
func (c *Carbon) ToShortDateTimeString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -200,7 +200,7 @@ func (c *Carbon) ToShortDateTimeString(timezone ...string) string {
// 输出 "20060102150405.999" 格式字符串
func (c *Carbon) ToShortDateTimeMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -211,7 +211,7 @@ func (c *Carbon) ToShortDateTimeMilliString(timezone ...string) string {
// ToShortDateTimeMicroString outputs a string in "20060102150405.999999" layout.
func (c *Carbon) ToShortDateTimeMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -222,7 +222,7 @@ func (c *Carbon) ToShortDateTimeMicroString(timezone ...string) string {
// ToShortDateTimeNanoString outputs a string in "20060102150405.999999999" layout.
func (c *Carbon) ToShortDateTimeNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -233,7 +233,7 @@ func (c *Carbon) ToShortDateTimeNanoString(timezone ...string) string {
// ToDateString outputs a string in "2006-01-02" layout.
func (c *Carbon) ToDateString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -244,7 +244,7 @@ func (c *Carbon) ToDateString(timezone ...string) string {
// ToDateMilliString outputs a string in "2006-01-02.999" layout.
func (c *Carbon) ToDateMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -255,7 +255,7 @@ func (c *Carbon) ToDateMilliString(timezone ...string) string {
// ToDateMicroString outputs a string in "2006-01-02.999999" layout.
func (c *Carbon) ToDateMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -266,7 +266,7 @@ func (c *Carbon) ToDateMicroString(timezone ...string) string {
// ToDateNanoString outputs a string in "2006-01-02.999999999" layout.
func (c *Carbon) ToDateNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -277,7 +277,7 @@ func (c *Carbon) ToDateNanoString(timezone ...string) string {
// ToShortDateString outputs a string in "20060102" layout.
func (c *Carbon) ToShortDateString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -288,7 +288,7 @@ func (c *Carbon) ToShortDateString(timezone ...string) string {
// ToShortDateMilliString outputs a string in "20060102.999" layout.
func (c *Carbon) ToShortDateMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -299,7 +299,7 @@ func (c *Carbon) ToShortDateMilliString(timezone ...string) string {
// ToShortDateMicroString outputs a string in "20060102.999999" layout.
func (c *Carbon) ToShortDateMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -310,7 +310,7 @@ func (c *Carbon) ToShortDateMicroString(timezone ...string) string {
// ToShortDateNanoString outputs a string in "20060102.999999999" layout.
func (c *Carbon) ToShortDateNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -321,7 +321,7 @@ func (c *Carbon) ToShortDateNanoString(timezone ...string) string {
// ToTimeString outputs a string in "15:04:05" layout.
func (c *Carbon) ToTimeString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -332,7 +332,7 @@ func (c *Carbon) ToTimeString(timezone ...string) string {
// ToTimeMilliString outputs a string in "15:04:05.999" layout.
func (c *Carbon) ToTimeMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -343,7 +343,7 @@ func (c *Carbon) ToTimeMilliString(timezone ...string) string {
// ToTimeMicroString outputs a string in "15:04:05.999999" layout.
func (c *Carbon) ToTimeMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -354,7 +354,7 @@ func (c *Carbon) ToTimeMicroString(timezone ...string) string {
// ToTimeNanoString outputs a string in "15:04:05.999999999" layout.
func (c *Carbon) ToTimeNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -365,7 +365,7 @@ func (c *Carbon) ToTimeNanoString(timezone ...string) string {
// ToShortTimeString outputs a string in "150405" layout.
func (c *Carbon) ToShortTimeString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -376,7 +376,7 @@ func (c *Carbon) ToShortTimeString(timezone ...string) string {
// ToShortTimeMilliString outputs a string in "150405.999" layout.
func (c *Carbon) ToShortTimeMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -387,7 +387,7 @@ func (c *Carbon) ToShortTimeMilliString(timezone ...string) string {
// ToShortTimeMicroString outputs a string in "150405.999999" layout.
func (c *Carbon) ToShortTimeMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -398,7 +398,7 @@ func (c *Carbon) ToShortTimeMicroString(timezone ...string) string {
// ToShortTimeNanoString outputs a string in "150405.999999999" layout.
func (c *Carbon) ToShortTimeNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -409,7 +409,7 @@ func (c *Carbon) ToShortTimeNanoString(timezone ...string) string {
// ToAtomString outputs a string in "2006-01-02T15:04:05Z07:00" layout.
func (c *Carbon) ToAtomString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -420,7 +420,7 @@ func (c *Carbon) ToAtomString(timezone ...string) string {
// ToAnsicString outputs a string in "Mon Jan _2 15:04:05 2006" layout.
func (c *Carbon) ToAnsicString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -431,7 +431,7 @@ func (c *Carbon) ToAnsicString(timezone ...string) string {
// ToCookieString outputs a string in "Monday, 02-Jan-2006 15:04:05 MST" layout.
func (c *Carbon) ToCookieString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -442,7 +442,7 @@ func (c *Carbon) ToCookieString(timezone ...string) string {
// ToRssString outputs a string in "Mon, 02 Jan 2006 15:04:05 -0700" format.
func (c *Carbon) ToRssString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -453,7 +453,7 @@ func (c *Carbon) ToRssString(timezone ...string) string {
// ToW3cString outputs a string in "2006-01-02T15:04:05Z07:00" layout.
func (c *Carbon) ToW3cString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -464,7 +464,7 @@ func (c *Carbon) ToW3cString(timezone ...string) string {
// ToUnixDateString outputs a string in "Mon Jan _2 15:04:05 MST 2006" layout.
func (c *Carbon) ToUnixDateString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -475,7 +475,7 @@ func (c *Carbon) ToUnixDateString(timezone ...string) string {
// ToRubyDateString outputs a string in "Mon Jan 02 15:04:05 -0700 2006" layout.
func (c *Carbon) ToRubyDateString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -486,7 +486,7 @@ func (c *Carbon) ToRubyDateString(timezone ...string) string {
// ToKitchenString outputs a string in "3:04PM" layout.
func (c *Carbon) ToKitchenString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -494,10 +494,21 @@ func (c *Carbon) ToKitchenString(timezone ...string) string {
return c.StdTime().Format(KitchenLayout)
}
+// ToHttpString outputs a string in "Mon, 02 Jan 2006 15:04:05 GMT" layout.
+func (c *Carbon) ToHttpString(timezone ...string) string {
+ if len(timezone) > 0 {
+ c.loc, c.Error = parseTimezone(timezone...)
+ }
+ if c.IsInvalid() {
+ return ""
+ }
+ return c.StdTime().Format(HttpLayout)
+}
+
// ToIso8601String outputs a string in "2006-01-02T15:04:05-07:00" layout.
func (c *Carbon) ToIso8601String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -508,7 +519,7 @@ func (c *Carbon) ToIso8601String(timezone ...string) string {
// ToIso8601MilliString outputs a string in "2006-01-02T15:04:05.999-07:00" layout.
func (c *Carbon) ToIso8601MilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -519,7 +530,7 @@ func (c *Carbon) ToIso8601MilliString(timezone ...string) string {
// ToIso8601MicroString outputs a string in "2006-01-02T15:04:05.999999-07:00" layout.
func (c *Carbon) ToIso8601MicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -530,7 +541,7 @@ func (c *Carbon) ToIso8601MicroString(timezone ...string) string {
// ToIso8601NanoString outputs a string in "2006-01-02T15:04:05.999999999-07:00" layout.
func (c *Carbon) ToIso8601NanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -541,7 +552,7 @@ func (c *Carbon) ToIso8601NanoString(timezone ...string) string {
// ToIso8601ZuluString outputs a string in "2006-01-02T15:04:05Z" layout.
func (c *Carbon) ToIso8601ZuluString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -552,7 +563,7 @@ func (c *Carbon) ToIso8601ZuluString(timezone ...string) string {
// ToIso8601ZuluMilliString outputs a string in "2006-01-02T15:04:05.999Z" layout.
func (c *Carbon) ToIso8601ZuluMilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -563,7 +574,7 @@ func (c *Carbon) ToIso8601ZuluMilliString(timezone ...string) string {
// ToIso8601ZuluMicroString outputs a string in "2006-01-02T15:04:05.999999Z" layout.
func (c *Carbon) ToIso8601ZuluMicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -574,7 +585,7 @@ func (c *Carbon) ToIso8601ZuluMicroString(timezone ...string) string {
// ToIso8601ZuluNanoString outputs a string in "2006-01-02T15:04:05.999999999Z" layout.
func (c *Carbon) ToIso8601ZuluNanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -585,7 +596,7 @@ func (c *Carbon) ToIso8601ZuluNanoString(timezone ...string) string {
// ToRfc822String outputs a string in "02 Jan 06 15:04 MST" layout.
func (c *Carbon) ToRfc822String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -596,7 +607,7 @@ func (c *Carbon) ToRfc822String(timezone ...string) string {
// ToRfc822zString outputs a string in "02 Jan 06 15:04 -0700" layout.
func (c *Carbon) ToRfc822zString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -607,7 +618,7 @@ func (c *Carbon) ToRfc822zString(timezone ...string) string {
// ToRfc850String outputs a string in "Monday, 02-Jan-06 15:04:05 MST" layout.
func (c *Carbon) ToRfc850String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -618,7 +629,7 @@ func (c *Carbon) ToRfc850String(timezone ...string) string {
// ToRfc1036String outputs a string in "Mon, 02 Jan 06 15:04:05 -0700" layout.
func (c *Carbon) ToRfc1036String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -629,7 +640,7 @@ func (c *Carbon) ToRfc1036String(timezone ...string) string {
// ToRfc1123String outputs a string in "Mon, 02 Jan 2006 15:04:05 MST" layout.
func (c *Carbon) ToRfc1123String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -640,7 +651,7 @@ func (c *Carbon) ToRfc1123String(timezone ...string) string {
// ToRfc1123zString outputs a string in "Mon, 02 Jan 2006 15:04:05 -0700" layout.
func (c *Carbon) ToRfc1123zString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -651,7 +662,7 @@ func (c *Carbon) ToRfc1123zString(timezone ...string) string {
// ToRfc2822String outputs a string in "Mon, 02 Jan 2006 15:04:05 -0700" layout.
func (c *Carbon) ToRfc2822String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -662,7 +673,7 @@ func (c *Carbon) ToRfc2822String(timezone ...string) string {
// ToRfc3339String outputs a string in "2006-01-02T15:04:05Z07:00" layout.
func (c *Carbon) ToRfc3339String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -673,7 +684,7 @@ func (c *Carbon) ToRfc3339String(timezone ...string) string {
// ToRfc3339MilliString outputs a string in "2006-01-02T15:04:05.999Z07:00" layout.
func (c *Carbon) ToRfc3339MilliString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -684,7 +695,7 @@ func (c *Carbon) ToRfc3339MilliString(timezone ...string) string {
// ToRfc3339MicroString outputs a string in "2006-01-02T15:04:05.999999Z07:00" layout.
func (c *Carbon) ToRfc3339MicroString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -695,7 +706,7 @@ func (c *Carbon) ToRfc3339MicroString(timezone ...string) string {
// ToRfc3339NanoString outputs a string in "2006-01-02T15:04:05.999999999Z07:00" layout.
func (c *Carbon) ToRfc3339NanoString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -706,7 +717,7 @@ func (c *Carbon) ToRfc3339NanoString(timezone ...string) string {
// ToRfc7231String outputs a string in "Mon, 02 Jan 2006 15:04:05 GMT" layout.
func (c *Carbon) ToRfc7231String(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -717,7 +728,7 @@ func (c *Carbon) ToRfc7231String(timezone ...string) string {
// ToFormattedDateString outputs a string in "Jan 2, 2006" layout.
func (c *Carbon) ToFormattedDateString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -728,7 +739,7 @@ func (c *Carbon) ToFormattedDateString(timezone ...string) string {
// ToFormattedDayDateString outputs a string in "Mon, Jan 2, 2006" layout.
func (c *Carbon) ToFormattedDayDateString(timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -739,7 +750,7 @@ func (c *Carbon) ToFormattedDayDateString(timezone ...string) string {
// Layout outputs a string by layout.
func (c *Carbon) Layout(layout string, timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
@@ -760,7 +771,7 @@ func (c *Carbon) Layout(layout string, timezone ...string) string {
// Format outputs a string by format.
func (c *Carbon) Format(format string, timezone ...string) string {
if len(timezone) > 0 {
- c.loc, c.Error = parseTimezone(timezone[0])
+ c.loc, c.Error = parseTimezone(timezone...)
}
if c.IsInvalid() {
return ""
diff --git a/vendor/github.com/dromara/carbon/v2/parser.go b/vendor/github.com/dromara/carbon/v2/parser.go
index 6b799db9..57306f23 100644
--- a/vendor/github.com/dromara/carbon/v2/parser.go
+++ b/vendor/github.com/dromara/carbon/v2/parser.go
@@ -12,7 +12,7 @@ func Parse(value string, timezone ...string) *Carbon {
if value == "" {
return &Carbon{isEmpty: true}
}
- loc, err := getLocation(timezone...)
+ loc, err := parseTimezone(timezone...)
if err != nil {
return &Carbon{Error: err}
}
@@ -49,7 +49,7 @@ func ParseByLayout(value, layout string, timezone ...string) *Carbon {
return &Carbon{Error: ErrEmptyLayout()}
}
- loc, err := getLocation(timezone...)
+ loc, err := parseTimezone(timezone...)
if err != nil {
return &Carbon{Error: err}
}
@@ -76,7 +76,7 @@ func ParseByFormat(value, format string, timezone ...string) *Carbon {
if format == "" {
return &Carbon{Error: ErrEmptyFormat()}
}
- loc, err := getLocation(timezone...)
+ loc, err := parseTimezone(timezone...)
if err != nil {
return &Carbon{Error: err}
}
@@ -105,7 +105,7 @@ func ParseByLayouts(value string, layouts []string, timezone ...string) *Carbon
return &Carbon{Error: ErrEmptyLayout()}
}
- loc, err := getLocation(timezone...)
+ loc, err := parseTimezone(timezone...)
if err != nil {
return &Carbon{Error: err}
}
@@ -133,7 +133,7 @@ func ParseByFormats(value string, formats []string, timezone ...string) *Carbon
return &Carbon{Error: ErrEmptyFormat()}
}
- loc, err := getLocation(timezone...)
+ loc, err := parseTimezone(timezone...)
if err != nil {
return &Carbon{Error: err}
}
@@ -150,14 +150,3 @@ func ParseByFormats(value string, formats []string, timezone ...string) *Carbon
c.Error = ErrFailedParse(value)
return c
}
-
-// getLocation parses and returns location from timezone parameter with fallback to default.
-func getLocation(timezone ...string) (*Location, error) {
- var tz string
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- return parseTimezone(tz)
-}
diff --git a/vendor/github.com/dromara/carbon/v2/traveler.go b/vendor/github.com/dromara/carbon/v2/traveler.go
index 7f9c6cfe..c36a266b 100644
--- a/vendor/github.com/dromara/carbon/v2/traveler.go
+++ b/vendor/github.com/dromara/carbon/v2/traveler.go
@@ -7,16 +7,10 @@ import (
// Now returns a Carbon instance for now.
func Now(timezone ...string) *Carbon {
var (
- tz string
loc *Location
err error
)
- if len(timezone) > 0 {
- tz = timezone[0]
- } else {
- tz = DefaultTimezone
- }
- if loc, err = parseTimezone(tz); err != nil {
+ if loc, err = parseTimezone(timezone...); err != nil {
return &Carbon{Error: err}
}
if IsTestNow() {
diff --git a/vendor/github.com/dromara/carbon/v2/interfaces.go b/vendor/github.com/dromara/carbon/v2/type_interface.go
similarity index 100%
rename from vendor/github.com/dromara/carbon/v2/interfaces.go
rename to vendor/github.com/dromara/carbon/v2/type_interface.go
diff --git a/vendor/github.com/getsentry/sentry-go/.codecov.yml b/vendor/github.com/getsentry/sentry-go/.codecov.yml
index 557e1aa1..0acb2e27 100644
--- a/vendor/github.com/getsentry/sentry-go/.codecov.yml
+++ b/vendor/github.com/getsentry/sentry-go/.codecov.yml
@@ -11,5 +11,8 @@ coverage:
default:
# Do not fail the commit status if the coverage was reduced up to this value
threshold: 0.5%
+ patch:
+ default:
+ informational: true
ignore:
- "log_fallback.go"
diff --git a/vendor/github.com/getsentry/sentry-go/CHANGELOG.md b/vendor/github.com/getsentry/sentry-go/CHANGELOG.md
index d8beaa05..9e811615 100644
--- a/vendor/github.com/getsentry/sentry-go/CHANGELOG.md
+++ b/vendor/github.com/getsentry/sentry-go/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## Unreleased Changes
+
+### Breaking Changes
+
+## 0.37.0
+
+The Sentry SDK team is happy to announce the immediate availability of Sentry Go SDK v0.37.0.
+
+### Breaking Changes
+
+- Behavioral change for the `TraceIgnoreStatusCodes` option. The option now defaults to ignoring 404 status codes ([#1122](https://github.com/getsentry/sentry-go/pull/1122)).
+
+### Features
+
+- Add `sentry.origin` attribute to structured logs to identify log origin for `slog` and `logrus` integrations (`auto.log.slog`, `auto.log.logrus`) ([#1121](https://github.com/getsentry/sentry-go/pull/1121)).
+
+### Bug Fixes
+
+- Fix `slog` event handler to use the initial context, ensuring events use the correct hub/span when the emission context lacks one ([#1133](https://github.com/getsentry/sentry-go/pull/1133)).
+- Improve exception chain processing by checking pointer values when tracking visited errors, avoiding instability for certain wrapped errors ([#1132](https://github.com/getsentry/sentry-go/pull/1132)).
+
+### Misc
+
+- Bump `golang.org/x/net` to v0.38.0 ([#1126](https://github.com/getsentry/sentry-go/pull/1126)).
+
## 0.36.2
The Sentry SDK team is happy to announce the immediate availability of Sentry Go SDK v0.36.2.
diff --git a/vendor/github.com/getsentry/sentry-go/Makefile b/vendor/github.com/getsentry/sentry-go/Makefile
index 26d993e9..6b98f509 100644
--- a/vendor/github.com/getsentry/sentry-go/Makefile
+++ b/vendor/github.com/getsentry/sentry-go/Makefile
@@ -70,7 +70,7 @@ mod-tidy: ## Check go.mod tidiness
set -e ; \
for dir in $(ALL_GO_MOD_DIRS); do \
echo ">>> Running 'go mod tidy' for module: $${dir}"; \
- (cd "$${dir}" && go mod tidy -go=1.23 -compat=1.23); \
+ (cd "$${dir}" && GOTOOLCHAIN=local go mod tidy -go=1.23.0 -compat=1.23); \
done; \
git diff --exit-code;
.PHONY: mod-tidy
diff --git a/vendor/github.com/getsentry/sentry-go/README.md b/vendor/github.com/getsentry/sentry-go/README.md
index 59a989d8..1941fa06 100644
--- a/vendor/github.com/getsentry/sentry-go/README.md
+++ b/vendor/github.com/getsentry/sentry-go/README.md
@@ -13,6 +13,7 @@
[](https://github.com/getsentry/sentry-go/actions/workflows/test.yml)
[](https://goreportcard.com/report/github.com/getsentry/sentry-go)
[](https://discord.gg/Ww9hbqr)
+[](https://x.com/intent/follow?screen_name=sentry)
[](https://pkg.go.dev/github.com/getsentry/sentry-go)
`sentry-go` provides a Sentry client implementation for the Go programming
diff --git a/vendor/github.com/getsentry/sentry-go/client.go b/vendor/github.com/getsentry/sentry-go/client.go
index 34623022..03800f81 100644
--- a/vendor/github.com/getsentry/sentry-go/client.go
+++ b/vendor/github.com/getsentry/sentry-go/client.go
@@ -247,7 +247,10 @@ type ClientOptions struct {
// [][]int{{404}, {500}} // ignore status codes 404 and 500
// [][]int{{404}, {400, 405}, {500, 599}} // ignore 404, range 400-405, and range 500-599
//
- // By default, this is empty and all status codes are traced.
+ // By default, this ignores 404 status codes.
+ //
+ // IMPORTANT: to not ignore any status codes, the option should be an empty slice and not nil. The nil option is
+ // used for defaulting to 404 ignores.
TraceIgnoreStatusCodes [][]int
}
@@ -325,6 +328,10 @@ func NewClient(options ClientOptions) (*Client, error) {
options.MaxSpans = defaultMaxSpans
}
+ if options.TraceIgnoreStatusCodes == nil {
+ options.TraceIgnoreStatusCodes = [][]int{{404}}
+ }
+
// SENTRYGODEBUG is a comma-separated list of key=value pairs (similar
// to GODEBUG). It is not a supported feature: recognized debug options
// may change any time.
diff --git a/vendor/github.com/getsentry/sentry-go/exception.go b/vendor/github.com/getsentry/sentry-go/exception.go
index 9505c990..f7ef4a00 100644
--- a/vendor/github.com/getsentry/sentry-go/exception.go
+++ b/vendor/github.com/getsentry/sentry-go/exception.go
@@ -14,21 +14,18 @@ const (
)
type visited struct {
- comparable map[error]struct{}
- msgs map[string]struct{}
+ ptrs map[uintptr]struct{}
+ msgs map[string]struct{}
}
func (v *visited) seenError(err error) bool {
- t := reflect.TypeOf(err)
- if t == nil {
- return false
- }
-
- if t.Comparable() {
- if _, ok := v.comparable[err]; ok {
+ t := reflect.ValueOf(err)
+ if t.Kind() == reflect.Ptr && !t.IsNil() {
+ ptr := t.Pointer()
+ if _, ok := v.ptrs[ptr]; ok {
return true
}
- v.comparable[err] = struct{}{}
+ v.ptrs[ptr] = struct{}{}
return false
}
@@ -43,8 +40,8 @@ func (v *visited) seenError(err error) bool {
func convertErrorToExceptions(err error, maxErrorDepth int) []Exception {
var exceptions []Exception
vis := &visited{
- make(map[error]struct{}),
- make(map[string]struct{}),
+ ptrs: make(map[uintptr]struct{}),
+ msgs: make(map[string]struct{}),
}
convertErrorDFS(err, &exceptions, nil, "", vis, maxErrorDepth, 0)
diff --git a/vendor/github.com/getsentry/sentry-go/sentry.go b/vendor/github.com/getsentry/sentry-go/sentry.go
index b349944f..9f17cbc5 100644
--- a/vendor/github.com/getsentry/sentry-go/sentry.go
+++ b/vendor/github.com/getsentry/sentry-go/sentry.go
@@ -6,7 +6,7 @@ import (
)
// The version of the SDK.
-const SDKVersion = "0.36.2"
+const SDKVersion = "0.37.0"
// apiVersion is the minimum version of the Sentry API compatible with the
// sentry-go SDK.
diff --git a/vendor/github.com/gotd/td/telegram/auth/qrlogin/qrlogin.go b/vendor/github.com/gotd/td/telegram/auth/qrlogin/qrlogin.go
index e306f3ee..09e1c992 100644
--- a/vendor/github.com/gotd/td/telegram/auth/qrlogin/qrlogin.go
+++ b/vendor/github.com/gotd/td/telegram/auth/qrlogin/qrlogin.go
@@ -47,11 +47,21 @@ func (q QR) Export(ctx context.Context, exceptIDs ...int64) (Token, error) {
return Token{}, errors.Wrap(err, "export")
}
- t, ok := result.(*tg.AuthLoginToken)
- if !ok {
+ switch t := result.(type) {
+ case *tg.AuthLoginToken:
+ return NewToken(t.Token, t.Expires), nil
+ case *tg.AuthLoginTokenSuccess:
+ // Token was already accepted, authentication successful
+ // Return empty token since no new token is needed
+ return Token{}, nil
+ case *tg.AuthLoginTokenMigrateTo:
+ // Migration needed
+ return Token{}, &MigrationNeededError{
+ MigrateTo: t,
+ }
+ default:
return Token{}, errors.Errorf("unexpected type %T", result)
}
- return NewToken(t.Token, t.Expires), nil
}
// Accept accepts given token.
@@ -147,6 +157,18 @@ func (q QR) Auth(
if err != nil {
return nil, err
}
+
+ // If token is empty, it means AuthLoginTokenSuccess was returned
+ // and authentication is already complete, but we should wait for the signal.
+ if token.Empty() {
+ select {
+ case <-ctx.Done():
+ return nil, ctx.Err()
+ case <-loggedIn:
+ return q.Import(ctx)
+ }
+ }
+
timer := q.clock.Timer(until(token))
defer clock.StopTimer(timer)
@@ -163,6 +185,13 @@ func (q QR) Auth(
if err != nil {
return nil, err
}
+
+ if t.Empty() {
+ // If empty token, it means AuthLoginTokenSuccess was returned.
+ // QR was scanned and accepted, break to import.
+ break
+ }
+
token = t
timer.Reset(until(token))
diff --git a/vendor/github.com/gotd/td/telegram/auth/qrlogin/token.go b/vendor/github.com/gotd/td/telegram/auth/qrlogin/token.go
index 0107526f..f79b4af9 100644
--- a/vendor/github.com/gotd/td/telegram/auth/qrlogin/token.go
+++ b/vendor/github.com/gotd/td/telegram/auth/qrlogin/token.go
@@ -59,6 +59,11 @@ func (t Token) String() string {
return base64.URLEncoding.EncodeToString(t.token)
}
+// Empty reports whether token is empty.
+func (t Token) Empty() bool {
+ return len(t.token) == 0
+}
+
// URL returns login URL.
//
// See https://core.telegram.org/api/qr-login#exporting-a-login-token.
diff --git a/vendor/github.com/microsoft/go-mssqldb/mssql.go b/vendor/github.com/microsoft/go-mssqldb/mssql.go
index eae193eb..42714da3 100644
--- a/vendor/github.com/microsoft/go-mssqldb/mssql.go
+++ b/vendor/github.com/microsoft/go-mssqldb/mssql.go
@@ -292,8 +292,9 @@ func (c *Conn) clearOuts() {
c.outs = outputs{}
}
-func (c *Conn) simpleProcessResp(ctx context.Context) error {
+func (c *Conn) simpleProcessResp(ctx context.Context, isRollback bool) error {
reader := startReading(c.sess, ctx, c.outs)
+ reader.noAttn = isRollback
c.clearOuts()
var resultError error
@@ -311,7 +312,7 @@ func (c *Conn) Commit() error {
if err := c.sendCommitRequest(); err != nil {
return c.checkBadConn(c.transactionCtx, err, true)
}
- return c.simpleProcessResp(c.transactionCtx)
+ return c.simpleProcessResp(c.transactionCtx, false)
}
func (c *Conn) sendCommitRequest() error {
@@ -336,7 +337,7 @@ func (c *Conn) Rollback() error {
if err := c.sendRollbackRequest(); err != nil {
return c.checkBadConn(c.transactionCtx, err, true)
}
- return c.simpleProcessResp(c.transactionCtx)
+ return c.simpleProcessResp(c.transactionCtx, true)
}
func (c *Conn) sendRollbackRequest() error {
@@ -390,7 +391,7 @@ func (c *Conn) sendBeginRequest(ctx context.Context, tdsIsolation isoLevel) erro
}
func (c *Conn) processBeginResponse(ctx context.Context) (driver.Tx, error) {
- if err := c.simpleProcessResp(ctx); err != nil {
+ if err := c.simpleProcessResp(ctx, false); err != nil {
return nil, err
}
// successful BEGINXACT request will return sess.tranid
diff --git a/vendor/github.com/microsoft/go-mssqldb/version.go b/vendor/github.com/microsoft/go-mssqldb/version.go
index ee43245e..19f8b16c 100644
--- a/vendor/github.com/microsoft/go-mssqldb/version.go
+++ b/vendor/github.com/microsoft/go-mssqldb/version.go
@@ -4,7 +4,7 @@ import "fmt"
// Update this variable with the release tag before pushing the tag
// This value is written to the prelogin and login7 packets during a new connection
-const driverVersion = "v1.9.3"
+const driverVersion = "v1.9.4"
func getDriverVersion(ver string) uint32 {
var majorVersion uint32
diff --git a/vendor/github.com/syndtr/goleveldb/LICENSE b/vendor/github.com/syndtr/goleveldb/LICENSE
deleted file mode 100644
index 4a772d1a..00000000
--- a/vendor/github.com/syndtr/goleveldb/LICENSE
+++ /dev/null
@@ -1,24 +0,0 @@
-Copyright 2012 Suryandaru Triandana
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- * Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
-notice, this list of conditions and the following disclaimer in the
-documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/batch.go b/vendor/github.com/syndtr/goleveldb/leveldb/batch.go
deleted file mode 100644
index 22592000..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/batch.go
+++ /dev/null
@@ -1,349 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "encoding/binary"
- "fmt"
- "io"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/memdb"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-// ErrBatchCorrupted records reason of batch corruption. This error will be
-// wrapped with errors.ErrCorrupted.
-type ErrBatchCorrupted struct {
- Reason string
-}
-
-func (e *ErrBatchCorrupted) Error() string {
- return fmt.Sprintf("leveldb: batch corrupted: %s", e.Reason)
-}
-
-func newErrBatchCorrupted(reason string) error {
- return errors.NewErrCorrupted(storage.FileDesc{}, &ErrBatchCorrupted{reason})
-}
-
-const (
- batchHeaderLen = 8 + 4
- batchGrowRec = 3000
- batchBufioSize = 16
-)
-
-// BatchReplay wraps basic batch operations.
-type BatchReplay interface {
- Put(key, value []byte)
- Delete(key []byte)
-}
-
-type batchIndex struct {
- keyType keyType
- keyPos, keyLen int
- valuePos, valueLen int
-}
-
-func (index batchIndex) k(data []byte) []byte {
- return data[index.keyPos : index.keyPos+index.keyLen]
-}
-
-func (index batchIndex) v(data []byte) []byte {
- if index.valueLen != 0 {
- return data[index.valuePos : index.valuePos+index.valueLen]
- }
- return nil
-}
-
-func (index batchIndex) kv(data []byte) (key, value []byte) {
- return index.k(data), index.v(data)
-}
-
-// Batch is a write batch.
-type Batch struct {
- data []byte
- index []batchIndex
-
- // internalLen is sums of key/value pair length plus 8-bytes internal key.
- internalLen int
-}
-
-func (b *Batch) grow(n int) {
- o := len(b.data)
- if cap(b.data)-o < n {
- div := 1
- if len(b.index) > batchGrowRec {
- div = len(b.index) / batchGrowRec
- }
- ndata := make([]byte, o, o+n+o/div)
- copy(ndata, b.data)
- b.data = ndata
- }
-}
-
-func (b *Batch) appendRec(kt keyType, key, value []byte) {
- n := 1 + binary.MaxVarintLen32 + len(key)
- if kt == keyTypeVal {
- n += binary.MaxVarintLen32 + len(value)
- }
- b.grow(n)
- index := batchIndex{keyType: kt}
- o := len(b.data)
- data := b.data[:o+n]
- data[o] = byte(kt)
- o++
- o += binary.PutUvarint(data[o:], uint64(len(key)))
- index.keyPos = o
- index.keyLen = len(key)
- o += copy(data[o:], key)
- if kt == keyTypeVal {
- o += binary.PutUvarint(data[o:], uint64(len(value)))
- index.valuePos = o
- index.valueLen = len(value)
- o += copy(data[o:], value)
- }
- b.data = data[:o]
- b.index = append(b.index, index)
- b.internalLen += index.keyLen + index.valueLen + 8
-}
-
-// Put appends 'put operation' of the given key/value pair to the batch.
-// It is safe to modify the contents of the argument after Put returns but not
-// before.
-func (b *Batch) Put(key, value []byte) {
- b.appendRec(keyTypeVal, key, value)
-}
-
-// Delete appends 'delete operation' of the given key to the batch.
-// It is safe to modify the contents of the argument after Delete returns but
-// not before.
-func (b *Batch) Delete(key []byte) {
- b.appendRec(keyTypeDel, key, nil)
-}
-
-// Dump dumps batch contents. The returned slice can be loaded into the
-// batch using Load method.
-// The returned slice is not its own copy, so the contents should not be
-// modified.
-func (b *Batch) Dump() []byte {
- return b.data
-}
-
-// Load loads given slice into the batch. Previous contents of the batch
-// will be discarded.
-// The given slice will not be copied and will be used as batch buffer, so
-// it is not safe to modify the contents of the slice.
-func (b *Batch) Load(data []byte) error {
- return b.decode(data, -1)
-}
-
-// Replay replays batch contents.
-func (b *Batch) Replay(r BatchReplay) error {
- for _, index := range b.index {
- switch index.keyType {
- case keyTypeVal:
- r.Put(index.k(b.data), index.v(b.data))
- case keyTypeDel:
- r.Delete(index.k(b.data))
- }
- }
- return nil
-}
-
-// Len returns number of records in the batch.
-func (b *Batch) Len() int {
- return len(b.index)
-}
-
-// Reset resets the batch.
-func (b *Batch) Reset() {
- b.data = b.data[:0]
- b.index = b.index[:0]
- b.internalLen = 0
-}
-
-func (b *Batch) replayInternal(fn func(i int, kt keyType, k, v []byte) error) error {
- for i, index := range b.index {
- if err := fn(i, index.keyType, index.k(b.data), index.v(b.data)); err != nil {
- return err
- }
- }
- return nil
-}
-
-func (b *Batch) append(p *Batch) {
- ob := len(b.data)
- oi := len(b.index)
- b.data = append(b.data, p.data...)
- b.index = append(b.index, p.index...)
- b.internalLen += p.internalLen
-
- // Updating index offset.
- if ob != 0 {
- for ; oi < len(b.index); oi++ {
- index := &b.index[oi]
- index.keyPos += ob
- if index.valueLen != 0 {
- index.valuePos += ob
- }
- }
- }
-}
-
-func (b *Batch) decode(data []byte, expectedLen int) error {
- b.data = data
- b.index = b.index[:0]
- b.internalLen = 0
- err := decodeBatch(data, func(i int, index batchIndex) error {
- b.index = append(b.index, index)
- b.internalLen += index.keyLen + index.valueLen + 8
- return nil
- })
- if err != nil {
- return err
- }
- if expectedLen >= 0 && len(b.index) != expectedLen {
- return newErrBatchCorrupted(fmt.Sprintf("invalid records length: %d vs %d", expectedLen, len(b.index)))
- }
- return nil
-}
-
-func (b *Batch) putMem(seq uint64, mdb *memdb.DB) error {
- var ik []byte
- for i, index := range b.index {
- ik = makeInternalKey(ik, index.k(b.data), seq+uint64(i), index.keyType)
- if err := mdb.Put(ik, index.v(b.data)); err != nil {
- return err
- }
- }
- return nil
-}
-
-func (b *Batch) revertMem(seq uint64, mdb *memdb.DB) error {
- var ik []byte
- for i, index := range b.index {
- ik = makeInternalKey(ik, index.k(b.data), seq+uint64(i), index.keyType)
- if err := mdb.Delete(ik); err != nil {
- return err
- }
- }
- return nil
-}
-
-func newBatch() interface{} {
- return &Batch{}
-}
-
-func decodeBatch(data []byte, fn func(i int, index batchIndex) error) error {
- var index batchIndex
- for i, o := 0, 0; o < len(data); i++ {
- // Key type.
- index.keyType = keyType(data[o])
- if index.keyType > keyTypeVal {
- return newErrBatchCorrupted(fmt.Sprintf("bad record: invalid type %#x", uint(index.keyType)))
- }
- o++
-
- // Key.
- x, n := binary.Uvarint(data[o:])
- o += n
- if n <= 0 || o+int(x) > len(data) {
- return newErrBatchCorrupted("bad record: invalid key length")
- }
- index.keyPos = o
- index.keyLen = int(x)
- o += index.keyLen
-
- // Value.
- if index.keyType == keyTypeVal {
- x, n = binary.Uvarint(data[o:])
- o += n
- if n <= 0 || o+int(x) > len(data) {
- return newErrBatchCorrupted("bad record: invalid value length")
- }
- index.valuePos = o
- index.valueLen = int(x)
- o += index.valueLen
- } else {
- index.valuePos = 0
- index.valueLen = 0
- }
-
- if err := fn(i, index); err != nil {
- return err
- }
- }
- return nil
-}
-
-func decodeBatchToMem(data []byte, expectSeq uint64, mdb *memdb.DB) (seq uint64, batchLen int, err error) {
- seq, batchLen, err = decodeBatchHeader(data)
- if err != nil {
- return 0, 0, err
- }
- if seq < expectSeq {
- return 0, 0, newErrBatchCorrupted("invalid sequence number")
- }
- data = data[batchHeaderLen:]
- var ik []byte
- var decodedLen int
- err = decodeBatch(data, func(i int, index batchIndex) error {
- if i >= batchLen {
- return newErrBatchCorrupted("invalid records length")
- }
- ik = makeInternalKey(ik, index.k(data), seq+uint64(i), index.keyType)
- if err := mdb.Put(ik, index.v(data)); err != nil {
- return err
- }
- decodedLen++
- return nil
- })
- if err == nil && decodedLen != batchLen {
- err = newErrBatchCorrupted(fmt.Sprintf("invalid records length: %d vs %d", batchLen, decodedLen))
- }
- return
-}
-
-func encodeBatchHeader(dst []byte, seq uint64, batchLen int) []byte {
- dst = ensureBuffer(dst, batchHeaderLen)
- binary.LittleEndian.PutUint64(dst, seq)
- binary.LittleEndian.PutUint32(dst[8:], uint32(batchLen))
- return dst
-}
-
-func decodeBatchHeader(data []byte) (seq uint64, batchLen int, err error) {
- if len(data) < batchHeaderLen {
- return 0, 0, newErrBatchCorrupted("too short")
- }
-
- seq = binary.LittleEndian.Uint64(data)
- batchLen = int(binary.LittleEndian.Uint32(data[8:]))
- if batchLen < 0 {
- return 0, 0, newErrBatchCorrupted("invalid records length")
- }
- return
-}
-
-func batchesLen(batches []*Batch) int {
- batchLen := 0
- for _, batch := range batches {
- batchLen += batch.Len()
- }
- return batchLen
-}
-
-func writeBatchesWithHeader(wr io.Writer, batches []*Batch, seq uint64) error {
- if _, err := wr.Write(encodeBatchHeader(nil, seq, batchesLen(batches))); err != nil {
- return err
- }
- for _, batch := range batches {
- if _, err := wr.Write(batch.data); err != nil {
- return err
- }
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/cache/cache.go b/vendor/github.com/syndtr/goleveldb/leveldb/cache/cache.go
deleted file mode 100644
index c36ad323..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/cache/cache.go
+++ /dev/null
@@ -1,704 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package cache provides interface and implementation of a cache algorithms.
-package cache
-
-import (
- "sync"
- "sync/atomic"
- "unsafe"
-
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// Cacher provides interface to implements a caching functionality.
-// An implementation must be safe for concurrent use.
-type Cacher interface {
- // Capacity returns cache capacity.
- Capacity() int
-
- // SetCapacity sets cache capacity.
- SetCapacity(capacity int)
-
- // Promote promotes the 'cache node'.
- Promote(n *Node)
-
- // Ban evicts the 'cache node' and prevent subsequent 'promote'.
- Ban(n *Node)
-
- // Evict evicts the 'cache node'.
- Evict(n *Node)
-
- // EvictNS evicts 'cache node' with the given namespace.
- EvictNS(ns uint64)
-
- // EvictAll evicts all 'cache node'.
- EvictAll()
-
- // Close closes the 'cache tree'
- Close() error
-}
-
-// Value is a 'cacheable object'. It may implements util.Releaser, if
-// so the the Release method will be called once object is released.
-type Value interface{}
-
-// NamespaceGetter provides convenient wrapper for namespace.
-type NamespaceGetter struct {
- Cache *Cache
- NS uint64
-}
-
-// Get simply calls Cache.Get() method.
-func (g *NamespaceGetter) Get(key uint64, setFunc func() (size int, value Value)) *Handle {
- return g.Cache.Get(g.NS, key, setFunc)
-}
-
-// The hash tables implementation is based on:
-// "Dynamic-Sized Nonblocking Hash Tables", by Yujie Liu,
-// Kunlong Zhang, and Michael Spear.
-// ACM Symposium on Principles of Distributed Computing, Jul 2014.
-
-const (
- mInitialSize = 1 << 4
- mOverflowThreshold = 1 << 5
- mOverflowGrowThreshold = 1 << 7
-)
-
-type mBucket struct {
- mu sync.Mutex
- node []*Node
- frozen bool
-}
-
-func (b *mBucket) freeze() []*Node {
- b.mu.Lock()
- defer b.mu.Unlock()
- if !b.frozen {
- b.frozen = true
- }
- return b.node
-}
-
-func (b *mBucket) get(r *Cache, h *mNode, hash uint32, ns, key uint64, noset bool) (done, added bool, n *Node) {
- b.mu.Lock()
-
- if b.frozen {
- b.mu.Unlock()
- return
- }
-
- // Scan the node.
- for _, n := range b.node {
- if n.hash == hash && n.ns == ns && n.key == key {
- atomic.AddInt32(&n.ref, 1)
- b.mu.Unlock()
- return true, false, n
- }
- }
-
- // Get only.
- if noset {
- b.mu.Unlock()
- return true, false, nil
- }
-
- // Create node.
- n = &Node{
- r: r,
- hash: hash,
- ns: ns,
- key: key,
- ref: 1,
- }
- // Add node to bucket.
- b.node = append(b.node, n)
- bLen := len(b.node)
- b.mu.Unlock()
-
- // Update counter.
- grow := atomic.AddInt32(&r.nodes, 1) >= h.growThreshold
- if bLen > mOverflowThreshold {
- grow = grow || atomic.AddInt32(&h.overflow, 1) >= mOverflowGrowThreshold
- }
-
- // Grow.
- if grow && atomic.CompareAndSwapInt32(&h.resizeInProgess, 0, 1) {
- nhLen := len(h.buckets) << 1
- nh := &mNode{
- buckets: make([]unsafe.Pointer, nhLen),
- mask: uint32(nhLen) - 1,
- pred: unsafe.Pointer(h),
- growThreshold: int32(nhLen * mOverflowThreshold),
- shrinkThreshold: int32(nhLen >> 1),
- }
- ok := atomic.CompareAndSwapPointer(&r.mHead, unsafe.Pointer(h), unsafe.Pointer(nh))
- if !ok {
- panic("BUG: failed swapping head")
- }
- go nh.initBuckets()
- }
-
- return true, true, n
-}
-
-func (b *mBucket) delete(r *Cache, h *mNode, hash uint32, ns, key uint64) (done, deleted bool) {
- b.mu.Lock()
-
- if b.frozen {
- b.mu.Unlock()
- return
- }
-
- // Scan the node.
- var (
- n *Node
- bLen int
- )
- for i := range b.node {
- n = b.node[i]
- if n.ns == ns && n.key == key {
- if atomic.LoadInt32(&n.ref) == 0 {
- deleted = true
-
- // Call releaser.
- if n.value != nil {
- if r, ok := n.value.(util.Releaser); ok {
- r.Release()
- }
- n.value = nil
- }
-
- // Remove node from bucket.
- b.node = append(b.node[:i], b.node[i+1:]...)
- bLen = len(b.node)
- }
- break
- }
- }
- b.mu.Unlock()
-
- if deleted {
- // Call OnDel.
- for _, f := range n.onDel {
- f()
- }
-
- // Update counter.
- atomic.AddInt32(&r.size, int32(n.size)*-1)
- shrink := atomic.AddInt32(&r.nodes, -1) < h.shrinkThreshold
- if bLen >= mOverflowThreshold {
- atomic.AddInt32(&h.overflow, -1)
- }
-
- // Shrink.
- if shrink && len(h.buckets) > mInitialSize && atomic.CompareAndSwapInt32(&h.resizeInProgess, 0, 1) {
- nhLen := len(h.buckets) >> 1
- nh := &mNode{
- buckets: make([]unsafe.Pointer, nhLen),
- mask: uint32(nhLen) - 1,
- pred: unsafe.Pointer(h),
- growThreshold: int32(nhLen * mOverflowThreshold),
- shrinkThreshold: int32(nhLen >> 1),
- }
- ok := atomic.CompareAndSwapPointer(&r.mHead, unsafe.Pointer(h), unsafe.Pointer(nh))
- if !ok {
- panic("BUG: failed swapping head")
- }
- go nh.initBuckets()
- }
- }
-
- return true, deleted
-}
-
-type mNode struct {
- buckets []unsafe.Pointer // []*mBucket
- mask uint32
- pred unsafe.Pointer // *mNode
- resizeInProgess int32
-
- overflow int32
- growThreshold int32
- shrinkThreshold int32
-}
-
-func (n *mNode) initBucket(i uint32) *mBucket {
- if b := (*mBucket)(atomic.LoadPointer(&n.buckets[i])); b != nil {
- return b
- }
-
- p := (*mNode)(atomic.LoadPointer(&n.pred))
- if p != nil {
- var node []*Node
- if n.mask > p.mask {
- // Grow.
- pb := (*mBucket)(atomic.LoadPointer(&p.buckets[i&p.mask]))
- if pb == nil {
- pb = p.initBucket(i & p.mask)
- }
- m := pb.freeze()
- // Split nodes.
- for _, x := range m {
- if x.hash&n.mask == i {
- node = append(node, x)
- }
- }
- } else {
- // Shrink.
- pb0 := (*mBucket)(atomic.LoadPointer(&p.buckets[i]))
- if pb0 == nil {
- pb0 = p.initBucket(i)
- }
- pb1 := (*mBucket)(atomic.LoadPointer(&p.buckets[i+uint32(len(n.buckets))]))
- if pb1 == nil {
- pb1 = p.initBucket(i + uint32(len(n.buckets)))
- }
- m0 := pb0.freeze()
- m1 := pb1.freeze()
- // Merge nodes.
- node = make([]*Node, 0, len(m0)+len(m1))
- node = append(node, m0...)
- node = append(node, m1...)
- }
- b := &mBucket{node: node}
- if atomic.CompareAndSwapPointer(&n.buckets[i], nil, unsafe.Pointer(b)) {
- if len(node) > mOverflowThreshold {
- atomic.AddInt32(&n.overflow, int32(len(node)-mOverflowThreshold))
- }
- return b
- }
- }
-
- return (*mBucket)(atomic.LoadPointer(&n.buckets[i]))
-}
-
-func (n *mNode) initBuckets() {
- for i := range n.buckets {
- n.initBucket(uint32(i))
- }
- atomic.StorePointer(&n.pred, nil)
-}
-
-// Cache is a 'cache map'.
-type Cache struct {
- mu sync.RWMutex
- mHead unsafe.Pointer // *mNode
- nodes int32
- size int32
- cacher Cacher
- closed bool
-}
-
-// NewCache creates a new 'cache map'. The cacher is optional and
-// may be nil.
-func NewCache(cacher Cacher) *Cache {
- h := &mNode{
- buckets: make([]unsafe.Pointer, mInitialSize),
- mask: mInitialSize - 1,
- growThreshold: int32(mInitialSize * mOverflowThreshold),
- shrinkThreshold: 0,
- }
- for i := range h.buckets {
- h.buckets[i] = unsafe.Pointer(&mBucket{})
- }
- r := &Cache{
- mHead: unsafe.Pointer(h),
- cacher: cacher,
- }
- return r
-}
-
-func (r *Cache) getBucket(hash uint32) (*mNode, *mBucket) {
- h := (*mNode)(atomic.LoadPointer(&r.mHead))
- i := hash & h.mask
- b := (*mBucket)(atomic.LoadPointer(&h.buckets[i]))
- if b == nil {
- b = h.initBucket(i)
- }
- return h, b
-}
-
-func (r *Cache) delete(n *Node) bool {
- for {
- h, b := r.getBucket(n.hash)
- done, deleted := b.delete(r, h, n.hash, n.ns, n.key)
- if done {
- return deleted
- }
- }
-}
-
-// Nodes returns number of 'cache node' in the map.
-func (r *Cache) Nodes() int {
- return int(atomic.LoadInt32(&r.nodes))
-}
-
-// Size returns sums of 'cache node' size in the map.
-func (r *Cache) Size() int {
- return int(atomic.LoadInt32(&r.size))
-}
-
-// Capacity returns cache capacity.
-func (r *Cache) Capacity() int {
- if r.cacher == nil {
- return 0
- }
- return r.cacher.Capacity()
-}
-
-// SetCapacity sets cache capacity.
-func (r *Cache) SetCapacity(capacity int) {
- if r.cacher != nil {
- r.cacher.SetCapacity(capacity)
- }
-}
-
-// Get gets 'cache node' with the given namespace and key.
-// If cache node is not found and setFunc is not nil, Get will atomically creates
-// the 'cache node' by calling setFunc. Otherwise Get will returns nil.
-//
-// The returned 'cache handle' should be released after use by calling Release
-// method.
-func (r *Cache) Get(ns, key uint64, setFunc func() (size int, value Value)) *Handle {
- r.mu.RLock()
- defer r.mu.RUnlock()
- if r.closed {
- return nil
- }
-
- hash := murmur32(ns, key, 0xf00)
- for {
- h, b := r.getBucket(hash)
- done, _, n := b.get(r, h, hash, ns, key, setFunc == nil)
- if done {
- if n != nil {
- n.mu.Lock()
- if n.value == nil {
- if setFunc == nil {
- n.mu.Unlock()
- n.unref()
- return nil
- }
-
- n.size, n.value = setFunc()
- if n.value == nil {
- n.size = 0
- n.mu.Unlock()
- n.unref()
- return nil
- }
- atomic.AddInt32(&r.size, int32(n.size))
- }
- n.mu.Unlock()
- if r.cacher != nil {
- r.cacher.Promote(n)
- }
- return &Handle{unsafe.Pointer(n)}
- }
-
- break
- }
- }
- return nil
-}
-
-// Delete removes and ban 'cache node' with the given namespace and key.
-// A banned 'cache node' will never inserted into the 'cache tree'. Ban
-// only attributed to the particular 'cache node', so when a 'cache node'
-// is recreated it will not be banned.
-//
-// If onDel is not nil, then it will be executed if such 'cache node'
-// doesn't exist or once the 'cache node' is released.
-//
-// Delete return true is such 'cache node' exist.
-func (r *Cache) Delete(ns, key uint64, onDel func()) bool {
- r.mu.RLock()
- defer r.mu.RUnlock()
- if r.closed {
- return false
- }
-
- hash := murmur32(ns, key, 0xf00)
- for {
- h, b := r.getBucket(hash)
- done, _, n := b.get(r, h, hash, ns, key, true)
- if done {
- if n != nil {
- if onDel != nil {
- n.mu.Lock()
- n.onDel = append(n.onDel, onDel)
- n.mu.Unlock()
- }
- if r.cacher != nil {
- r.cacher.Ban(n)
- }
- n.unref()
- return true
- }
-
- break
- }
- }
-
- if onDel != nil {
- onDel()
- }
-
- return false
-}
-
-// Evict evicts 'cache node' with the given namespace and key. This will
-// simply call Cacher.Evict.
-//
-// Evict return true is such 'cache node' exist.
-func (r *Cache) Evict(ns, key uint64) bool {
- r.mu.RLock()
- defer r.mu.RUnlock()
- if r.closed {
- return false
- }
-
- hash := murmur32(ns, key, 0xf00)
- for {
- h, b := r.getBucket(hash)
- done, _, n := b.get(r, h, hash, ns, key, true)
- if done {
- if n != nil {
- if r.cacher != nil {
- r.cacher.Evict(n)
- }
- n.unref()
- return true
- }
-
- break
- }
- }
-
- return false
-}
-
-// EvictNS evicts 'cache node' with the given namespace. This will
-// simply call Cacher.EvictNS.
-func (r *Cache) EvictNS(ns uint64) {
- r.mu.RLock()
- defer r.mu.RUnlock()
- if r.closed {
- return
- }
-
- if r.cacher != nil {
- r.cacher.EvictNS(ns)
- }
-}
-
-// EvictAll evicts all 'cache node'. This will simply call Cacher.EvictAll.
-func (r *Cache) EvictAll() {
- r.mu.RLock()
- defer r.mu.RUnlock()
- if r.closed {
- return
- }
-
- if r.cacher != nil {
- r.cacher.EvictAll()
- }
-}
-
-// Close closes the 'cache map' and forcefully releases all 'cache node'.
-func (r *Cache) Close() error {
- r.mu.Lock()
- if !r.closed {
- r.closed = true
-
- h := (*mNode)(r.mHead)
- h.initBuckets()
-
- for i := range h.buckets {
- b := (*mBucket)(h.buckets[i])
- for _, n := range b.node {
- // Call releaser.
- if n.value != nil {
- if r, ok := n.value.(util.Releaser); ok {
- r.Release()
- }
- n.value = nil
- }
-
- // Call OnDel.
- for _, f := range n.onDel {
- f()
- }
- n.onDel = nil
- }
- }
- }
- r.mu.Unlock()
-
- // Avoid deadlock.
- if r.cacher != nil {
- if err := r.cacher.Close(); err != nil {
- return err
- }
- }
- return nil
-}
-
-// CloseWeak closes the 'cache map' and evict all 'cache node' from cacher, but
-// unlike Close it doesn't forcefully releases 'cache node'.
-func (r *Cache) CloseWeak() error {
- r.mu.Lock()
- if !r.closed {
- r.closed = true
- }
- r.mu.Unlock()
-
- // Avoid deadlock.
- if r.cacher != nil {
- r.cacher.EvictAll()
- if err := r.cacher.Close(); err != nil {
- return err
- }
- }
- return nil
-}
-
-// Node is a 'cache node'.
-type Node struct {
- r *Cache
-
- hash uint32
- ns, key uint64
-
- mu sync.Mutex
- size int
- value Value
-
- ref int32
- onDel []func()
-
- CacheData unsafe.Pointer
-}
-
-// NS returns this 'cache node' namespace.
-func (n *Node) NS() uint64 {
- return n.ns
-}
-
-// Key returns this 'cache node' key.
-func (n *Node) Key() uint64 {
- return n.key
-}
-
-// Size returns this 'cache node' size.
-func (n *Node) Size() int {
- return n.size
-}
-
-// Value returns this 'cache node' value.
-func (n *Node) Value() Value {
- return n.value
-}
-
-// Ref returns this 'cache node' ref counter.
-func (n *Node) Ref() int32 {
- return atomic.LoadInt32(&n.ref)
-}
-
-// GetHandle returns an handle for this 'cache node'.
-func (n *Node) GetHandle() *Handle {
- if atomic.AddInt32(&n.ref, 1) <= 1 {
- panic("BUG: Node.GetHandle on zero ref")
- }
- return &Handle{unsafe.Pointer(n)}
-}
-
-func (n *Node) unref() {
- if atomic.AddInt32(&n.ref, -1) == 0 {
- n.r.delete(n)
- }
-}
-
-func (n *Node) unrefLocked() {
- if atomic.AddInt32(&n.ref, -1) == 0 {
- n.r.mu.RLock()
- if !n.r.closed {
- n.r.delete(n)
- }
- n.r.mu.RUnlock()
- }
-}
-
-// Handle is a 'cache handle' of a 'cache node'.
-type Handle struct {
- n unsafe.Pointer // *Node
-}
-
-// Value returns the value of the 'cache node'.
-func (h *Handle) Value() Value {
- n := (*Node)(atomic.LoadPointer(&h.n))
- if n != nil {
- return n.value
- }
- return nil
-}
-
-// Release releases this 'cache handle'.
-// It is safe to call release multiple times.
-func (h *Handle) Release() {
- nPtr := atomic.LoadPointer(&h.n)
- if nPtr != nil && atomic.CompareAndSwapPointer(&h.n, nPtr, nil) {
- n := (*Node)(nPtr)
- n.unrefLocked()
- }
-}
-
-func murmur32(ns, key uint64, seed uint32) uint32 {
- const (
- m = uint32(0x5bd1e995)
- r = 24
- )
-
- k1 := uint32(ns >> 32)
- k2 := uint32(ns)
- k3 := uint32(key >> 32)
- k4 := uint32(key)
-
- k1 *= m
- k1 ^= k1 >> r
- k1 *= m
-
- k2 *= m
- k2 ^= k2 >> r
- k2 *= m
-
- k3 *= m
- k3 ^= k3 >> r
- k3 *= m
-
- k4 *= m
- k4 ^= k4 >> r
- k4 *= m
-
- h := seed
-
- h *= m
- h ^= k1
- h *= m
- h ^= k2
- h *= m
- h ^= k3
- h *= m
- h ^= k4
-
- h ^= h >> 13
- h *= m
- h ^= h >> 15
-
- return h
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/cache/lru.go b/vendor/github.com/syndtr/goleveldb/leveldb/cache/lru.go
deleted file mode 100644
index d9a84cde..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/cache/lru.go
+++ /dev/null
@@ -1,195 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package cache
-
-import (
- "sync"
- "unsafe"
-)
-
-type lruNode struct {
- n *Node
- h *Handle
- ban bool
-
- next, prev *lruNode
-}
-
-func (n *lruNode) insert(at *lruNode) {
- x := at.next
- at.next = n
- n.prev = at
- n.next = x
- x.prev = n
-}
-
-func (n *lruNode) remove() {
- if n.prev != nil {
- n.prev.next = n.next
- n.next.prev = n.prev
- n.prev = nil
- n.next = nil
- } else {
- panic("BUG: removing removed node")
- }
-}
-
-type lru struct {
- mu sync.Mutex
- capacity int
- used int
- recent lruNode
-}
-
-func (r *lru) reset() {
- r.recent.next = &r.recent
- r.recent.prev = &r.recent
- r.used = 0
-}
-
-func (r *lru) Capacity() int {
- r.mu.Lock()
- defer r.mu.Unlock()
- return r.capacity
-}
-
-func (r *lru) SetCapacity(capacity int) {
- var evicted []*lruNode
-
- r.mu.Lock()
- r.capacity = capacity
- for r.used > r.capacity {
- rn := r.recent.prev
- if rn == nil {
- panic("BUG: invalid LRU used or capacity counter")
- }
- rn.remove()
- rn.n.CacheData = nil
- r.used -= rn.n.Size()
- evicted = append(evicted, rn)
- }
- r.mu.Unlock()
-
- for _, rn := range evicted {
- rn.h.Release()
- }
-}
-
-func (r *lru) Promote(n *Node) {
- var evicted []*lruNode
-
- r.mu.Lock()
- if n.CacheData == nil {
- if n.Size() <= r.capacity {
- rn := &lruNode{n: n, h: n.GetHandle()}
- rn.insert(&r.recent)
- n.CacheData = unsafe.Pointer(rn)
- r.used += n.Size()
-
- for r.used > r.capacity {
- rn := r.recent.prev
- if rn == nil {
- panic("BUG: invalid LRU used or capacity counter")
- }
- rn.remove()
- rn.n.CacheData = nil
- r.used -= rn.n.Size()
- evicted = append(evicted, rn)
- }
- }
- } else {
- rn := (*lruNode)(n.CacheData)
- if !rn.ban {
- rn.remove()
- rn.insert(&r.recent)
- }
- }
- r.mu.Unlock()
-
- for _, rn := range evicted {
- rn.h.Release()
- }
-}
-
-func (r *lru) Ban(n *Node) {
- r.mu.Lock()
- if n.CacheData == nil {
- n.CacheData = unsafe.Pointer(&lruNode{n: n, ban: true})
- } else {
- rn := (*lruNode)(n.CacheData)
- if !rn.ban {
- rn.remove()
- rn.ban = true
- r.used -= rn.n.Size()
- r.mu.Unlock()
-
- rn.h.Release()
- rn.h = nil
- return
- }
- }
- r.mu.Unlock()
-}
-
-func (r *lru) Evict(n *Node) {
- r.mu.Lock()
- rn := (*lruNode)(n.CacheData)
- if rn == nil || rn.ban {
- r.mu.Unlock()
- return
- }
- n.CacheData = nil
- r.mu.Unlock()
-
- rn.h.Release()
-}
-
-func (r *lru) EvictNS(ns uint64) {
- var evicted []*lruNode
-
- r.mu.Lock()
- for e := r.recent.prev; e != &r.recent; {
- rn := e
- e = e.prev
- if rn.n.NS() == ns {
- rn.remove()
- rn.n.CacheData = nil
- r.used -= rn.n.Size()
- evicted = append(evicted, rn)
- }
- }
- r.mu.Unlock()
-
- for _, rn := range evicted {
- rn.h.Release()
- }
-}
-
-func (r *lru) EvictAll() {
- r.mu.Lock()
- back := r.recent.prev
- for rn := back; rn != &r.recent; rn = rn.prev {
- rn.n.CacheData = nil
- }
- r.reset()
- r.mu.Unlock()
-
- for rn := back; rn != &r.recent; rn = rn.prev {
- rn.h.Release()
- }
-}
-
-func (r *lru) Close() error {
- return nil
-}
-
-// NewLRU create a new LRU-cache.
-func NewLRU(capacity int) Cacher {
- r := &lru{capacity: capacity}
- r.reset()
- return r
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/comparer.go b/vendor/github.com/syndtr/goleveldb/leveldb/comparer.go
deleted file mode 100644
index 448402b8..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/comparer.go
+++ /dev/null
@@ -1,67 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "github.com/syndtr/goleveldb/leveldb/comparer"
-)
-
-type iComparer struct {
- ucmp comparer.Comparer
-}
-
-func (icmp *iComparer) uName() string {
- return icmp.ucmp.Name()
-}
-
-func (icmp *iComparer) uCompare(a, b []byte) int {
- return icmp.ucmp.Compare(a, b)
-}
-
-func (icmp *iComparer) uSeparator(dst, a, b []byte) []byte {
- return icmp.ucmp.Separator(dst, a, b)
-}
-
-func (icmp *iComparer) uSuccessor(dst, b []byte) []byte {
- return icmp.ucmp.Successor(dst, b)
-}
-
-func (icmp *iComparer) Name() string {
- return icmp.uName()
-}
-
-func (icmp *iComparer) Compare(a, b []byte) int {
- x := icmp.uCompare(internalKey(a).ukey(), internalKey(b).ukey())
- if x == 0 {
- if m, n := internalKey(a).num(), internalKey(b).num(); m > n {
- return -1
- } else if m < n {
- return 1
- }
- }
- return x
-}
-
-func (icmp *iComparer) Separator(dst, a, b []byte) []byte {
- ua, ub := internalKey(a).ukey(), internalKey(b).ukey()
- dst = icmp.uSeparator(dst, ua, ub)
- if dst != nil && len(dst) < len(ua) && icmp.uCompare(ua, dst) < 0 {
- // Append earliest possible number.
- return append(dst, keyMaxNumBytes...)
- }
- return nil
-}
-
-func (icmp *iComparer) Successor(dst, b []byte) []byte {
- ub := internalKey(b).ukey()
- dst = icmp.uSuccessor(dst, ub)
- if dst != nil && len(dst) < len(ub) && icmp.uCompare(ub, dst) < 0 {
- // Append earliest possible number.
- return append(dst, keyMaxNumBytes...)
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/comparer/bytes_comparer.go b/vendor/github.com/syndtr/goleveldb/leveldb/comparer/bytes_comparer.go
deleted file mode 100644
index abf9fb65..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/comparer/bytes_comparer.go
+++ /dev/null
@@ -1,51 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package comparer
-
-import "bytes"
-
-type bytesComparer struct{}
-
-func (bytesComparer) Compare(a, b []byte) int {
- return bytes.Compare(a, b)
-}
-
-func (bytesComparer) Name() string {
- return "leveldb.BytewiseComparator"
-}
-
-func (bytesComparer) Separator(dst, a, b []byte) []byte {
- i, n := 0, len(a)
- if n > len(b) {
- n = len(b)
- }
- for ; i < n && a[i] == b[i]; i++ {
- }
- if i >= n {
- // Do not shorten if one string is a prefix of the other
- } else if c := a[i]; c < 0xff && c+1 < b[i] {
- dst = append(dst, a[:i+1]...)
- dst[len(dst)-1]++
- return dst
- }
- return nil
-}
-
-func (bytesComparer) Successor(dst, b []byte) []byte {
- for i, c := range b {
- if c != 0xff {
- dst = append(dst, b[:i+1]...)
- dst[len(dst)-1]++
- return dst
- }
- }
- return nil
-}
-
-// DefaultComparer are default implementation of the Comparer interface.
-// It uses the natural ordering, consistent with bytes.Compare.
-var DefaultComparer = bytesComparer{}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/comparer/comparer.go b/vendor/github.com/syndtr/goleveldb/leveldb/comparer/comparer.go
deleted file mode 100644
index 2c522db2..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/comparer/comparer.go
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package comparer provides interface and implementation for ordering
-// sets of data.
-package comparer
-
-// BasicComparer is the interface that wraps the basic Compare method.
-type BasicComparer interface {
- // Compare returns -1, 0, or +1 depending on whether a is 'less than',
- // 'equal to' or 'greater than' b. The two arguments can only be 'equal'
- // if their contents are exactly equal. Furthermore, the empty slice
- // must be 'less than' any non-empty slice.
- Compare(a, b []byte) int
-}
-
-// Comparer defines a total ordering over the space of []byte keys: a 'less
-// than' relationship.
-type Comparer interface {
- BasicComparer
-
- // Name returns name of the comparer.
- //
- // The Level-DB on-disk format stores the comparer name, and opening a
- // database with a different comparer from the one it was created with
- // will result in an error.
- //
- // An implementation to a new name whenever the comparer implementation
- // changes in a way that will cause the relative ordering of any two keys
- // to change.
- //
- // Names starting with "leveldb." are reserved and should not be used
- // by any users of this package.
- Name() string
-
- // Bellow are advanced functions used to reduce the space requirements
- // for internal data structures such as index blocks.
-
- // Separator appends a sequence of bytes x to dst such that a <= x && x < b,
- // where 'less than' is consistent with Compare. An implementation should
- // return nil if x equal to a.
- //
- // Either contents of a or b should not by any means modified. Doing so
- // may cause corruption on the internal state.
- Separator(dst, a, b []byte) []byte
-
- // Successor appends a sequence of bytes x to dst such that x >= b, where
- // 'less than' is consistent with Compare. An implementation should return
- // nil if x equal to b.
- //
- // Contents of b should not by any means modified. Doing so may cause
- // corruption on the internal state.
- Successor(dst, b []byte) []byte
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db.go b/vendor/github.com/syndtr/goleveldb/leveldb/db.go
deleted file mode 100644
index 90fedf7b..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db.go
+++ /dev/null
@@ -1,1179 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "container/list"
- "fmt"
- "io"
- "os"
- "runtime"
- "strings"
- "sync"
- "sync/atomic"
- "time"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/journal"
- "github.com/syndtr/goleveldb/leveldb/memdb"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/storage"
- "github.com/syndtr/goleveldb/leveldb/table"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// DB is a LevelDB database.
-type DB struct {
- // Need 64-bit alignment.
- seq uint64
-
- // Stats. Need 64-bit alignment.
- cWriteDelay int64 // The cumulative duration of write delays
- cWriteDelayN int32 // The cumulative number of write delays
- inWritePaused int32 // The indicator whether write operation is paused by compaction
- aliveSnaps, aliveIters int32
-
- // Session.
- s *session
-
- // MemDB.
- memMu sync.RWMutex
- memPool chan *memdb.DB
- mem, frozenMem *memDB
- journal *journal.Writer
- journalWriter storage.Writer
- journalFd storage.FileDesc
- frozenJournalFd storage.FileDesc
- frozenSeq uint64
-
- // Snapshot.
- snapsMu sync.Mutex
- snapsList *list.List
-
- // Write.
- batchPool sync.Pool
- writeMergeC chan writeMerge
- writeMergedC chan bool
- writeLockC chan struct{}
- writeAckC chan error
- writeDelay time.Duration
- writeDelayN int
- tr *Transaction
-
- // Compaction.
- compCommitLk sync.Mutex
- tcompCmdC chan cCmd
- tcompPauseC chan chan<- struct{}
- mcompCmdC chan cCmd
- compErrC chan error
- compPerErrC chan error
- compErrSetC chan error
- compWriteLocking bool
- compStats cStats
- memdbMaxLevel int // For testing.
-
- // Close.
- closeW sync.WaitGroup
- closeC chan struct{}
- closed uint32
- closer io.Closer
-}
-
-func openDB(s *session) (*DB, error) {
- s.log("db@open opening")
- start := time.Now()
- db := &DB{
- s: s,
- // Initial sequence
- seq: s.stSeqNum,
- // MemDB
- memPool: make(chan *memdb.DB, 1),
- // Snapshot
- snapsList: list.New(),
- // Write
- batchPool: sync.Pool{New: newBatch},
- writeMergeC: make(chan writeMerge),
- writeMergedC: make(chan bool),
- writeLockC: make(chan struct{}, 1),
- writeAckC: make(chan error),
- // Compaction
- tcompCmdC: make(chan cCmd),
- tcompPauseC: make(chan chan<- struct{}),
- mcompCmdC: make(chan cCmd),
- compErrC: make(chan error),
- compPerErrC: make(chan error),
- compErrSetC: make(chan error),
- // Close
- closeC: make(chan struct{}),
- }
-
- // Read-only mode.
- readOnly := s.o.GetReadOnly()
-
- if readOnly {
- // Recover journals (read-only mode).
- if err := db.recoverJournalRO(); err != nil {
- return nil, err
- }
- } else {
- // Recover journals.
- if err := db.recoverJournal(); err != nil {
- return nil, err
- }
-
- // Remove any obsolete files.
- if err := db.checkAndCleanFiles(); err != nil {
- // Close journal.
- if db.journal != nil {
- db.journal.Close()
- db.journalWriter.Close()
- }
- return nil, err
- }
-
- }
-
- // Doesn't need to be included in the wait group.
- go db.compactionError()
- go db.mpoolDrain()
-
- if readOnly {
- db.SetReadOnly()
- } else {
- db.closeW.Add(2)
- go db.tCompaction()
- go db.mCompaction()
- // go db.jWriter()
- }
-
- s.logf("db@open done T·%v", time.Since(start))
-
- runtime.SetFinalizer(db, (*DB).Close)
- return db, nil
-}
-
-// Open opens or creates a DB for the given storage.
-// The DB will be created if not exist, unless ErrorIfMissing is true.
-// Also, if ErrorIfExist is true and the DB exist Open will returns
-// os.ErrExist error.
-//
-// Open will return an error with type of ErrCorrupted if corruption
-// detected in the DB. Use errors.IsCorrupted to test whether an error is
-// due to corruption. Corrupted DB can be recovered with Recover function.
-//
-// The returned DB instance is safe for concurrent use.
-// The DB must be closed after use, by calling Close method.
-func Open(stor storage.Storage, o *opt.Options) (db *DB, err error) {
- s, err := newSession(stor, o)
- if err != nil {
- return
- }
- defer func() {
- if err != nil {
- s.close()
- s.release()
- }
- }()
-
- err = s.recover()
- if err != nil {
- if !os.IsNotExist(err) || s.o.GetErrorIfMissing() || s.o.GetReadOnly() {
- return
- }
- err = s.create()
- if err != nil {
- return
- }
- } else if s.o.GetErrorIfExist() {
- err = os.ErrExist
- return
- }
-
- return openDB(s)
-}
-
-// OpenFile opens or creates a DB for the given path.
-// The DB will be created if not exist, unless ErrorIfMissing is true.
-// Also, if ErrorIfExist is true and the DB exist OpenFile will returns
-// os.ErrExist error.
-//
-// OpenFile uses standard file-system backed storage implementation as
-// described in the leveldb/storage package.
-//
-// OpenFile will return an error with type of ErrCorrupted if corruption
-// detected in the DB. Use errors.IsCorrupted to test whether an error is
-// due to corruption. Corrupted DB can be recovered with Recover function.
-//
-// The returned DB instance is safe for concurrent use.
-// The DB must be closed after use, by calling Close method.
-func OpenFile(path string, o *opt.Options) (db *DB, err error) {
- stor, err := storage.OpenFile(path, o.GetReadOnly())
- if err != nil {
- return
- }
- db, err = Open(stor, o)
- if err != nil {
- stor.Close()
- } else {
- db.closer = stor
- }
- return
-}
-
-// Recover recovers and opens a DB with missing or corrupted manifest files
-// for the given storage. It will ignore any manifest files, valid or not.
-// The DB must already exist or it will returns an error.
-// Also, Recover will ignore ErrorIfMissing and ErrorIfExist options.
-//
-// The returned DB instance is safe for concurrent use.
-// The DB must be closed after use, by calling Close method.
-func Recover(stor storage.Storage, o *opt.Options) (db *DB, err error) {
- s, err := newSession(stor, o)
- if err != nil {
- return
- }
- defer func() {
- if err != nil {
- s.close()
- s.release()
- }
- }()
-
- err = recoverTable(s, o)
- if err != nil {
- return
- }
- return openDB(s)
-}
-
-// RecoverFile recovers and opens a DB with missing or corrupted manifest files
-// for the given path. It will ignore any manifest files, valid or not.
-// The DB must already exist or it will returns an error.
-// Also, Recover will ignore ErrorIfMissing and ErrorIfExist options.
-//
-// RecoverFile uses standard file-system backed storage implementation as described
-// in the leveldb/storage package.
-//
-// The returned DB instance is safe for concurrent use.
-// The DB must be closed after use, by calling Close method.
-func RecoverFile(path string, o *opt.Options) (db *DB, err error) {
- stor, err := storage.OpenFile(path, false)
- if err != nil {
- return
- }
- db, err = Recover(stor, o)
- if err != nil {
- stor.Close()
- } else {
- db.closer = stor
- }
- return
-}
-
-func recoverTable(s *session, o *opt.Options) error {
- o = dupOptions(o)
- // Mask StrictReader, lets StrictRecovery doing its job.
- o.Strict &= ^opt.StrictReader
-
- // Get all tables and sort it by file number.
- fds, err := s.stor.List(storage.TypeTable)
- if err != nil {
- return err
- }
- sortFds(fds)
-
- var (
- maxSeq uint64
- recoveredKey, goodKey, corruptedKey, corruptedBlock, droppedTable int
-
- // We will drop corrupted table.
- strict = o.GetStrict(opt.StrictRecovery)
- noSync = o.GetNoSync()
-
- rec = &sessionRecord{}
- bpool = util.NewBufferPool(o.GetBlockSize() + 5)
- )
- buildTable := func(iter iterator.Iterator) (tmpFd storage.FileDesc, size int64, err error) {
- tmpFd = s.newTemp()
- writer, err := s.stor.Create(tmpFd)
- if err != nil {
- return
- }
- defer func() {
- writer.Close()
- if err != nil {
- s.stor.Remove(tmpFd)
- tmpFd = storage.FileDesc{}
- }
- }()
-
- // Copy entries.
- tw := table.NewWriter(writer, o)
- for iter.Next() {
- key := iter.Key()
- if validInternalKey(key) {
- err = tw.Append(key, iter.Value())
- if err != nil {
- return
- }
- }
- }
- err = iter.Error()
- if err != nil && !errors.IsCorrupted(err) {
- return
- }
- err = tw.Close()
- if err != nil {
- return
- }
- if !noSync {
- err = writer.Sync()
- if err != nil {
- return
- }
- }
- size = int64(tw.BytesLen())
- return
- }
- recoverTable := func(fd storage.FileDesc) error {
- s.logf("table@recovery recovering @%d", fd.Num)
- reader, err := s.stor.Open(fd)
- if err != nil {
- return err
- }
- var closed bool
- defer func() {
- if !closed {
- reader.Close()
- }
- }()
-
- // Get file size.
- size, err := reader.Seek(0, 2)
- if err != nil {
- return err
- }
-
- var (
- tSeq uint64
- tgoodKey, tcorruptedKey, tcorruptedBlock int
- imin, imax []byte
- )
- tr, err := table.NewReader(reader, size, fd, nil, bpool, o)
- if err != nil {
- return err
- }
- iter := tr.NewIterator(nil, nil)
- if itererr, ok := iter.(iterator.ErrorCallbackSetter); ok {
- itererr.SetErrorCallback(func(err error) {
- if errors.IsCorrupted(err) {
- s.logf("table@recovery block corruption @%d %q", fd.Num, err)
- tcorruptedBlock++
- }
- })
- }
-
- // Scan the table.
- for iter.Next() {
- key := iter.Key()
- _, seq, _, kerr := parseInternalKey(key)
- if kerr != nil {
- tcorruptedKey++
- continue
- }
- tgoodKey++
- if seq > tSeq {
- tSeq = seq
- }
- if imin == nil {
- imin = append([]byte{}, key...)
- }
- imax = append(imax[:0], key...)
- }
- if err := iter.Error(); err != nil && !errors.IsCorrupted(err) {
- iter.Release()
- return err
- }
- iter.Release()
-
- goodKey += tgoodKey
- corruptedKey += tcorruptedKey
- corruptedBlock += tcorruptedBlock
-
- if strict && (tcorruptedKey > 0 || tcorruptedBlock > 0) {
- droppedTable++
- s.logf("table@recovery dropped @%d Gk·%d Ck·%d Cb·%d S·%d Q·%d", fd.Num, tgoodKey, tcorruptedKey, tcorruptedBlock, size, tSeq)
- return nil
- }
-
- if tgoodKey > 0 {
- if tcorruptedKey > 0 || tcorruptedBlock > 0 {
- // Rebuild the table.
- s.logf("table@recovery rebuilding @%d", fd.Num)
- iter := tr.NewIterator(nil, nil)
- tmpFd, newSize, err := buildTable(iter)
- iter.Release()
- if err != nil {
- return err
- }
- closed = true
- reader.Close()
- if err := s.stor.Rename(tmpFd, fd); err != nil {
- return err
- }
- size = newSize
- }
- if tSeq > maxSeq {
- maxSeq = tSeq
- }
- recoveredKey += tgoodKey
- // Add table to level 0.
- rec.addTable(0, fd.Num, size, imin, imax)
- s.logf("table@recovery recovered @%d Gk·%d Ck·%d Cb·%d S·%d Q·%d", fd.Num, tgoodKey, tcorruptedKey, tcorruptedBlock, size, tSeq)
- } else {
- droppedTable++
- s.logf("table@recovery unrecoverable @%d Ck·%d Cb·%d S·%d", fd.Num, tcorruptedKey, tcorruptedBlock, size)
- }
-
- return nil
- }
-
- // Recover all tables.
- if len(fds) > 0 {
- s.logf("table@recovery F·%d", len(fds))
-
- // Mark file number as used.
- s.markFileNum(fds[len(fds)-1].Num)
-
- for _, fd := range fds {
- if err := recoverTable(fd); err != nil {
- return err
- }
- }
-
- s.logf("table@recovery recovered F·%d N·%d Gk·%d Ck·%d Q·%d", len(fds), recoveredKey, goodKey, corruptedKey, maxSeq)
- }
-
- // Set sequence number.
- rec.setSeqNum(maxSeq)
-
- // Create new manifest.
- if err := s.create(); err != nil {
- return err
- }
-
- // Commit.
- return s.commit(rec)
-}
-
-func (db *DB) recoverJournal() error {
- // Get all journals and sort it by file number.
- rawFds, err := db.s.stor.List(storage.TypeJournal)
- if err != nil {
- return err
- }
- sortFds(rawFds)
-
- // Journals that will be recovered.
- var fds []storage.FileDesc
- for _, fd := range rawFds {
- if fd.Num >= db.s.stJournalNum || fd.Num == db.s.stPrevJournalNum {
- fds = append(fds, fd)
- }
- }
-
- var (
- ofd storage.FileDesc // Obsolete file.
- rec = &sessionRecord{}
- )
-
- // Recover journals.
- if len(fds) > 0 {
- db.logf("journal@recovery F·%d", len(fds))
-
- // Mark file number as used.
- db.s.markFileNum(fds[len(fds)-1].Num)
-
- var (
- // Options.
- strict = db.s.o.GetStrict(opt.StrictJournal)
- checksum = db.s.o.GetStrict(opt.StrictJournalChecksum)
- writeBuffer = db.s.o.GetWriteBuffer()
-
- jr *journal.Reader
- mdb = memdb.New(db.s.icmp, writeBuffer)
- buf = &util.Buffer{}
- batchSeq uint64
- batchLen int
- )
-
- for _, fd := range fds {
- db.logf("journal@recovery recovering @%d", fd.Num)
-
- fr, err := db.s.stor.Open(fd)
- if err != nil {
- return err
- }
-
- // Create or reset journal reader instance.
- if jr == nil {
- jr = journal.NewReader(fr, dropper{db.s, fd}, strict, checksum)
- } else {
- jr.Reset(fr, dropper{db.s, fd}, strict, checksum)
- }
-
- // Flush memdb and remove obsolete journal file.
- if !ofd.Zero() {
- if mdb.Len() > 0 {
- if _, err := db.s.flushMemdb(rec, mdb, 0); err != nil {
- fr.Close()
- return err
- }
- }
-
- rec.setJournalNum(fd.Num)
- rec.setSeqNum(db.seq)
- if err := db.s.commit(rec); err != nil {
- fr.Close()
- return err
- }
- rec.resetAddedTables()
-
- db.s.stor.Remove(ofd)
- ofd = storage.FileDesc{}
- }
-
- // Replay journal to memdb.
- mdb.Reset()
- for {
- r, err := jr.Next()
- if err != nil {
- if err == io.EOF {
- break
- }
-
- fr.Close()
- return errors.SetFd(err, fd)
- }
-
- buf.Reset()
- if _, err := buf.ReadFrom(r); err != nil {
- if err == io.ErrUnexpectedEOF {
- // This is error returned due to corruption, with strict == false.
- continue
- }
-
- fr.Close()
- return errors.SetFd(err, fd)
- }
- batchSeq, batchLen, err = decodeBatchToMem(buf.Bytes(), db.seq, mdb)
- if err != nil {
- if !strict && errors.IsCorrupted(err) {
- db.s.logf("journal error: %v (skipped)", err)
- // We won't apply sequence number as it might be corrupted.
- continue
- }
-
- fr.Close()
- return errors.SetFd(err, fd)
- }
-
- // Save sequence number.
- db.seq = batchSeq + uint64(batchLen)
-
- // Flush it if large enough.
- if mdb.Size() >= writeBuffer {
- if _, err := db.s.flushMemdb(rec, mdb, 0); err != nil {
- fr.Close()
- return err
- }
-
- mdb.Reset()
- }
- }
-
- fr.Close()
- ofd = fd
- }
-
- // Flush the last memdb.
- if mdb.Len() > 0 {
- if _, err := db.s.flushMemdb(rec, mdb, 0); err != nil {
- return err
- }
- }
- }
-
- // Create a new journal.
- if _, err := db.newMem(0); err != nil {
- return err
- }
-
- // Commit.
- rec.setJournalNum(db.journalFd.Num)
- rec.setSeqNum(db.seq)
- if err := db.s.commit(rec); err != nil {
- // Close journal on error.
- if db.journal != nil {
- db.journal.Close()
- db.journalWriter.Close()
- }
- return err
- }
-
- // Remove the last obsolete journal file.
- if !ofd.Zero() {
- db.s.stor.Remove(ofd)
- }
-
- return nil
-}
-
-func (db *DB) recoverJournalRO() error {
- // Get all journals and sort it by file number.
- rawFds, err := db.s.stor.List(storage.TypeJournal)
- if err != nil {
- return err
- }
- sortFds(rawFds)
-
- // Journals that will be recovered.
- var fds []storage.FileDesc
- for _, fd := range rawFds {
- if fd.Num >= db.s.stJournalNum || fd.Num == db.s.stPrevJournalNum {
- fds = append(fds, fd)
- }
- }
-
- var (
- // Options.
- strict = db.s.o.GetStrict(opt.StrictJournal)
- checksum = db.s.o.GetStrict(opt.StrictJournalChecksum)
- writeBuffer = db.s.o.GetWriteBuffer()
-
- mdb = memdb.New(db.s.icmp, writeBuffer)
- )
-
- // Recover journals.
- if len(fds) > 0 {
- db.logf("journal@recovery RO·Mode F·%d", len(fds))
-
- var (
- jr *journal.Reader
- buf = &util.Buffer{}
- batchSeq uint64
- batchLen int
- )
-
- for _, fd := range fds {
- db.logf("journal@recovery recovering @%d", fd.Num)
-
- fr, err := db.s.stor.Open(fd)
- if err != nil {
- return err
- }
-
- // Create or reset journal reader instance.
- if jr == nil {
- jr = journal.NewReader(fr, dropper{db.s, fd}, strict, checksum)
- } else {
- jr.Reset(fr, dropper{db.s, fd}, strict, checksum)
- }
-
- // Replay journal to memdb.
- for {
- r, err := jr.Next()
- if err != nil {
- if err == io.EOF {
- break
- }
-
- fr.Close()
- return errors.SetFd(err, fd)
- }
-
- buf.Reset()
- if _, err := buf.ReadFrom(r); err != nil {
- if err == io.ErrUnexpectedEOF {
- // This is error returned due to corruption, with strict == false.
- continue
- }
-
- fr.Close()
- return errors.SetFd(err, fd)
- }
- batchSeq, batchLen, err = decodeBatchToMem(buf.Bytes(), db.seq, mdb)
- if err != nil {
- if !strict && errors.IsCorrupted(err) {
- db.s.logf("journal error: %v (skipped)", err)
- // We won't apply sequence number as it might be corrupted.
- continue
- }
-
- fr.Close()
- return errors.SetFd(err, fd)
- }
-
- // Save sequence number.
- db.seq = batchSeq + uint64(batchLen)
- }
-
- fr.Close()
- }
- }
-
- // Set memDB.
- db.mem = &memDB{db: db, DB: mdb, ref: 1}
-
- return nil
-}
-
-func memGet(mdb *memdb.DB, ikey internalKey, icmp *iComparer) (ok bool, mv []byte, err error) {
- mk, mv, err := mdb.Find(ikey)
- if err == nil {
- ukey, _, kt, kerr := parseInternalKey(mk)
- if kerr != nil {
- // Shouldn't have had happen.
- panic(kerr)
- }
- if icmp.uCompare(ukey, ikey.ukey()) == 0 {
- if kt == keyTypeDel {
- return true, nil, ErrNotFound
- }
- return true, mv, nil
-
- }
- } else if err != ErrNotFound {
- return true, nil, err
- }
- return
-}
-
-func (db *DB) get(auxm *memdb.DB, auxt tFiles, key []byte, seq uint64, ro *opt.ReadOptions) (value []byte, err error) {
- ikey := makeInternalKey(nil, key, seq, keyTypeSeek)
-
- if auxm != nil {
- if ok, mv, me := memGet(auxm, ikey, db.s.icmp); ok {
- return append([]byte{}, mv...), me
- }
- }
-
- em, fm := db.getMems()
- for _, m := range [...]*memDB{em, fm} {
- if m == nil {
- continue
- }
- defer m.decref()
-
- if ok, mv, me := memGet(m.DB, ikey, db.s.icmp); ok {
- return append([]byte{}, mv...), me
- }
- }
-
- v := db.s.version()
- value, cSched, err := v.get(auxt, ikey, ro, false)
- v.release()
- if cSched {
- // Trigger table compaction.
- db.compTrigger(db.tcompCmdC)
- }
- return
-}
-
-func nilIfNotFound(err error) error {
- if err == ErrNotFound {
- return nil
- }
- return err
-}
-
-func (db *DB) has(auxm *memdb.DB, auxt tFiles, key []byte, seq uint64, ro *opt.ReadOptions) (ret bool, err error) {
- ikey := makeInternalKey(nil, key, seq, keyTypeSeek)
-
- if auxm != nil {
- if ok, _, me := memGet(auxm, ikey, db.s.icmp); ok {
- return me == nil, nilIfNotFound(me)
- }
- }
-
- em, fm := db.getMems()
- for _, m := range [...]*memDB{em, fm} {
- if m == nil {
- continue
- }
- defer m.decref()
-
- if ok, _, me := memGet(m.DB, ikey, db.s.icmp); ok {
- return me == nil, nilIfNotFound(me)
- }
- }
-
- v := db.s.version()
- _, cSched, err := v.get(auxt, ikey, ro, true)
- v.release()
- if cSched {
- // Trigger table compaction.
- db.compTrigger(db.tcompCmdC)
- }
- if err == nil {
- ret = true
- } else if err == ErrNotFound {
- err = nil
- }
- return
-}
-
-// Get gets the value for the given key. It returns ErrNotFound if the
-// DB does not contains the key.
-//
-// The returned slice is its own copy, it is safe to modify the contents
-// of the returned slice.
-// It is safe to modify the contents of the argument after Get returns.
-func (db *DB) Get(key []byte, ro *opt.ReadOptions) (value []byte, err error) {
- err = db.ok()
- if err != nil {
- return
- }
-
- se := db.acquireSnapshot()
- defer db.releaseSnapshot(se)
- return db.get(nil, nil, key, se.seq, ro)
-}
-
-// Has returns true if the DB does contains the given key.
-//
-// It is safe to modify the contents of the argument after Has returns.
-func (db *DB) Has(key []byte, ro *opt.ReadOptions) (ret bool, err error) {
- err = db.ok()
- if err != nil {
- return
- }
-
- se := db.acquireSnapshot()
- defer db.releaseSnapshot(se)
- return db.has(nil, nil, key, se.seq, ro)
-}
-
-// NewIterator returns an iterator for the latest snapshot of the
-// underlying DB.
-// The returned iterator is not safe for concurrent use, but it is safe to use
-// multiple iterators concurrently, with each in a dedicated goroutine.
-// It is also safe to use an iterator concurrently with modifying its
-// underlying DB. The resultant key/value pairs are guaranteed to be
-// consistent.
-//
-// Slice allows slicing the iterator to only contains keys in the given
-// range. A nil Range.Start is treated as a key before all keys in the
-// DB. And a nil Range.Limit is treated as a key after all keys in
-// the DB.
-//
-// WARNING: Any slice returned by interator (e.g. slice returned by calling
-// Iterator.Key() or Iterator.Key() methods), its content should not be modified
-// unless noted otherwise.
-//
-// The iterator must be released after use, by calling Release method.
-//
-// Also read Iterator documentation of the leveldb/iterator package.
-func (db *DB) NewIterator(slice *util.Range, ro *opt.ReadOptions) iterator.Iterator {
- if err := db.ok(); err != nil {
- return iterator.NewEmptyIterator(err)
- }
-
- se := db.acquireSnapshot()
- defer db.releaseSnapshot(se)
- // Iterator holds 'version' lock, 'version' is immutable so snapshot
- // can be released after iterator created.
- return db.newIterator(nil, nil, se.seq, slice, ro)
-}
-
-// GetSnapshot returns a latest snapshot of the underlying DB. A snapshot
-// is a frozen snapshot of a DB state at a particular point in time. The
-// content of snapshot are guaranteed to be consistent.
-//
-// The snapshot must be released after use, by calling Release method.
-func (db *DB) GetSnapshot() (*Snapshot, error) {
- if err := db.ok(); err != nil {
- return nil, err
- }
-
- return db.newSnapshot(), nil
-}
-
-// GetProperty returns value of the given property name.
-//
-// Property names:
-// leveldb.num-files-at-level{n}
-// Returns the number of files at level 'n'.
-// leveldb.stats
-// Returns statistics of the underlying DB.
-// leveldb.iostats
-// Returns statistics of effective disk read and write.
-// leveldb.writedelay
-// Returns cumulative write delay caused by compaction.
-// leveldb.sstables
-// Returns sstables list for each level.
-// leveldb.blockpool
-// Returns block pool stats.
-// leveldb.cachedblock
-// Returns size of cached block.
-// leveldb.openedtables
-// Returns number of opened tables.
-// leveldb.alivesnaps
-// Returns number of alive snapshots.
-// leveldb.aliveiters
-// Returns number of alive iterators.
-func (db *DB) GetProperty(name string) (value string, err error) {
- err = db.ok()
- if err != nil {
- return
- }
-
- const prefix = "leveldb."
- if !strings.HasPrefix(name, prefix) {
- return "", ErrNotFound
- }
- p := name[len(prefix):]
-
- v := db.s.version()
- defer v.release()
-
- numFilesPrefix := "num-files-at-level"
- switch {
- case strings.HasPrefix(p, numFilesPrefix):
- var level uint
- var rest string
- n, _ := fmt.Sscanf(p[len(numFilesPrefix):], "%d%s", &level, &rest)
- if n != 1 {
- err = ErrNotFound
- } else {
- value = fmt.Sprint(v.tLen(int(level)))
- }
- case p == "stats":
- value = "Compactions\n" +
- " Level | Tables | Size(MB) | Time(sec) | Read(MB) | Write(MB)\n" +
- "-------+------------+---------------+---------------+---------------+---------------\n"
- for level, tables := range v.levels {
- duration, read, write := db.compStats.getStat(level)
- if len(tables) == 0 && duration == 0 {
- continue
- }
- value += fmt.Sprintf(" %3d | %10d | %13.5f | %13.5f | %13.5f | %13.5f\n",
- level, len(tables), float64(tables.size())/1048576.0, duration.Seconds(),
- float64(read)/1048576.0, float64(write)/1048576.0)
- }
- case p == "iostats":
- value = fmt.Sprintf("Read(MB):%.5f Write(MB):%.5f",
- float64(db.s.stor.reads())/1048576.0,
- float64(db.s.stor.writes())/1048576.0)
- case p == "writedelay":
- writeDelayN, writeDelay := atomic.LoadInt32(&db.cWriteDelayN), time.Duration(atomic.LoadInt64(&db.cWriteDelay))
- paused := atomic.LoadInt32(&db.inWritePaused) == 1
- value = fmt.Sprintf("DelayN:%d Delay:%s Paused:%t", writeDelayN, writeDelay, paused)
- case p == "sstables":
- for level, tables := range v.levels {
- value += fmt.Sprintf("--- level %d ---\n", level)
- for _, t := range tables {
- value += fmt.Sprintf("%d:%d[%q .. %q]\n", t.fd.Num, t.size, t.imin, t.imax)
- }
- }
- case p == "blockpool":
- value = fmt.Sprintf("%v", db.s.tops.bpool)
- case p == "cachedblock":
- if db.s.tops.bcache != nil {
- value = fmt.Sprintf("%d", db.s.tops.bcache.Size())
- } else {
- value = ""
- }
- case p == "openedtables":
- value = fmt.Sprintf("%d", db.s.tops.cache.Size())
- case p == "alivesnaps":
- value = fmt.Sprintf("%d", atomic.LoadInt32(&db.aliveSnaps))
- case p == "aliveiters":
- value = fmt.Sprintf("%d", atomic.LoadInt32(&db.aliveIters))
- default:
- err = ErrNotFound
- }
-
- return
-}
-
-// DBStats is database statistics.
-type DBStats struct {
- WriteDelayCount int32
- WriteDelayDuration time.Duration
- WritePaused bool
-
- AliveSnapshots int32
- AliveIterators int32
-
- IOWrite uint64
- IORead uint64
-
- BlockCacheSize int
- OpenedTablesCount int
-
- LevelSizes []int64
- LevelTablesCounts []int
- LevelRead []int64
- LevelWrite []int64
- LevelDurations []time.Duration
-}
-
-// Stats populates s with database statistics.
-func (db *DB) Stats(s *DBStats) error {
- err := db.ok()
- if err != nil {
- return err
- }
-
- s.IORead = db.s.stor.reads()
- s.IOWrite = db.s.stor.writes()
- s.WriteDelayCount = atomic.LoadInt32(&db.cWriteDelayN)
- s.WriteDelayDuration = time.Duration(atomic.LoadInt64(&db.cWriteDelay))
- s.WritePaused = atomic.LoadInt32(&db.inWritePaused) == 1
-
- s.OpenedTablesCount = db.s.tops.cache.Size()
- if db.s.tops.bcache != nil {
- s.BlockCacheSize = db.s.tops.bcache.Size()
- } else {
- s.BlockCacheSize = 0
- }
-
- s.AliveIterators = atomic.LoadInt32(&db.aliveIters)
- s.AliveSnapshots = atomic.LoadInt32(&db.aliveSnaps)
-
- s.LevelDurations = s.LevelDurations[:0]
- s.LevelRead = s.LevelRead[:0]
- s.LevelWrite = s.LevelWrite[:0]
- s.LevelSizes = s.LevelSizes[:0]
- s.LevelTablesCounts = s.LevelTablesCounts[:0]
-
- v := db.s.version()
- defer v.release()
-
- for level, tables := range v.levels {
- duration, read, write := db.compStats.getStat(level)
- if len(tables) == 0 && duration == 0 {
- continue
- }
- s.LevelDurations = append(s.LevelDurations, duration)
- s.LevelRead = append(s.LevelRead, read)
- s.LevelWrite = append(s.LevelWrite, write)
- s.LevelSizes = append(s.LevelSizes, tables.size())
- s.LevelTablesCounts = append(s.LevelTablesCounts, len(tables))
- }
-
- return nil
-}
-
-// SizeOf calculates approximate sizes of the given key ranges.
-// The length of the returned sizes are equal with the length of the given
-// ranges. The returned sizes measure storage space usage, so if the user
-// data compresses by a factor of ten, the returned sizes will be one-tenth
-// the size of the corresponding user data size.
-// The results may not include the sizes of recently written data.
-func (db *DB) SizeOf(ranges []util.Range) (Sizes, error) {
- if err := db.ok(); err != nil {
- return nil, err
- }
-
- v := db.s.version()
- defer v.release()
-
- sizes := make(Sizes, 0, len(ranges))
- for _, r := range ranges {
- imin := makeInternalKey(nil, r.Start, keyMaxSeq, keyTypeSeek)
- imax := makeInternalKey(nil, r.Limit, keyMaxSeq, keyTypeSeek)
- start, err := v.offsetOf(imin)
- if err != nil {
- return nil, err
- }
- limit, err := v.offsetOf(imax)
- if err != nil {
- return nil, err
- }
- var size int64
- if limit >= start {
- size = limit - start
- }
- sizes = append(sizes, size)
- }
-
- return sizes, nil
-}
-
-// Close closes the DB. This will also releases any outstanding snapshot,
-// abort any in-flight compaction and discard open transaction.
-//
-// It is not safe to close a DB until all outstanding iterators are released.
-// It is valid to call Close multiple times. Other methods should not be
-// called after the DB has been closed.
-func (db *DB) Close() error {
- if !db.setClosed() {
- return ErrClosed
- }
-
- start := time.Now()
- db.log("db@close closing")
-
- // Clear the finalizer.
- runtime.SetFinalizer(db, nil)
-
- // Get compaction error.
- var err error
- select {
- case err = <-db.compErrC:
- if err == ErrReadOnly {
- err = nil
- }
- default:
- }
-
- // Signal all goroutines.
- close(db.closeC)
-
- // Discard open transaction.
- if db.tr != nil {
- db.tr.Discard()
- }
-
- // Acquire writer lock.
- db.writeLockC <- struct{}{}
-
- // Wait for all gorotines to exit.
- db.closeW.Wait()
-
- // Closes journal.
- if db.journal != nil {
- db.journal.Close()
- db.journalWriter.Close()
- db.journal = nil
- db.journalWriter = nil
- }
-
- if db.writeDelayN > 0 {
- db.logf("db@write was delayed N·%d T·%v", db.writeDelayN, db.writeDelay)
- }
-
- // Close session.
- db.s.close()
- db.logf("db@close done T·%v", time.Since(start))
- db.s.release()
-
- if db.closer != nil {
- if err1 := db.closer.Close(); err == nil {
- err = err1
- }
- db.closer = nil
- }
-
- // Clear memdbs.
- db.clearMems()
-
- return err
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_compaction.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_compaction.go
deleted file mode 100644
index 0c1b9a53..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_compaction.go
+++ /dev/null
@@ -1,854 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "sync"
- "time"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-var (
- errCompactionTransactExiting = errors.New("leveldb: compaction transact exiting")
-)
-
-type cStat struct {
- duration time.Duration
- read int64
- write int64
-}
-
-func (p *cStat) add(n *cStatStaging) {
- p.duration += n.duration
- p.read += n.read
- p.write += n.write
-}
-
-func (p *cStat) get() (duration time.Duration, read, write int64) {
- return p.duration, p.read, p.write
-}
-
-type cStatStaging struct {
- start time.Time
- duration time.Duration
- on bool
- read int64
- write int64
-}
-
-func (p *cStatStaging) startTimer() {
- if !p.on {
- p.start = time.Now()
- p.on = true
- }
-}
-
-func (p *cStatStaging) stopTimer() {
- if p.on {
- p.duration += time.Since(p.start)
- p.on = false
- }
-}
-
-type cStats struct {
- lk sync.Mutex
- stats []cStat
-}
-
-func (p *cStats) addStat(level int, n *cStatStaging) {
- p.lk.Lock()
- if level >= len(p.stats) {
- newStats := make([]cStat, level+1)
- copy(newStats, p.stats)
- p.stats = newStats
- }
- p.stats[level].add(n)
- p.lk.Unlock()
-}
-
-func (p *cStats) getStat(level int) (duration time.Duration, read, write int64) {
- p.lk.Lock()
- defer p.lk.Unlock()
- if level < len(p.stats) {
- return p.stats[level].get()
- }
- return
-}
-
-func (db *DB) compactionError() {
- var err error
-noerr:
- // No error.
- for {
- select {
- case err = <-db.compErrSetC:
- switch {
- case err == nil:
- case err == ErrReadOnly, errors.IsCorrupted(err):
- goto hasperr
- default:
- goto haserr
- }
- case <-db.closeC:
- return
- }
- }
-haserr:
- // Transient error.
- for {
- select {
- case db.compErrC <- err:
- case err = <-db.compErrSetC:
- switch {
- case err == nil:
- goto noerr
- case err == ErrReadOnly, errors.IsCorrupted(err):
- goto hasperr
- default:
- }
- case <-db.closeC:
- return
- }
- }
-hasperr:
- // Persistent error.
- for {
- select {
- case db.compErrC <- err:
- case db.compPerErrC <- err:
- case db.writeLockC <- struct{}{}:
- // Hold write lock, so that write won't pass-through.
- db.compWriteLocking = true
- case <-db.closeC:
- if db.compWriteLocking {
- // We should release the lock or Close will hang.
- <-db.writeLockC
- }
- return
- }
- }
-}
-
-type compactionTransactCounter int
-
-func (cnt *compactionTransactCounter) incr() {
- *cnt++
-}
-
-type compactionTransactInterface interface {
- run(cnt *compactionTransactCounter) error
- revert() error
-}
-
-func (db *DB) compactionTransact(name string, t compactionTransactInterface) {
- defer func() {
- if x := recover(); x != nil {
- if x == errCompactionTransactExiting {
- if err := t.revert(); err != nil {
- db.logf("%s revert error %q", name, err)
- }
- }
- panic(x)
- }
- }()
-
- const (
- backoffMin = 1 * time.Second
- backoffMax = 8 * time.Second
- backoffMul = 2 * time.Second
- )
- var (
- backoff = backoffMin
- backoffT = time.NewTimer(backoff)
- lastCnt = compactionTransactCounter(0)
-
- disableBackoff = db.s.o.GetDisableCompactionBackoff()
- )
- for n := 0; ; n++ {
- // Check whether the DB is closed.
- if db.isClosed() {
- db.logf("%s exiting", name)
- db.compactionExitTransact()
- } else if n > 0 {
- db.logf("%s retrying N·%d", name, n)
- }
-
- // Execute.
- cnt := compactionTransactCounter(0)
- err := t.run(&cnt)
- if err != nil {
- db.logf("%s error I·%d %q", name, cnt, err)
- }
-
- // Set compaction error status.
- select {
- case db.compErrSetC <- err:
- case perr := <-db.compPerErrC:
- if err != nil {
- db.logf("%s exiting (persistent error %q)", name, perr)
- db.compactionExitTransact()
- }
- case <-db.closeC:
- db.logf("%s exiting", name)
- db.compactionExitTransact()
- }
- if err == nil {
- return
- }
- if errors.IsCorrupted(err) {
- db.logf("%s exiting (corruption detected)", name)
- db.compactionExitTransact()
- }
-
- if !disableBackoff {
- // Reset backoff duration if counter is advancing.
- if cnt > lastCnt {
- backoff = backoffMin
- lastCnt = cnt
- }
-
- // Backoff.
- backoffT.Reset(backoff)
- if backoff < backoffMax {
- backoff *= backoffMul
- if backoff > backoffMax {
- backoff = backoffMax
- }
- }
- select {
- case <-backoffT.C:
- case <-db.closeC:
- db.logf("%s exiting", name)
- db.compactionExitTransact()
- }
- }
- }
-}
-
-type compactionTransactFunc struct {
- runFunc func(cnt *compactionTransactCounter) error
- revertFunc func() error
-}
-
-func (t *compactionTransactFunc) run(cnt *compactionTransactCounter) error {
- return t.runFunc(cnt)
-}
-
-func (t *compactionTransactFunc) revert() error {
- if t.revertFunc != nil {
- return t.revertFunc()
- }
- return nil
-}
-
-func (db *DB) compactionTransactFunc(name string, run func(cnt *compactionTransactCounter) error, revert func() error) {
- db.compactionTransact(name, &compactionTransactFunc{run, revert})
-}
-
-func (db *DB) compactionExitTransact() {
- panic(errCompactionTransactExiting)
-}
-
-func (db *DB) compactionCommit(name string, rec *sessionRecord) {
- db.compCommitLk.Lock()
- defer db.compCommitLk.Unlock() // Defer is necessary.
- db.compactionTransactFunc(name+"@commit", func(cnt *compactionTransactCounter) error {
- return db.s.commit(rec)
- }, nil)
-}
-
-func (db *DB) memCompaction() {
- mdb := db.getFrozenMem()
- if mdb == nil {
- return
- }
- defer mdb.decref()
-
- db.logf("memdb@flush N·%d S·%s", mdb.Len(), shortenb(mdb.Size()))
-
- // Don't compact empty memdb.
- if mdb.Len() == 0 {
- db.logf("memdb@flush skipping")
- // drop frozen memdb
- db.dropFrozenMem()
- return
- }
-
- // Pause table compaction.
- resumeC := make(chan struct{})
- select {
- case db.tcompPauseC <- (chan<- struct{})(resumeC):
- case <-db.compPerErrC:
- close(resumeC)
- resumeC = nil
- case <-db.closeC:
- db.compactionExitTransact()
- }
-
- var (
- rec = &sessionRecord{}
- stats = &cStatStaging{}
- flushLevel int
- )
-
- // Generate tables.
- db.compactionTransactFunc("memdb@flush", func(cnt *compactionTransactCounter) (err error) {
- stats.startTimer()
- flushLevel, err = db.s.flushMemdb(rec, mdb.DB, db.memdbMaxLevel)
- stats.stopTimer()
- return
- }, func() error {
- for _, r := range rec.addedTables {
- db.logf("memdb@flush revert @%d", r.num)
- if err := db.s.stor.Remove(storage.FileDesc{Type: storage.TypeTable, Num: r.num}); err != nil {
- return err
- }
- }
- return nil
- })
-
- rec.setJournalNum(db.journalFd.Num)
- rec.setSeqNum(db.frozenSeq)
-
- // Commit.
- stats.startTimer()
- db.compactionCommit("memdb", rec)
- stats.stopTimer()
-
- db.logf("memdb@flush committed F·%d T·%v", len(rec.addedTables), stats.duration)
-
- for _, r := range rec.addedTables {
- stats.write += r.size
- }
- db.compStats.addStat(flushLevel, stats)
-
- // Drop frozen memdb.
- db.dropFrozenMem()
-
- // Resume table compaction.
- if resumeC != nil {
- select {
- case <-resumeC:
- close(resumeC)
- case <-db.closeC:
- db.compactionExitTransact()
- }
- }
-
- // Trigger table compaction.
- db.compTrigger(db.tcompCmdC)
-}
-
-type tableCompactionBuilder struct {
- db *DB
- s *session
- c *compaction
- rec *sessionRecord
- stat0, stat1 *cStatStaging
-
- snapHasLastUkey bool
- snapLastUkey []byte
- snapLastSeq uint64
- snapIter int
- snapKerrCnt int
- snapDropCnt int
-
- kerrCnt int
- dropCnt int
-
- minSeq uint64
- strict bool
- tableSize int
-
- tw *tWriter
-}
-
-func (b *tableCompactionBuilder) appendKV(key, value []byte) error {
- // Create new table if not already.
- if b.tw == nil {
- // Check for pause event.
- if b.db != nil {
- select {
- case ch := <-b.db.tcompPauseC:
- b.db.pauseCompaction(ch)
- case <-b.db.closeC:
- b.db.compactionExitTransact()
- default:
- }
- }
-
- // Create new table.
- var err error
- b.tw, err = b.s.tops.create()
- if err != nil {
- return err
- }
- }
-
- // Write key/value into table.
- return b.tw.append(key, value)
-}
-
-func (b *tableCompactionBuilder) needFlush() bool {
- return b.tw.tw.BytesLen() >= b.tableSize
-}
-
-func (b *tableCompactionBuilder) flush() error {
- t, err := b.tw.finish()
- if err != nil {
- return err
- }
- b.rec.addTableFile(b.c.sourceLevel+1, t)
- b.stat1.write += t.size
- b.s.logf("table@build created L%d@%d N·%d S·%s %q:%q", b.c.sourceLevel+1, t.fd.Num, b.tw.tw.EntriesLen(), shortenb(int(t.size)), t.imin, t.imax)
- b.tw = nil
- return nil
-}
-
-func (b *tableCompactionBuilder) cleanup() {
- if b.tw != nil {
- b.tw.drop()
- b.tw = nil
- }
-}
-
-func (b *tableCompactionBuilder) run(cnt *compactionTransactCounter) error {
- snapResumed := b.snapIter > 0
- hasLastUkey := b.snapHasLastUkey // The key might has zero length, so this is necessary.
- lastUkey := append([]byte{}, b.snapLastUkey...)
- lastSeq := b.snapLastSeq
- b.kerrCnt = b.snapKerrCnt
- b.dropCnt = b.snapDropCnt
- // Restore compaction state.
- b.c.restore()
-
- defer b.cleanup()
-
- b.stat1.startTimer()
- defer b.stat1.stopTimer()
-
- iter := b.c.newIterator()
- defer iter.Release()
- for i := 0; iter.Next(); i++ {
- // Incr transact counter.
- cnt.incr()
-
- // Skip until last state.
- if i < b.snapIter {
- continue
- }
-
- resumed := false
- if snapResumed {
- resumed = true
- snapResumed = false
- }
-
- ikey := iter.Key()
- ukey, seq, kt, kerr := parseInternalKey(ikey)
-
- if kerr == nil {
- shouldStop := !resumed && b.c.shouldStopBefore(ikey)
-
- if !hasLastUkey || b.s.icmp.uCompare(lastUkey, ukey) != 0 {
- // First occurrence of this user key.
-
- // Only rotate tables if ukey doesn't hop across.
- if b.tw != nil && (shouldStop || b.needFlush()) {
- if err := b.flush(); err != nil {
- return err
- }
-
- // Creates snapshot of the state.
- b.c.save()
- b.snapHasLastUkey = hasLastUkey
- b.snapLastUkey = append(b.snapLastUkey[:0], lastUkey...)
- b.snapLastSeq = lastSeq
- b.snapIter = i
- b.snapKerrCnt = b.kerrCnt
- b.snapDropCnt = b.dropCnt
- }
-
- hasLastUkey = true
- lastUkey = append(lastUkey[:0], ukey...)
- lastSeq = keyMaxSeq
- }
-
- switch {
- case lastSeq <= b.minSeq:
- // Dropped because newer entry for same user key exist
- fallthrough // (A)
- case kt == keyTypeDel && seq <= b.minSeq && b.c.baseLevelForKey(lastUkey):
- // For this user key:
- // (1) there is no data in higher levels
- // (2) data in lower levels will have larger seq numbers
- // (3) data in layers that are being compacted here and have
- // smaller seq numbers will be dropped in the next
- // few iterations of this loop (by rule (A) above).
- // Therefore this deletion marker is obsolete and can be dropped.
- lastSeq = seq
- b.dropCnt++
- continue
- default:
- lastSeq = seq
- }
- } else {
- if b.strict {
- return kerr
- }
-
- // Don't drop corrupted keys.
- hasLastUkey = false
- lastUkey = lastUkey[:0]
- lastSeq = keyMaxSeq
- b.kerrCnt++
- }
-
- if err := b.appendKV(ikey, iter.Value()); err != nil {
- return err
- }
- }
-
- if err := iter.Error(); err != nil {
- return err
- }
-
- // Finish last table.
- if b.tw != nil && !b.tw.empty() {
- return b.flush()
- }
- return nil
-}
-
-func (b *tableCompactionBuilder) revert() error {
- for _, at := range b.rec.addedTables {
- b.s.logf("table@build revert @%d", at.num)
- if err := b.s.stor.Remove(storage.FileDesc{Type: storage.TypeTable, Num: at.num}); err != nil {
- return err
- }
- }
- return nil
-}
-
-func (db *DB) tableCompaction(c *compaction, noTrivial bool) {
- defer c.release()
-
- rec := &sessionRecord{}
- rec.addCompPtr(c.sourceLevel, c.imax)
-
- if !noTrivial && c.trivial() {
- t := c.levels[0][0]
- db.logf("table@move L%d@%d -> L%d", c.sourceLevel, t.fd.Num, c.sourceLevel+1)
- rec.delTable(c.sourceLevel, t.fd.Num)
- rec.addTableFile(c.sourceLevel+1, t)
- db.compactionCommit("table-move", rec)
- return
- }
-
- var stats [2]cStatStaging
- for i, tables := range c.levels {
- for _, t := range tables {
- stats[i].read += t.size
- // Insert deleted tables into record
- rec.delTable(c.sourceLevel+i, t.fd.Num)
- }
- }
- sourceSize := int(stats[0].read + stats[1].read)
- minSeq := db.minSeq()
- db.logf("table@compaction L%d·%d -> L%d·%d S·%s Q·%d", c.sourceLevel, len(c.levels[0]), c.sourceLevel+1, len(c.levels[1]), shortenb(sourceSize), minSeq)
-
- b := &tableCompactionBuilder{
- db: db,
- s: db.s,
- c: c,
- rec: rec,
- stat1: &stats[1],
- minSeq: minSeq,
- strict: db.s.o.GetStrict(opt.StrictCompaction),
- tableSize: db.s.o.GetCompactionTableSize(c.sourceLevel + 1),
- }
- db.compactionTransact("table@build", b)
-
- // Commit.
- stats[1].startTimer()
- db.compactionCommit("table", rec)
- stats[1].stopTimer()
-
- resultSize := int(stats[1].write)
- db.logf("table@compaction committed F%s S%s Ke·%d D·%d T·%v", sint(len(rec.addedTables)-len(rec.deletedTables)), sshortenb(resultSize-sourceSize), b.kerrCnt, b.dropCnt, stats[1].duration)
-
- // Save compaction stats
- for i := range stats {
- db.compStats.addStat(c.sourceLevel+1, &stats[i])
- }
-}
-
-func (db *DB) tableRangeCompaction(level int, umin, umax []byte) error {
- db.logf("table@compaction range L%d %q:%q", level, umin, umax)
- if level >= 0 {
- if c := db.s.getCompactionRange(level, umin, umax, true); c != nil {
- db.tableCompaction(c, true)
- }
- } else {
- // Retry until nothing to compact.
- for {
- compacted := false
-
- // Scan for maximum level with overlapped tables.
- v := db.s.version()
- m := 1
- for i := m; i < len(v.levels); i++ {
- tables := v.levels[i]
- if tables.overlaps(db.s.icmp, umin, umax, false) {
- m = i
- }
- }
- v.release()
-
- for level := 0; level < m; level++ {
- if c := db.s.getCompactionRange(level, umin, umax, false); c != nil {
- db.tableCompaction(c, true)
- compacted = true
- }
- }
-
- if !compacted {
- break
- }
- }
- }
-
- return nil
-}
-
-func (db *DB) tableAutoCompaction() {
- if c := db.s.pickCompaction(); c != nil {
- db.tableCompaction(c, false)
- }
-}
-
-func (db *DB) tableNeedCompaction() bool {
- v := db.s.version()
- defer v.release()
- return v.needCompaction()
-}
-
-// resumeWrite returns an indicator whether we should resume write operation if enough level0 files are compacted.
-func (db *DB) resumeWrite() bool {
- v := db.s.version()
- defer v.release()
- if v.tLen(0) < db.s.o.GetWriteL0PauseTrigger() {
- return true
- }
- return false
-}
-
-func (db *DB) pauseCompaction(ch chan<- struct{}) {
- select {
- case ch <- struct{}{}:
- case <-db.closeC:
- db.compactionExitTransact()
- }
-}
-
-type cCmd interface {
- ack(err error)
-}
-
-type cAuto struct {
- // Note for table compaction, an non-empty ackC represents it's a compaction waiting command.
- ackC chan<- error
-}
-
-func (r cAuto) ack(err error) {
- if r.ackC != nil {
- defer func() {
- recover()
- }()
- r.ackC <- err
- }
-}
-
-type cRange struct {
- level int
- min, max []byte
- ackC chan<- error
-}
-
-func (r cRange) ack(err error) {
- if r.ackC != nil {
- defer func() {
- recover()
- }()
- r.ackC <- err
- }
-}
-
-// This will trigger auto compaction but will not wait for it.
-func (db *DB) compTrigger(compC chan<- cCmd) {
- select {
- case compC <- cAuto{}:
- default:
- }
-}
-
-// This will trigger auto compaction and/or wait for all compaction to be done.
-func (db *DB) compTriggerWait(compC chan<- cCmd) (err error) {
- ch := make(chan error)
- defer close(ch)
- // Send cmd.
- select {
- case compC <- cAuto{ch}:
- case err = <-db.compErrC:
- return
- case <-db.closeC:
- return ErrClosed
- }
- // Wait cmd.
- select {
- case err = <-ch:
- case err = <-db.compErrC:
- case <-db.closeC:
- return ErrClosed
- }
- return err
-}
-
-// Send range compaction request.
-func (db *DB) compTriggerRange(compC chan<- cCmd, level int, min, max []byte) (err error) {
- ch := make(chan error)
- defer close(ch)
- // Send cmd.
- select {
- case compC <- cRange{level, min, max, ch}:
- case err := <-db.compErrC:
- return err
- case <-db.closeC:
- return ErrClosed
- }
- // Wait cmd.
- select {
- case err = <-ch:
- case err = <-db.compErrC:
- case <-db.closeC:
- return ErrClosed
- }
- return err
-}
-
-func (db *DB) mCompaction() {
- var x cCmd
-
- defer func() {
- if x := recover(); x != nil {
- if x != errCompactionTransactExiting {
- panic(x)
- }
- }
- if x != nil {
- x.ack(ErrClosed)
- }
- db.closeW.Done()
- }()
-
- for {
- select {
- case x = <-db.mcompCmdC:
- switch x.(type) {
- case cAuto:
- db.memCompaction()
- x.ack(nil)
- x = nil
- default:
- panic("leveldb: unknown command")
- }
- case <-db.closeC:
- return
- }
- }
-}
-
-func (db *DB) tCompaction() {
- var (
- x cCmd
- waitQ []cCmd
- )
-
- defer func() {
- if x := recover(); x != nil {
- if x != errCompactionTransactExiting {
- panic(x)
- }
- }
- for i := range waitQ {
- waitQ[i].ack(ErrClosed)
- waitQ[i] = nil
- }
- if x != nil {
- x.ack(ErrClosed)
- }
- db.closeW.Done()
- }()
-
- for {
- if db.tableNeedCompaction() {
- select {
- case x = <-db.tcompCmdC:
- case ch := <-db.tcompPauseC:
- db.pauseCompaction(ch)
- continue
- case <-db.closeC:
- return
- default:
- }
- // Resume write operation as soon as possible.
- if len(waitQ) > 0 && db.resumeWrite() {
- for i := range waitQ {
- waitQ[i].ack(nil)
- waitQ[i] = nil
- }
- waitQ = waitQ[:0]
- }
- } else {
- for i := range waitQ {
- waitQ[i].ack(nil)
- waitQ[i] = nil
- }
- waitQ = waitQ[:0]
- select {
- case x = <-db.tcompCmdC:
- case ch := <-db.tcompPauseC:
- db.pauseCompaction(ch)
- continue
- case <-db.closeC:
- return
- }
- }
- if x != nil {
- switch cmd := x.(type) {
- case cAuto:
- if cmd.ackC != nil {
- // Check the write pause state before caching it.
- if db.resumeWrite() {
- x.ack(nil)
- } else {
- waitQ = append(waitQ, x)
- }
- }
- case cRange:
- x.ack(db.tableRangeCompaction(cmd.level, cmd.min, cmd.max))
- default:
- panic("leveldb: unknown command")
- }
- x = nil
- }
- db.tableAutoCompaction()
- }
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_iter.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_iter.go
deleted file mode 100644
index 03c24cda..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_iter.go
+++ /dev/null
@@ -1,360 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "errors"
- "math/rand"
- "runtime"
- "sync"
- "sync/atomic"
-
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-var (
- errInvalidInternalKey = errors.New("leveldb: Iterator: invalid internal key")
-)
-
-type memdbReleaser struct {
- once sync.Once
- m *memDB
-}
-
-func (mr *memdbReleaser) Release() {
- mr.once.Do(func() {
- mr.m.decref()
- })
-}
-
-func (db *DB) newRawIterator(auxm *memDB, auxt tFiles, slice *util.Range, ro *opt.ReadOptions) iterator.Iterator {
- strict := opt.GetStrict(db.s.o.Options, ro, opt.StrictReader)
- em, fm := db.getMems()
- v := db.s.version()
-
- tableIts := v.getIterators(slice, ro)
- n := len(tableIts) + len(auxt) + 3
- its := make([]iterator.Iterator, 0, n)
-
- if auxm != nil {
- ami := auxm.NewIterator(slice)
- ami.SetReleaser(&memdbReleaser{m: auxm})
- its = append(its, ami)
- }
- for _, t := range auxt {
- its = append(its, v.s.tops.newIterator(t, slice, ro))
- }
-
- emi := em.NewIterator(slice)
- emi.SetReleaser(&memdbReleaser{m: em})
- its = append(its, emi)
- if fm != nil {
- fmi := fm.NewIterator(slice)
- fmi.SetReleaser(&memdbReleaser{m: fm})
- its = append(its, fmi)
- }
- its = append(its, tableIts...)
- mi := iterator.NewMergedIterator(its, db.s.icmp, strict)
- mi.SetReleaser(&versionReleaser{v: v})
- return mi
-}
-
-func (db *DB) newIterator(auxm *memDB, auxt tFiles, seq uint64, slice *util.Range, ro *opt.ReadOptions) *dbIter {
- var islice *util.Range
- if slice != nil {
- islice = &util.Range{}
- if slice.Start != nil {
- islice.Start = makeInternalKey(nil, slice.Start, keyMaxSeq, keyTypeSeek)
- }
- if slice.Limit != nil {
- islice.Limit = makeInternalKey(nil, slice.Limit, keyMaxSeq, keyTypeSeek)
- }
- }
- rawIter := db.newRawIterator(auxm, auxt, islice, ro)
- iter := &dbIter{
- db: db,
- icmp: db.s.icmp,
- iter: rawIter,
- seq: seq,
- strict: opt.GetStrict(db.s.o.Options, ro, opt.StrictReader),
- key: make([]byte, 0),
- value: make([]byte, 0),
- }
- atomic.AddInt32(&db.aliveIters, 1)
- runtime.SetFinalizer(iter, (*dbIter).Release)
- return iter
-}
-
-func (db *DB) iterSamplingRate() int {
- return rand.Intn(2 * db.s.o.GetIteratorSamplingRate())
-}
-
-type dir int
-
-const (
- dirReleased dir = iota - 1
- dirSOI
- dirEOI
- dirBackward
- dirForward
-)
-
-// dbIter represent an interator states over a database session.
-type dbIter struct {
- db *DB
- icmp *iComparer
- iter iterator.Iterator
- seq uint64
- strict bool
-
- smaplingGap int
- dir dir
- key []byte
- value []byte
- err error
- releaser util.Releaser
-}
-
-func (i *dbIter) sampleSeek() {
- ikey := i.iter.Key()
- i.smaplingGap -= len(ikey) + len(i.iter.Value())
- for i.smaplingGap < 0 {
- i.smaplingGap += i.db.iterSamplingRate()
- i.db.sampleSeek(ikey)
- }
-}
-
-func (i *dbIter) setErr(err error) {
- i.err = err
- i.key = nil
- i.value = nil
-}
-
-func (i *dbIter) iterErr() {
- if err := i.iter.Error(); err != nil {
- i.setErr(err)
- }
-}
-
-func (i *dbIter) Valid() bool {
- return i.err == nil && i.dir > dirEOI
-}
-
-func (i *dbIter) First() bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- if i.iter.First() {
- i.dir = dirSOI
- return i.next()
- }
- i.dir = dirEOI
- i.iterErr()
- return false
-}
-
-func (i *dbIter) Last() bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- if i.iter.Last() {
- return i.prev()
- }
- i.dir = dirSOI
- i.iterErr()
- return false
-}
-
-func (i *dbIter) Seek(key []byte) bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- ikey := makeInternalKey(nil, key, i.seq, keyTypeSeek)
- if i.iter.Seek(ikey) {
- i.dir = dirSOI
- return i.next()
- }
- i.dir = dirEOI
- i.iterErr()
- return false
-}
-
-func (i *dbIter) next() bool {
- for {
- if ukey, seq, kt, kerr := parseInternalKey(i.iter.Key()); kerr == nil {
- i.sampleSeek()
- if seq <= i.seq {
- switch kt {
- case keyTypeDel:
- // Skip deleted key.
- i.key = append(i.key[:0], ukey...)
- i.dir = dirForward
- case keyTypeVal:
- if i.dir == dirSOI || i.icmp.uCompare(ukey, i.key) > 0 {
- i.key = append(i.key[:0], ukey...)
- i.value = append(i.value[:0], i.iter.Value()...)
- i.dir = dirForward
- return true
- }
- }
- }
- } else if i.strict {
- i.setErr(kerr)
- break
- }
- if !i.iter.Next() {
- i.dir = dirEOI
- i.iterErr()
- break
- }
- }
- return false
-}
-
-func (i *dbIter) Next() bool {
- if i.dir == dirEOI || i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- if !i.iter.Next() || (i.dir == dirBackward && !i.iter.Next()) {
- i.dir = dirEOI
- i.iterErr()
- return false
- }
- return i.next()
-}
-
-func (i *dbIter) prev() bool {
- i.dir = dirBackward
- del := true
- if i.iter.Valid() {
- for {
- if ukey, seq, kt, kerr := parseInternalKey(i.iter.Key()); kerr == nil {
- i.sampleSeek()
- if seq <= i.seq {
- if !del && i.icmp.uCompare(ukey, i.key) < 0 {
- return true
- }
- del = (kt == keyTypeDel)
- if !del {
- i.key = append(i.key[:0], ukey...)
- i.value = append(i.value[:0], i.iter.Value()...)
- }
- }
- } else if i.strict {
- i.setErr(kerr)
- return false
- }
- if !i.iter.Prev() {
- break
- }
- }
- }
- if del {
- i.dir = dirSOI
- i.iterErr()
- return false
- }
- return true
-}
-
-func (i *dbIter) Prev() bool {
- if i.dir == dirSOI || i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- switch i.dir {
- case dirEOI:
- return i.Last()
- case dirForward:
- for i.iter.Prev() {
- if ukey, _, _, kerr := parseInternalKey(i.iter.Key()); kerr == nil {
- i.sampleSeek()
- if i.icmp.uCompare(ukey, i.key) < 0 {
- goto cont
- }
- } else if i.strict {
- i.setErr(kerr)
- return false
- }
- }
- i.dir = dirSOI
- i.iterErr()
- return false
- }
-
-cont:
- return i.prev()
-}
-
-func (i *dbIter) Key() []byte {
- if i.err != nil || i.dir <= dirEOI {
- return nil
- }
- return i.key
-}
-
-func (i *dbIter) Value() []byte {
- if i.err != nil || i.dir <= dirEOI {
- return nil
- }
- return i.value
-}
-
-func (i *dbIter) Release() {
- if i.dir != dirReleased {
- // Clear the finalizer.
- runtime.SetFinalizer(i, nil)
-
- if i.releaser != nil {
- i.releaser.Release()
- i.releaser = nil
- }
-
- i.dir = dirReleased
- i.key = nil
- i.value = nil
- i.iter.Release()
- i.iter = nil
- atomic.AddInt32(&i.db.aliveIters, -1)
- i.db = nil
- }
-}
-
-func (i *dbIter) SetReleaser(releaser util.Releaser) {
- if i.dir == dirReleased {
- panic(util.ErrReleased)
- }
- if i.releaser != nil && releaser != nil {
- panic(util.ErrHasReleaser)
- }
- i.releaser = releaser
-}
-
-func (i *dbIter) Error() error {
- return i.err
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_snapshot.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_snapshot.go
deleted file mode 100644
index c2ad70c8..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_snapshot.go
+++ /dev/null
@@ -1,187 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "container/list"
- "fmt"
- "runtime"
- "sync"
- "sync/atomic"
-
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-type snapshotElement struct {
- seq uint64
- ref int
- e *list.Element
-}
-
-// Acquires a snapshot, based on latest sequence.
-func (db *DB) acquireSnapshot() *snapshotElement {
- db.snapsMu.Lock()
- defer db.snapsMu.Unlock()
-
- seq := db.getSeq()
-
- if e := db.snapsList.Back(); e != nil {
- se := e.Value.(*snapshotElement)
- if se.seq == seq {
- se.ref++
- return se
- } else if seq < se.seq {
- panic("leveldb: sequence number is not increasing")
- }
- }
- se := &snapshotElement{seq: seq, ref: 1}
- se.e = db.snapsList.PushBack(se)
- return se
-}
-
-// Releases given snapshot element.
-func (db *DB) releaseSnapshot(se *snapshotElement) {
- db.snapsMu.Lock()
- defer db.snapsMu.Unlock()
-
- se.ref--
- if se.ref == 0 {
- db.snapsList.Remove(se.e)
- se.e = nil
- } else if se.ref < 0 {
- panic("leveldb: Snapshot: negative element reference")
- }
-}
-
-// Gets minimum sequence that not being snapshotted.
-func (db *DB) minSeq() uint64 {
- db.snapsMu.Lock()
- defer db.snapsMu.Unlock()
-
- if e := db.snapsList.Front(); e != nil {
- return e.Value.(*snapshotElement).seq
- }
-
- return db.getSeq()
-}
-
-// Snapshot is a DB snapshot.
-type Snapshot struct {
- db *DB
- elem *snapshotElement
- mu sync.RWMutex
- released bool
-}
-
-// Creates new snapshot object.
-func (db *DB) newSnapshot() *Snapshot {
- snap := &Snapshot{
- db: db,
- elem: db.acquireSnapshot(),
- }
- atomic.AddInt32(&db.aliveSnaps, 1)
- runtime.SetFinalizer(snap, (*Snapshot).Release)
- return snap
-}
-
-func (snap *Snapshot) String() string {
- return fmt.Sprintf("leveldb.Snapshot{%d}", snap.elem.seq)
-}
-
-// Get gets the value for the given key. It returns ErrNotFound if
-// the DB does not contains the key.
-//
-// The caller should not modify the contents of the returned slice, but
-// it is safe to modify the contents of the argument after Get returns.
-func (snap *Snapshot) Get(key []byte, ro *opt.ReadOptions) (value []byte, err error) {
- err = snap.db.ok()
- if err != nil {
- return
- }
- snap.mu.RLock()
- defer snap.mu.RUnlock()
- if snap.released {
- err = ErrSnapshotReleased
- return
- }
- return snap.db.get(nil, nil, key, snap.elem.seq, ro)
-}
-
-// Has returns true if the DB does contains the given key.
-//
-// It is safe to modify the contents of the argument after Get returns.
-func (snap *Snapshot) Has(key []byte, ro *opt.ReadOptions) (ret bool, err error) {
- err = snap.db.ok()
- if err != nil {
- return
- }
- snap.mu.RLock()
- defer snap.mu.RUnlock()
- if snap.released {
- err = ErrSnapshotReleased
- return
- }
- return snap.db.has(nil, nil, key, snap.elem.seq, ro)
-}
-
-// NewIterator returns an iterator for the snapshot of the underlying DB.
-// The returned iterator is not safe for concurrent use, but it is safe to use
-// multiple iterators concurrently, with each in a dedicated goroutine.
-// It is also safe to use an iterator concurrently with modifying its
-// underlying DB. The resultant key/value pairs are guaranteed to be
-// consistent.
-//
-// Slice allows slicing the iterator to only contains keys in the given
-// range. A nil Range.Start is treated as a key before all keys in the
-// DB. And a nil Range.Limit is treated as a key after all keys in
-// the DB.
-//
-// WARNING: Any slice returned by interator (e.g. slice returned by calling
-// Iterator.Key() or Iterator.Value() methods), its content should not be
-// modified unless noted otherwise.
-//
-// The iterator must be released after use, by calling Release method.
-// Releasing the snapshot doesn't mean releasing the iterator too, the
-// iterator would be still valid until released.
-//
-// Also read Iterator documentation of the leveldb/iterator package.
-func (snap *Snapshot) NewIterator(slice *util.Range, ro *opt.ReadOptions) iterator.Iterator {
- if err := snap.db.ok(); err != nil {
- return iterator.NewEmptyIterator(err)
- }
- snap.mu.Lock()
- defer snap.mu.Unlock()
- if snap.released {
- return iterator.NewEmptyIterator(ErrSnapshotReleased)
- }
- // Since iterator already hold version ref, it doesn't need to
- // hold snapshot ref.
- return snap.db.newIterator(nil, nil, snap.elem.seq, slice, ro)
-}
-
-// Release releases the snapshot. This will not release any returned
-// iterators, the iterators would still be valid until released or the
-// underlying DB is closed.
-//
-// Other methods should not be called after the snapshot has been released.
-func (snap *Snapshot) Release() {
- snap.mu.Lock()
- defer snap.mu.Unlock()
-
- if !snap.released {
- // Clear the finalizer.
- runtime.SetFinalizer(snap, nil)
-
- snap.released = true
- snap.db.releaseSnapshot(snap.elem)
- atomic.AddInt32(&snap.db.aliveSnaps, -1)
- snap.db = nil
- snap.elem = nil
- }
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_state.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_state.go
deleted file mode 100644
index 65e1c54b..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_state.go
+++ /dev/null
@@ -1,239 +0,0 @@
-// Copyright (c) 2013, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "errors"
- "sync/atomic"
- "time"
-
- "github.com/syndtr/goleveldb/leveldb/journal"
- "github.com/syndtr/goleveldb/leveldb/memdb"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-var (
- errHasFrozenMem = errors.New("has frozen mem")
-)
-
-type memDB struct {
- db *DB
- *memdb.DB
- ref int32
-}
-
-func (m *memDB) getref() int32 {
- return atomic.LoadInt32(&m.ref)
-}
-
-func (m *memDB) incref() {
- atomic.AddInt32(&m.ref, 1)
-}
-
-func (m *memDB) decref() {
- if ref := atomic.AddInt32(&m.ref, -1); ref == 0 {
- // Only put back memdb with std capacity.
- if m.Capacity() == m.db.s.o.GetWriteBuffer() {
- m.Reset()
- m.db.mpoolPut(m.DB)
- }
- m.db = nil
- m.DB = nil
- } else if ref < 0 {
- panic("negative memdb ref")
- }
-}
-
-// Get latest sequence number.
-func (db *DB) getSeq() uint64 {
- return atomic.LoadUint64(&db.seq)
-}
-
-// Atomically adds delta to seq.
-func (db *DB) addSeq(delta uint64) {
- atomic.AddUint64(&db.seq, delta)
-}
-
-func (db *DB) setSeq(seq uint64) {
- atomic.StoreUint64(&db.seq, seq)
-}
-
-func (db *DB) sampleSeek(ikey internalKey) {
- v := db.s.version()
- if v.sampleSeek(ikey) {
- // Trigger table compaction.
- db.compTrigger(db.tcompCmdC)
- }
- v.release()
-}
-
-func (db *DB) mpoolPut(mem *memdb.DB) {
- if !db.isClosed() {
- select {
- case db.memPool <- mem:
- default:
- }
- }
-}
-
-func (db *DB) mpoolGet(n int) *memDB {
- var mdb *memdb.DB
- select {
- case mdb = <-db.memPool:
- default:
- }
- if mdb == nil || mdb.Capacity() < n {
- mdb = memdb.New(db.s.icmp, maxInt(db.s.o.GetWriteBuffer(), n))
- }
- return &memDB{
- db: db,
- DB: mdb,
- }
-}
-
-func (db *DB) mpoolDrain() {
- ticker := time.NewTicker(30 * time.Second)
- for {
- select {
- case <-ticker.C:
- select {
- case <-db.memPool:
- default:
- }
- case <-db.closeC:
- ticker.Stop()
- // Make sure the pool is drained.
- select {
- case <-db.memPool:
- case <-time.After(time.Second):
- }
- close(db.memPool)
- return
- }
- }
-}
-
-// Create new memdb and froze the old one; need external synchronization.
-// newMem only called synchronously by the writer.
-func (db *DB) newMem(n int) (mem *memDB, err error) {
- fd := storage.FileDesc{Type: storage.TypeJournal, Num: db.s.allocFileNum()}
- w, err := db.s.stor.Create(fd)
- if err != nil {
- db.s.reuseFileNum(fd.Num)
- return
- }
-
- db.memMu.Lock()
- defer db.memMu.Unlock()
-
- if db.frozenMem != nil {
- return nil, errHasFrozenMem
- }
-
- if db.journal == nil {
- db.journal = journal.NewWriter(w)
- } else {
- db.journal.Reset(w)
- db.journalWriter.Close()
- db.frozenJournalFd = db.journalFd
- }
- db.journalWriter = w
- db.journalFd = fd
- db.frozenMem = db.mem
- mem = db.mpoolGet(n)
- mem.incref() // for self
- mem.incref() // for caller
- db.mem = mem
- // The seq only incremented by the writer. And whoever called newMem
- // should hold write lock, so no need additional synchronization here.
- db.frozenSeq = db.seq
- return
-}
-
-// Get all memdbs.
-func (db *DB) getMems() (e, f *memDB) {
- db.memMu.RLock()
- defer db.memMu.RUnlock()
- if db.mem != nil {
- db.mem.incref()
- } else if !db.isClosed() {
- panic("nil effective mem")
- }
- if db.frozenMem != nil {
- db.frozenMem.incref()
- }
- return db.mem, db.frozenMem
-}
-
-// Get effective memdb.
-func (db *DB) getEffectiveMem() *memDB {
- db.memMu.RLock()
- defer db.memMu.RUnlock()
- if db.mem != nil {
- db.mem.incref()
- } else if !db.isClosed() {
- panic("nil effective mem")
- }
- return db.mem
-}
-
-// Check whether we has frozen memdb.
-func (db *DB) hasFrozenMem() bool {
- db.memMu.RLock()
- defer db.memMu.RUnlock()
- return db.frozenMem != nil
-}
-
-// Get frozen memdb.
-func (db *DB) getFrozenMem() *memDB {
- db.memMu.RLock()
- defer db.memMu.RUnlock()
- if db.frozenMem != nil {
- db.frozenMem.incref()
- }
- return db.frozenMem
-}
-
-// Drop frozen memdb; assume that frozen memdb isn't nil.
-func (db *DB) dropFrozenMem() {
- db.memMu.Lock()
- if err := db.s.stor.Remove(db.frozenJournalFd); err != nil {
- db.logf("journal@remove removing @%d %q", db.frozenJournalFd.Num, err)
- } else {
- db.logf("journal@remove removed @%d", db.frozenJournalFd.Num)
- }
- db.frozenJournalFd = storage.FileDesc{}
- db.frozenMem.decref()
- db.frozenMem = nil
- db.memMu.Unlock()
-}
-
-// Clear mems ptr; used by DB.Close().
-func (db *DB) clearMems() {
- db.memMu.Lock()
- db.mem = nil
- db.frozenMem = nil
- db.memMu.Unlock()
-}
-
-// Set closed flag; return true if not already closed.
-func (db *DB) setClosed() bool {
- return atomic.CompareAndSwapUint32(&db.closed, 0, 1)
-}
-
-// Check whether DB was closed.
-func (db *DB) isClosed() bool {
- return atomic.LoadUint32(&db.closed) != 0
-}
-
-// Check read ok status.
-func (db *DB) ok() error {
- if db.isClosed() {
- return ErrClosed
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_transaction.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_transaction.go
deleted file mode 100644
index 1a000018..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_transaction.go
+++ /dev/null
@@ -1,329 +0,0 @@
-// Copyright (c) 2016, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "errors"
- "sync"
- "time"
-
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-var errTransactionDone = errors.New("leveldb: transaction already closed")
-
-// Transaction is the transaction handle.
-type Transaction struct {
- db *DB
- lk sync.RWMutex
- seq uint64
- mem *memDB
- tables tFiles
- ikScratch []byte
- rec sessionRecord
- stats cStatStaging
- closed bool
-}
-
-// Get gets the value for the given key. It returns ErrNotFound if the
-// DB does not contains the key.
-//
-// The returned slice is its own copy, it is safe to modify the contents
-// of the returned slice.
-// It is safe to modify the contents of the argument after Get returns.
-func (tr *Transaction) Get(key []byte, ro *opt.ReadOptions) ([]byte, error) {
- tr.lk.RLock()
- defer tr.lk.RUnlock()
- if tr.closed {
- return nil, errTransactionDone
- }
- return tr.db.get(tr.mem.DB, tr.tables, key, tr.seq, ro)
-}
-
-// Has returns true if the DB does contains the given key.
-//
-// It is safe to modify the contents of the argument after Has returns.
-func (tr *Transaction) Has(key []byte, ro *opt.ReadOptions) (bool, error) {
- tr.lk.RLock()
- defer tr.lk.RUnlock()
- if tr.closed {
- return false, errTransactionDone
- }
- return tr.db.has(tr.mem.DB, tr.tables, key, tr.seq, ro)
-}
-
-// NewIterator returns an iterator for the latest snapshot of the transaction.
-// The returned iterator is not safe for concurrent use, but it is safe to use
-// multiple iterators concurrently, with each in a dedicated goroutine.
-// It is also safe to use an iterator concurrently while writes to the
-// transaction. The resultant key/value pairs are guaranteed to be consistent.
-//
-// Slice allows slicing the iterator to only contains keys in the given
-// range. A nil Range.Start is treated as a key before all keys in the
-// DB. And a nil Range.Limit is treated as a key after all keys in
-// the DB.
-//
-// WARNING: Any slice returned by interator (e.g. slice returned by calling
-// Iterator.Key() or Iterator.Key() methods), its content should not be modified
-// unless noted otherwise.
-//
-// The iterator must be released after use, by calling Release method.
-//
-// Also read Iterator documentation of the leveldb/iterator package.
-func (tr *Transaction) NewIterator(slice *util.Range, ro *opt.ReadOptions) iterator.Iterator {
- tr.lk.RLock()
- defer tr.lk.RUnlock()
- if tr.closed {
- return iterator.NewEmptyIterator(errTransactionDone)
- }
- tr.mem.incref()
- return tr.db.newIterator(tr.mem, tr.tables, tr.seq, slice, ro)
-}
-
-func (tr *Transaction) flush() error {
- // Flush memdb.
- if tr.mem.Len() != 0 {
- tr.stats.startTimer()
- iter := tr.mem.NewIterator(nil)
- t, n, err := tr.db.s.tops.createFrom(iter)
- iter.Release()
- tr.stats.stopTimer()
- if err != nil {
- return err
- }
- if tr.mem.getref() == 1 {
- tr.mem.Reset()
- } else {
- tr.mem.decref()
- tr.mem = tr.db.mpoolGet(0)
- tr.mem.incref()
- }
- tr.tables = append(tr.tables, t)
- tr.rec.addTableFile(0, t)
- tr.stats.write += t.size
- tr.db.logf("transaction@flush created L0@%d N·%d S·%s %q:%q", t.fd.Num, n, shortenb(int(t.size)), t.imin, t.imax)
- }
- return nil
-}
-
-func (tr *Transaction) put(kt keyType, key, value []byte) error {
- tr.ikScratch = makeInternalKey(tr.ikScratch, key, tr.seq+1, kt)
- if tr.mem.Free() < len(tr.ikScratch)+len(value) {
- if err := tr.flush(); err != nil {
- return err
- }
- }
- if err := tr.mem.Put(tr.ikScratch, value); err != nil {
- return err
- }
- tr.seq++
- return nil
-}
-
-// Put sets the value for the given key. It overwrites any previous value
-// for that key; a DB is not a multi-map.
-// Please note that the transaction is not compacted until committed, so if you
-// writes 10 same keys, then those 10 same keys are in the transaction.
-//
-// It is safe to modify the contents of the arguments after Put returns.
-func (tr *Transaction) Put(key, value []byte, wo *opt.WriteOptions) error {
- tr.lk.Lock()
- defer tr.lk.Unlock()
- if tr.closed {
- return errTransactionDone
- }
- return tr.put(keyTypeVal, key, value)
-}
-
-// Delete deletes the value for the given key.
-// Please note that the transaction is not compacted until committed, so if you
-// writes 10 same keys, then those 10 same keys are in the transaction.
-//
-// It is safe to modify the contents of the arguments after Delete returns.
-func (tr *Transaction) Delete(key []byte, wo *opt.WriteOptions) error {
- tr.lk.Lock()
- defer tr.lk.Unlock()
- if tr.closed {
- return errTransactionDone
- }
- return tr.put(keyTypeDel, key, nil)
-}
-
-// Write apply the given batch to the transaction. The batch will be applied
-// sequentially.
-// Please note that the transaction is not compacted until committed, so if you
-// writes 10 same keys, then those 10 same keys are in the transaction.
-//
-// It is safe to modify the contents of the arguments after Write returns.
-func (tr *Transaction) Write(b *Batch, wo *opt.WriteOptions) error {
- if b == nil || b.Len() == 0 {
- return nil
- }
-
- tr.lk.Lock()
- defer tr.lk.Unlock()
- if tr.closed {
- return errTransactionDone
- }
- return b.replayInternal(func(i int, kt keyType, k, v []byte) error {
- return tr.put(kt, k, v)
- })
-}
-
-func (tr *Transaction) setDone() {
- tr.closed = true
- tr.db.tr = nil
- tr.mem.decref()
- <-tr.db.writeLockC
-}
-
-// Commit commits the transaction. If error is not nil, then the transaction is
-// not committed, it can then either be retried or discarded.
-//
-// Other methods should not be called after transaction has been committed.
-func (tr *Transaction) Commit() error {
- if err := tr.db.ok(); err != nil {
- return err
- }
-
- tr.lk.Lock()
- defer tr.lk.Unlock()
- if tr.closed {
- return errTransactionDone
- }
- if err := tr.flush(); err != nil {
- // Return error, lets user decide either to retry or discard
- // transaction.
- return err
- }
- if len(tr.tables) != 0 {
- // Committing transaction.
- tr.rec.setSeqNum(tr.seq)
- tr.db.compCommitLk.Lock()
- tr.stats.startTimer()
- var cerr error
- for retry := 0; retry < 3; retry++ {
- cerr = tr.db.s.commit(&tr.rec)
- if cerr != nil {
- tr.db.logf("transaction@commit error R·%d %q", retry, cerr)
- select {
- case <-time.After(time.Second):
- case <-tr.db.closeC:
- tr.db.logf("transaction@commit exiting")
- tr.db.compCommitLk.Unlock()
- return cerr
- }
- } else {
- // Success. Set db.seq.
- tr.db.setSeq(tr.seq)
- break
- }
- }
- tr.stats.stopTimer()
- if cerr != nil {
- // Return error, lets user decide either to retry or discard
- // transaction.
- return cerr
- }
-
- // Update compaction stats. This is safe as long as we hold compCommitLk.
- tr.db.compStats.addStat(0, &tr.stats)
-
- // Trigger table auto-compaction.
- tr.db.compTrigger(tr.db.tcompCmdC)
- tr.db.compCommitLk.Unlock()
-
- // Additionally, wait compaction when certain threshold reached.
- // Ignore error, returns error only if transaction can't be committed.
- tr.db.waitCompaction()
- }
- // Only mark as done if transaction committed successfully.
- tr.setDone()
- return nil
-}
-
-func (tr *Transaction) discard() {
- // Discard transaction.
- for _, t := range tr.tables {
- tr.db.logf("transaction@discard @%d", t.fd.Num)
- if err1 := tr.db.s.stor.Remove(t.fd); err1 == nil {
- tr.db.s.reuseFileNum(t.fd.Num)
- }
- }
-}
-
-// Discard discards the transaction.
-//
-// Other methods should not be called after transaction has been discarded.
-func (tr *Transaction) Discard() {
- tr.lk.Lock()
- if !tr.closed {
- tr.discard()
- tr.setDone()
- }
- tr.lk.Unlock()
-}
-
-func (db *DB) waitCompaction() error {
- if db.s.tLen(0) >= db.s.o.GetWriteL0PauseTrigger() {
- return db.compTriggerWait(db.tcompCmdC)
- }
- return nil
-}
-
-// OpenTransaction opens an atomic DB transaction. Only one transaction can be
-// opened at a time. Subsequent call to Write and OpenTransaction will be blocked
-// until in-flight transaction is committed or discarded.
-// The returned transaction handle is safe for concurrent use.
-//
-// Transaction is expensive and can overwhelm compaction, especially if
-// transaction size is small. Use with caution.
-//
-// The transaction must be closed once done, either by committing or discarding
-// the transaction.
-// Closing the DB will discard open transaction.
-func (db *DB) OpenTransaction() (*Transaction, error) {
- if err := db.ok(); err != nil {
- return nil, err
- }
-
- // The write happen synchronously.
- select {
- case db.writeLockC <- struct{}{}:
- case err := <-db.compPerErrC:
- return nil, err
- case <-db.closeC:
- return nil, ErrClosed
- }
-
- if db.tr != nil {
- panic("leveldb: has open transaction")
- }
-
- // Flush current memdb.
- if db.mem != nil && db.mem.Len() != 0 {
- if _, err := db.rotateMem(0, true); err != nil {
- return nil, err
- }
- }
-
- // Wait compaction when certain threshold reached.
- if err := db.waitCompaction(); err != nil {
- return nil, err
- }
-
- tr := &Transaction{
- db: db,
- seq: db.seq,
- mem: db.mpoolGet(0),
- }
- tr.mem.incref()
- db.tr = tr
- return tr, nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_util.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_util.go
deleted file mode 100644
index 3f065489..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_util.go
+++ /dev/null
@@ -1,102 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/storage"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// Reader is the interface that wraps basic Get and NewIterator methods.
-// This interface implemented by both DB and Snapshot.
-type Reader interface {
- Get(key []byte, ro *opt.ReadOptions) (value []byte, err error)
- NewIterator(slice *util.Range, ro *opt.ReadOptions) iterator.Iterator
-}
-
-// Sizes is list of size.
-type Sizes []int64
-
-// Sum returns sum of the sizes.
-func (sizes Sizes) Sum() int64 {
- var sum int64
- for _, size := range sizes {
- sum += size
- }
- return sum
-}
-
-// Logging.
-func (db *DB) log(v ...interface{}) { db.s.log(v...) }
-func (db *DB) logf(format string, v ...interface{}) { db.s.logf(format, v...) }
-
-// Check and clean files.
-func (db *DB) checkAndCleanFiles() error {
- v := db.s.version()
- defer v.release()
-
- tmap := make(map[int64]bool)
- for _, tables := range v.levels {
- for _, t := range tables {
- tmap[t.fd.Num] = false
- }
- }
-
- fds, err := db.s.stor.List(storage.TypeAll)
- if err != nil {
- return err
- }
-
- var nt int
- var rem []storage.FileDesc
- for _, fd := range fds {
- keep := true
- switch fd.Type {
- case storage.TypeManifest:
- keep = fd.Num >= db.s.manifestFd.Num
- case storage.TypeJournal:
- if !db.frozenJournalFd.Zero() {
- keep = fd.Num >= db.frozenJournalFd.Num
- } else {
- keep = fd.Num >= db.journalFd.Num
- }
- case storage.TypeTable:
- _, keep = tmap[fd.Num]
- if keep {
- tmap[fd.Num] = true
- nt++
- }
- }
-
- if !keep {
- rem = append(rem, fd)
- }
- }
-
- if nt != len(tmap) {
- var mfds []storage.FileDesc
- for num, present := range tmap {
- if !present {
- mfds = append(mfds, storage.FileDesc{Type: storage.TypeTable, Num: num})
- db.logf("db@janitor table missing @%d", num)
- }
- }
- return errors.NewErrCorrupted(storage.FileDesc{}, &errors.ErrMissingFiles{Fds: mfds})
- }
-
- db.logf("db@janitor F·%d G·%d", len(fds), len(rem))
- for _, fd := range rem {
- db.logf("db@janitor removing %s-%d", fd.Type, fd.Num)
- if err := db.s.stor.Remove(fd); err != nil {
- return err
- }
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/db_write.go b/vendor/github.com/syndtr/goleveldb/leveldb/db_write.go
deleted file mode 100644
index db0c1bec..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/db_write.go
+++ /dev/null
@@ -1,464 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "sync/atomic"
- "time"
-
- "github.com/syndtr/goleveldb/leveldb/memdb"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-func (db *DB) writeJournal(batches []*Batch, seq uint64, sync bool) error {
- wr, err := db.journal.Next()
- if err != nil {
- return err
- }
- if err := writeBatchesWithHeader(wr, batches, seq); err != nil {
- return err
- }
- if err := db.journal.Flush(); err != nil {
- return err
- }
- if sync {
- return db.journalWriter.Sync()
- }
- return nil
-}
-
-func (db *DB) rotateMem(n int, wait bool) (mem *memDB, err error) {
- retryLimit := 3
-retry:
- // Wait for pending memdb compaction.
- err = db.compTriggerWait(db.mcompCmdC)
- if err != nil {
- return
- }
- retryLimit--
-
- // Create new memdb and journal.
- mem, err = db.newMem(n)
- if err != nil {
- if err == errHasFrozenMem {
- if retryLimit <= 0 {
- panic("BUG: still has frozen memdb")
- }
- goto retry
- }
- return
- }
-
- // Schedule memdb compaction.
- if wait {
- err = db.compTriggerWait(db.mcompCmdC)
- } else {
- db.compTrigger(db.mcompCmdC)
- }
- return
-}
-
-func (db *DB) flush(n int) (mdb *memDB, mdbFree int, err error) {
- delayed := false
- slowdownTrigger := db.s.o.GetWriteL0SlowdownTrigger()
- pauseTrigger := db.s.o.GetWriteL0PauseTrigger()
- flush := func() (retry bool) {
- mdb = db.getEffectiveMem()
- if mdb == nil {
- err = ErrClosed
- return false
- }
- defer func() {
- if retry {
- mdb.decref()
- mdb = nil
- }
- }()
- tLen := db.s.tLen(0)
- mdbFree = mdb.Free()
- switch {
- case tLen >= slowdownTrigger && !delayed:
- delayed = true
- time.Sleep(time.Millisecond)
- case mdbFree >= n:
- return false
- case tLen >= pauseTrigger:
- delayed = true
- // Set the write paused flag explicitly.
- atomic.StoreInt32(&db.inWritePaused, 1)
- err = db.compTriggerWait(db.tcompCmdC)
- // Unset the write paused flag.
- atomic.StoreInt32(&db.inWritePaused, 0)
- if err != nil {
- return false
- }
- default:
- // Allow memdb to grow if it has no entry.
- if mdb.Len() == 0 {
- mdbFree = n
- } else {
- mdb.decref()
- mdb, err = db.rotateMem(n, false)
- if err == nil {
- mdbFree = mdb.Free()
- } else {
- mdbFree = 0
- }
- }
- return false
- }
- return true
- }
- start := time.Now()
- for flush() {
- }
- if delayed {
- db.writeDelay += time.Since(start)
- db.writeDelayN++
- } else if db.writeDelayN > 0 {
- db.logf("db@write was delayed N·%d T·%v", db.writeDelayN, db.writeDelay)
- atomic.AddInt32(&db.cWriteDelayN, int32(db.writeDelayN))
- atomic.AddInt64(&db.cWriteDelay, int64(db.writeDelay))
- db.writeDelay = 0
- db.writeDelayN = 0
- }
- return
-}
-
-type writeMerge struct {
- sync bool
- batch *Batch
- keyType keyType
- key, value []byte
-}
-
-func (db *DB) unlockWrite(overflow bool, merged int, err error) {
- for i := 0; i < merged; i++ {
- db.writeAckC <- err
- }
- if overflow {
- // Pass lock to the next write (that failed to merge).
- db.writeMergedC <- false
- } else {
- // Release lock.
- <-db.writeLockC
- }
-}
-
-// ourBatch is batch that we can modify.
-func (db *DB) writeLocked(batch, ourBatch *Batch, merge, sync bool) error {
- // Try to flush memdb. This method would also trying to throttle writes
- // if it is too fast and compaction cannot catch-up.
- mdb, mdbFree, err := db.flush(batch.internalLen)
- if err != nil {
- db.unlockWrite(false, 0, err)
- return err
- }
- defer mdb.decref()
-
- var (
- overflow bool
- merged int
- batches = []*Batch{batch}
- )
-
- if merge {
- // Merge limit.
- var mergeLimit int
- if batch.internalLen > 128<<10 {
- mergeLimit = (1 << 20) - batch.internalLen
- } else {
- mergeLimit = 128 << 10
- }
- mergeCap := mdbFree - batch.internalLen
- if mergeLimit > mergeCap {
- mergeLimit = mergeCap
- }
-
- merge:
- for mergeLimit > 0 {
- select {
- case incoming := <-db.writeMergeC:
- if incoming.batch != nil {
- // Merge batch.
- if incoming.batch.internalLen > mergeLimit {
- overflow = true
- break merge
- }
- batches = append(batches, incoming.batch)
- mergeLimit -= incoming.batch.internalLen
- } else {
- // Merge put.
- internalLen := len(incoming.key) + len(incoming.value) + 8
- if internalLen > mergeLimit {
- overflow = true
- break merge
- }
- if ourBatch == nil {
- ourBatch = db.batchPool.Get().(*Batch)
- ourBatch.Reset()
- batches = append(batches, ourBatch)
- }
- // We can use same batch since concurrent write doesn't
- // guarantee write order.
- ourBatch.appendRec(incoming.keyType, incoming.key, incoming.value)
- mergeLimit -= internalLen
- }
- sync = sync || incoming.sync
- merged++
- db.writeMergedC <- true
-
- default:
- break merge
- }
- }
- }
-
- // Release ourBatch if any.
- if ourBatch != nil {
- defer db.batchPool.Put(ourBatch)
- }
-
- // Seq number.
- seq := db.seq + 1
-
- // Write journal.
- if err := db.writeJournal(batches, seq, sync); err != nil {
- db.unlockWrite(overflow, merged, err)
- return err
- }
-
- // Put batches.
- for _, batch := range batches {
- if err := batch.putMem(seq, mdb.DB); err != nil {
- panic(err)
- }
- seq += uint64(batch.Len())
- }
-
- // Incr seq number.
- db.addSeq(uint64(batchesLen(batches)))
-
- // Rotate memdb if it's reach the threshold.
- if batch.internalLen >= mdbFree {
- db.rotateMem(0, false)
- }
-
- db.unlockWrite(overflow, merged, nil)
- return nil
-}
-
-// Write apply the given batch to the DB. The batch records will be applied
-// sequentially. Write might be used concurrently, when used concurrently and
-// batch is small enough, write will try to merge the batches. Set NoWriteMerge
-// option to true to disable write merge.
-//
-// It is safe to modify the contents of the arguments after Write returns but
-// not before. Write will not modify content of the batch.
-func (db *DB) Write(batch *Batch, wo *opt.WriteOptions) error {
- if err := db.ok(); err != nil || batch == nil || batch.Len() == 0 {
- return err
- }
-
- // If the batch size is larger than write buffer, it may justified to write
- // using transaction instead. Using transaction the batch will be written
- // into tables directly, skipping the journaling.
- if batch.internalLen > db.s.o.GetWriteBuffer() && !db.s.o.GetDisableLargeBatchTransaction() {
- tr, err := db.OpenTransaction()
- if err != nil {
- return err
- }
- if err := tr.Write(batch, wo); err != nil {
- tr.Discard()
- return err
- }
- return tr.Commit()
- }
-
- merge := !wo.GetNoWriteMerge() && !db.s.o.GetNoWriteMerge()
- sync := wo.GetSync() && !db.s.o.GetNoSync()
-
- // Acquire write lock.
- if merge {
- select {
- case db.writeMergeC <- writeMerge{sync: sync, batch: batch}:
- if <-db.writeMergedC {
- // Write is merged.
- return <-db.writeAckC
- }
- // Write is not merged, the write lock is handed to us. Continue.
- case db.writeLockC <- struct{}{}:
- // Write lock acquired.
- case err := <-db.compPerErrC:
- // Compaction error.
- return err
- case <-db.closeC:
- // Closed
- return ErrClosed
- }
- } else {
- select {
- case db.writeLockC <- struct{}{}:
- // Write lock acquired.
- case err := <-db.compPerErrC:
- // Compaction error.
- return err
- case <-db.closeC:
- // Closed
- return ErrClosed
- }
- }
-
- return db.writeLocked(batch, nil, merge, sync)
-}
-
-func (db *DB) putRec(kt keyType, key, value []byte, wo *opt.WriteOptions) error {
- if err := db.ok(); err != nil {
- return err
- }
-
- merge := !wo.GetNoWriteMerge() && !db.s.o.GetNoWriteMerge()
- sync := wo.GetSync() && !db.s.o.GetNoSync()
-
- // Acquire write lock.
- if merge {
- select {
- case db.writeMergeC <- writeMerge{sync: sync, keyType: kt, key: key, value: value}:
- if <-db.writeMergedC {
- // Write is merged.
- return <-db.writeAckC
- }
- // Write is not merged, the write lock is handed to us. Continue.
- case db.writeLockC <- struct{}{}:
- // Write lock acquired.
- case err := <-db.compPerErrC:
- // Compaction error.
- return err
- case <-db.closeC:
- // Closed
- return ErrClosed
- }
- } else {
- select {
- case db.writeLockC <- struct{}{}:
- // Write lock acquired.
- case err := <-db.compPerErrC:
- // Compaction error.
- return err
- case <-db.closeC:
- // Closed
- return ErrClosed
- }
- }
-
- batch := db.batchPool.Get().(*Batch)
- batch.Reset()
- batch.appendRec(kt, key, value)
- return db.writeLocked(batch, batch, merge, sync)
-}
-
-// Put sets the value for the given key. It overwrites any previous value
-// for that key; a DB is not a multi-map. Write merge also applies for Put, see
-// Write.
-//
-// It is safe to modify the contents of the arguments after Put returns but not
-// before.
-func (db *DB) Put(key, value []byte, wo *opt.WriteOptions) error {
- return db.putRec(keyTypeVal, key, value, wo)
-}
-
-// Delete deletes the value for the given key. Delete will not returns error if
-// key doesn't exist. Write merge also applies for Delete, see Write.
-//
-// It is safe to modify the contents of the arguments after Delete returns but
-// not before.
-func (db *DB) Delete(key []byte, wo *opt.WriteOptions) error {
- return db.putRec(keyTypeDel, key, nil, wo)
-}
-
-func isMemOverlaps(icmp *iComparer, mem *memdb.DB, min, max []byte) bool {
- iter := mem.NewIterator(nil)
- defer iter.Release()
- return (max == nil || (iter.First() && icmp.uCompare(max, internalKey(iter.Key()).ukey()) >= 0)) &&
- (min == nil || (iter.Last() && icmp.uCompare(min, internalKey(iter.Key()).ukey()) <= 0))
-}
-
-// CompactRange compacts the underlying DB for the given key range.
-// In particular, deleted and overwritten versions are discarded,
-// and the data is rearranged to reduce the cost of operations
-// needed to access the data. This operation should typically only
-// be invoked by users who understand the underlying implementation.
-//
-// A nil Range.Start is treated as a key before all keys in the DB.
-// And a nil Range.Limit is treated as a key after all keys in the DB.
-// Therefore if both is nil then it will compact entire DB.
-func (db *DB) CompactRange(r util.Range) error {
- if err := db.ok(); err != nil {
- return err
- }
-
- // Lock writer.
- select {
- case db.writeLockC <- struct{}{}:
- case err := <-db.compPerErrC:
- return err
- case <-db.closeC:
- return ErrClosed
- }
-
- // Check for overlaps in memdb.
- mdb := db.getEffectiveMem()
- if mdb == nil {
- return ErrClosed
- }
- defer mdb.decref()
- if isMemOverlaps(db.s.icmp, mdb.DB, r.Start, r.Limit) {
- // Memdb compaction.
- if _, err := db.rotateMem(0, false); err != nil {
- <-db.writeLockC
- return err
- }
- <-db.writeLockC
- if err := db.compTriggerWait(db.mcompCmdC); err != nil {
- return err
- }
- } else {
- <-db.writeLockC
- }
-
- // Table compaction.
- return db.compTriggerRange(db.tcompCmdC, -1, r.Start, r.Limit)
-}
-
-// SetReadOnly makes DB read-only. It will stay read-only until reopened.
-func (db *DB) SetReadOnly() error {
- if err := db.ok(); err != nil {
- return err
- }
-
- // Lock writer.
- select {
- case db.writeLockC <- struct{}{}:
- db.compWriteLocking = true
- case err := <-db.compPerErrC:
- return err
- case <-db.closeC:
- return ErrClosed
- }
-
- // Set compaction read-only.
- select {
- case db.compErrSetC <- ErrReadOnly:
- case perr := <-db.compPerErrC:
- return perr
- case <-db.closeC:
- return ErrClosed
- }
-
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/doc.go b/vendor/github.com/syndtr/goleveldb/leveldb/doc.go
deleted file mode 100644
index be768e57..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/doc.go
+++ /dev/null
@@ -1,92 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package leveldb provides implementation of LevelDB key/value database.
-//
-// Create or open a database:
-//
-// // The returned DB instance is safe for concurrent use. Which mean that all
-// // DB's methods may be called concurrently from multiple goroutine.
-// db, err := leveldb.OpenFile("path/to/db", nil)
-// ...
-// defer db.Close()
-// ...
-//
-// Read or modify the database content:
-//
-// // Remember that the contents of the returned slice should not be modified.
-// data, err := db.Get([]byte("key"), nil)
-// ...
-// err = db.Put([]byte("key"), []byte("value"), nil)
-// ...
-// err = db.Delete([]byte("key"), nil)
-// ...
-//
-// Iterate over database content:
-//
-// iter := db.NewIterator(nil, nil)
-// for iter.Next() {
-// // Remember that the contents of the returned slice should not be modified, and
-// // only valid until the next call to Next.
-// key := iter.Key()
-// value := iter.Value()
-// ...
-// }
-// iter.Release()
-// err = iter.Error()
-// ...
-//
-// Iterate over subset of database content with a particular prefix:
-// iter := db.NewIterator(util.BytesPrefix([]byte("foo-")), nil)
-// for iter.Next() {
-// // Use key/value.
-// ...
-// }
-// iter.Release()
-// err = iter.Error()
-// ...
-//
-// Seek-then-Iterate:
-//
-// iter := db.NewIterator(nil, nil)
-// for ok := iter.Seek(key); ok; ok = iter.Next() {
-// // Use key/value.
-// ...
-// }
-// iter.Release()
-// err = iter.Error()
-// ...
-//
-// Iterate over subset of database content:
-//
-// iter := db.NewIterator(&util.Range{Start: []byte("foo"), Limit: []byte("xoo")}, nil)
-// for iter.Next() {
-// // Use key/value.
-// ...
-// }
-// iter.Release()
-// err = iter.Error()
-// ...
-//
-// Batch writes:
-//
-// batch := new(leveldb.Batch)
-// batch.Put([]byte("foo"), []byte("value"))
-// batch.Put([]byte("bar"), []byte("another value"))
-// batch.Delete([]byte("baz"))
-// err = db.Write(batch, nil)
-// ...
-//
-// Use bloom filter:
-//
-// o := &opt.Options{
-// Filter: filter.NewBloomFilter(10),
-// }
-// db, err := leveldb.OpenFile("path/to/db", o)
-// ...
-// defer db.Close()
-// ...
-package leveldb
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/errors.go b/vendor/github.com/syndtr/goleveldb/leveldb/errors.go
deleted file mode 100644
index de264981..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/errors.go
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copyright (c) 2014, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "github.com/syndtr/goleveldb/leveldb/errors"
-)
-
-// Common errors.
-var (
- ErrNotFound = errors.ErrNotFound
- ErrReadOnly = errors.New("leveldb: read-only mode")
- ErrSnapshotReleased = errors.New("leveldb: snapshot released")
- ErrIterReleased = errors.New("leveldb: iterator released")
- ErrClosed = errors.New("leveldb: closed")
-)
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/errors/errors.go b/vendor/github.com/syndtr/goleveldb/leveldb/errors/errors.go
deleted file mode 100644
index 8d6146b6..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/errors/errors.go
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright (c) 2014, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package errors provides common error types used throughout leveldb.
-package errors
-
-import (
- "errors"
- "fmt"
-
- "github.com/syndtr/goleveldb/leveldb/storage"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// Common errors.
-var (
- ErrNotFound = New("leveldb: not found")
- ErrReleased = util.ErrReleased
- ErrHasReleaser = util.ErrHasReleaser
-)
-
-// New returns an error that formats as the given text.
-func New(text string) error {
- return errors.New(text)
-}
-
-// ErrCorrupted is the type that wraps errors that indicate corruption in
-// the database.
-type ErrCorrupted struct {
- Fd storage.FileDesc
- Err error
-}
-
-func (e *ErrCorrupted) Error() string {
- if !e.Fd.Zero() {
- return fmt.Sprintf("%v [file=%v]", e.Err, e.Fd)
- }
- return e.Err.Error()
-}
-
-// NewErrCorrupted creates new ErrCorrupted error.
-func NewErrCorrupted(fd storage.FileDesc, err error) error {
- return &ErrCorrupted{fd, err}
-}
-
-// IsCorrupted returns a boolean indicating whether the error is indicating
-// a corruption.
-func IsCorrupted(err error) bool {
- switch err.(type) {
- case *ErrCorrupted:
- return true
- case *storage.ErrCorrupted:
- return true
- }
- return false
-}
-
-// ErrMissingFiles is the type that indicating a corruption due to missing
-// files. ErrMissingFiles always wrapped with ErrCorrupted.
-type ErrMissingFiles struct {
- Fds []storage.FileDesc
-}
-
-func (e *ErrMissingFiles) Error() string { return "file missing" }
-
-// SetFd sets 'file info' of the given error with the given file.
-// Currently only ErrCorrupted is supported, otherwise will do nothing.
-func SetFd(err error, fd storage.FileDesc) error {
- switch x := err.(type) {
- case *ErrCorrupted:
- x.Fd = fd
- return x
- }
- return err
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/filter.go b/vendor/github.com/syndtr/goleveldb/leveldb/filter.go
deleted file mode 100644
index e961e420..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/filter.go
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "github.com/syndtr/goleveldb/leveldb/filter"
-)
-
-type iFilter struct {
- filter.Filter
-}
-
-func (f iFilter) Contains(filter, key []byte) bool {
- return f.Filter.Contains(filter, internalKey(key).ukey())
-}
-
-func (f iFilter) NewGenerator() filter.FilterGenerator {
- return iFilterGenerator{f.Filter.NewGenerator()}
-}
-
-type iFilterGenerator struct {
- filter.FilterGenerator
-}
-
-func (g iFilterGenerator) Add(key []byte) {
- g.FilterGenerator.Add(internalKey(key).ukey())
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/filter/bloom.go b/vendor/github.com/syndtr/goleveldb/leveldb/filter/bloom.go
deleted file mode 100644
index bab0e997..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/filter/bloom.go
+++ /dev/null
@@ -1,116 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package filter
-
-import (
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-func bloomHash(key []byte) uint32 {
- return util.Hash(key, 0xbc9f1d34)
-}
-
-type bloomFilter int
-
-// The bloom filter serializes its parameters and is backward compatible
-// with respect to them. Therefor, its parameters are not added to its
-// name.
-func (bloomFilter) Name() string {
- return "leveldb.BuiltinBloomFilter"
-}
-
-func (f bloomFilter) Contains(filter, key []byte) bool {
- nBytes := len(filter) - 1
- if nBytes < 1 {
- return false
- }
- nBits := uint32(nBytes * 8)
-
- // Use the encoded k so that we can read filters generated by
- // bloom filters created using different parameters.
- k := filter[nBytes]
- if k > 30 {
- // Reserved for potentially new encodings for short bloom filters.
- // Consider it a match.
- return true
- }
-
- kh := bloomHash(key)
- delta := (kh >> 17) | (kh << 15) // Rotate right 17 bits
- for j := uint8(0); j < k; j++ {
- bitpos := kh % nBits
- if (uint32(filter[bitpos/8]) & (1 << (bitpos % 8))) == 0 {
- return false
- }
- kh += delta
- }
- return true
-}
-
-func (f bloomFilter) NewGenerator() FilterGenerator {
- // Round down to reduce probing cost a little bit.
- k := uint8(f * 69 / 100) // 0.69 =~ ln(2)
- if k < 1 {
- k = 1
- } else if k > 30 {
- k = 30
- }
- return &bloomFilterGenerator{
- n: int(f),
- k: k,
- }
-}
-
-type bloomFilterGenerator struct {
- n int
- k uint8
-
- keyHashes []uint32
-}
-
-func (g *bloomFilterGenerator) Add(key []byte) {
- // Use double-hashing to generate a sequence of hash values.
- // See analysis in [Kirsch,Mitzenmacher 2006].
- g.keyHashes = append(g.keyHashes, bloomHash(key))
-}
-
-func (g *bloomFilterGenerator) Generate(b Buffer) {
- // Compute bloom filter size (in both bits and bytes)
- nBits := uint32(len(g.keyHashes) * g.n)
- // For small n, we can see a very high false positive rate. Fix it
- // by enforcing a minimum bloom filter length.
- if nBits < 64 {
- nBits = 64
- }
- nBytes := (nBits + 7) / 8
- nBits = nBytes * 8
-
- dest := b.Alloc(int(nBytes) + 1)
- dest[nBytes] = g.k
- for _, kh := range g.keyHashes {
- delta := (kh >> 17) | (kh << 15) // Rotate right 17 bits
- for j := uint8(0); j < g.k; j++ {
- bitpos := kh % nBits
- dest[bitpos/8] |= (1 << (bitpos % 8))
- kh += delta
- }
- }
-
- g.keyHashes = g.keyHashes[:0]
-}
-
-// NewBloomFilter creates a new initialized bloom filter for given
-// bitsPerKey.
-//
-// Since bitsPerKey is persisted individually for each bloom filter
-// serialization, bloom filters are backwards compatible with respect to
-// changing bitsPerKey. This means that no big performance penalty will
-// be experienced when changing the parameter. See documentation for
-// opt.Options.Filter for more information.
-func NewBloomFilter(bitsPerKey int) Filter {
- return bloomFilter(bitsPerKey)
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/filter/filter.go b/vendor/github.com/syndtr/goleveldb/leveldb/filter/filter.go
deleted file mode 100644
index 7a925c5a..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/filter/filter.go
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package filter provides interface and implementation of probabilistic
-// data structure.
-//
-// The filter is resposible for creating small filter from a set of keys.
-// These filter will then used to test whether a key is a member of the set.
-// In many cases, a filter can cut down the number of disk seeks from a
-// handful to a single disk seek per DB.Get call.
-package filter
-
-// Buffer is the interface that wraps basic Alloc, Write and WriteByte methods.
-type Buffer interface {
- // Alloc allocs n bytes of slice from the buffer. This also advancing
- // write offset.
- Alloc(n int) []byte
-
- // Write appends the contents of p to the buffer.
- Write(p []byte) (n int, err error)
-
- // WriteByte appends the byte c to the buffer.
- WriteByte(c byte) error
-}
-
-// Filter is the filter.
-type Filter interface {
- // Name returns the name of this policy.
- //
- // Note that if the filter encoding changes in an incompatible way,
- // the name returned by this method must be changed. Otherwise, old
- // incompatible filters may be passed to methods of this type.
- Name() string
-
- // NewGenerator creates a new filter generator.
- NewGenerator() FilterGenerator
-
- // Contains returns true if the filter contains the given key.
- //
- // The filter are filters generated by the filter generator.
- Contains(filter, key []byte) bool
-}
-
-// FilterGenerator is the filter generator.
-type FilterGenerator interface {
- // Add adds a key to the filter generator.
- //
- // The key may become invalid after call to this method end, therefor
- // key must be copied if implementation require keeping key for later
- // use. The key should not modified directly, doing so may cause
- // undefined results.
- Add(key []byte)
-
- // Generate generates filters based on keys passed so far. After call
- // to Generate the filter generator maybe resetted, depends on implementation.
- Generate(b Buffer)
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/array_iter.go b/vendor/github.com/syndtr/goleveldb/leveldb/iterator/array_iter.go
deleted file mode 100644
index a23ab05f..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/array_iter.go
+++ /dev/null
@@ -1,184 +0,0 @@
-// Copyright (c) 2014, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package iterator
-
-import (
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// BasicArray is the interface that wraps basic Len and Search method.
-type BasicArray interface {
- // Len returns length of the array.
- Len() int
-
- // Search finds smallest index that point to a key that is greater
- // than or equal to the given key.
- Search(key []byte) int
-}
-
-// Array is the interface that wraps BasicArray and basic Index method.
-type Array interface {
- BasicArray
-
- // Index returns key/value pair with index of i.
- Index(i int) (key, value []byte)
-}
-
-// Array is the interface that wraps BasicArray and basic Get method.
-type ArrayIndexer interface {
- BasicArray
-
- // Get returns a new data iterator with index of i.
- Get(i int) Iterator
-}
-
-type basicArrayIterator struct {
- util.BasicReleaser
- array BasicArray
- pos int
- err error
-}
-
-func (i *basicArrayIterator) Valid() bool {
- return i.pos >= 0 && i.pos < i.array.Len() && !i.Released()
-}
-
-func (i *basicArrayIterator) First() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- if i.array.Len() == 0 {
- i.pos = -1
- return false
- }
- i.pos = 0
- return true
-}
-
-func (i *basicArrayIterator) Last() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- n := i.array.Len()
- if n == 0 {
- i.pos = 0
- return false
- }
- i.pos = n - 1
- return true
-}
-
-func (i *basicArrayIterator) Seek(key []byte) bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- n := i.array.Len()
- if n == 0 {
- i.pos = 0
- return false
- }
- i.pos = i.array.Search(key)
- if i.pos >= n {
- return false
- }
- return true
-}
-
-func (i *basicArrayIterator) Next() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- i.pos++
- if n := i.array.Len(); i.pos >= n {
- i.pos = n
- return false
- }
- return true
-}
-
-func (i *basicArrayIterator) Prev() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- i.pos--
- if i.pos < 0 {
- i.pos = -1
- return false
- }
- return true
-}
-
-func (i *basicArrayIterator) Error() error { return i.err }
-
-type arrayIterator struct {
- basicArrayIterator
- array Array
- pos int
- key, value []byte
-}
-
-func (i *arrayIterator) updateKV() {
- if i.pos == i.basicArrayIterator.pos {
- return
- }
- i.pos = i.basicArrayIterator.pos
- if i.Valid() {
- i.key, i.value = i.array.Index(i.pos)
- } else {
- i.key = nil
- i.value = nil
- }
-}
-
-func (i *arrayIterator) Key() []byte {
- i.updateKV()
- return i.key
-}
-
-func (i *arrayIterator) Value() []byte {
- i.updateKV()
- return i.value
-}
-
-type arrayIteratorIndexer struct {
- basicArrayIterator
- array ArrayIndexer
-}
-
-func (i *arrayIteratorIndexer) Get() Iterator {
- if i.Valid() {
- return i.array.Get(i.basicArrayIterator.pos)
- }
- return nil
-}
-
-// NewArrayIterator returns an iterator from the given array.
-func NewArrayIterator(array Array) Iterator {
- return &arrayIterator{
- basicArrayIterator: basicArrayIterator{array: array, pos: -1},
- array: array,
- pos: -1,
- }
-}
-
-// NewArrayIndexer returns an index iterator from the given array.
-func NewArrayIndexer(array ArrayIndexer) IteratorIndexer {
- return &arrayIteratorIndexer{
- basicArrayIterator: basicArrayIterator{array: array, pos: -1},
- array: array,
- }
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/indexed_iter.go b/vendor/github.com/syndtr/goleveldb/leveldb/iterator/indexed_iter.go
deleted file mode 100644
index 939adbb9..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/indexed_iter.go
+++ /dev/null
@@ -1,242 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package iterator
-
-import (
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// IteratorIndexer is the interface that wraps CommonIterator and basic Get
-// method. IteratorIndexer provides index for indexed iterator.
-type IteratorIndexer interface {
- CommonIterator
-
- // Get returns a new data iterator for the current position, or nil if
- // done.
- Get() Iterator
-}
-
-type indexedIterator struct {
- util.BasicReleaser
- index IteratorIndexer
- strict bool
-
- data Iterator
- err error
- errf func(err error)
- closed bool
-}
-
-func (i *indexedIterator) setData() {
- if i.data != nil {
- i.data.Release()
- }
- i.data = i.index.Get()
-}
-
-func (i *indexedIterator) clearData() {
- if i.data != nil {
- i.data.Release()
- }
- i.data = nil
-}
-
-func (i *indexedIterator) indexErr() {
- if err := i.index.Error(); err != nil {
- if i.errf != nil {
- i.errf(err)
- }
- i.err = err
- }
-}
-
-func (i *indexedIterator) dataErr() bool {
- if err := i.data.Error(); err != nil {
- if i.errf != nil {
- i.errf(err)
- }
- if i.strict || !errors.IsCorrupted(err) {
- i.err = err
- return true
- }
- }
- return false
-}
-
-func (i *indexedIterator) Valid() bool {
- return i.data != nil && i.data.Valid()
-}
-
-func (i *indexedIterator) First() bool {
- if i.err != nil {
- return false
- } else if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- if !i.index.First() {
- i.indexErr()
- i.clearData()
- return false
- }
- i.setData()
- return i.Next()
-}
-
-func (i *indexedIterator) Last() bool {
- if i.err != nil {
- return false
- } else if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- if !i.index.Last() {
- i.indexErr()
- i.clearData()
- return false
- }
- i.setData()
- if !i.data.Last() {
- if i.dataErr() {
- return false
- }
- i.clearData()
- return i.Prev()
- }
- return true
-}
-
-func (i *indexedIterator) Seek(key []byte) bool {
- if i.err != nil {
- return false
- } else if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- if !i.index.Seek(key) {
- i.indexErr()
- i.clearData()
- return false
- }
- i.setData()
- if !i.data.Seek(key) {
- if i.dataErr() {
- return false
- }
- i.clearData()
- return i.Next()
- }
- return true
-}
-
-func (i *indexedIterator) Next() bool {
- if i.err != nil {
- return false
- } else if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- switch {
- case i.data != nil && !i.data.Next():
- if i.dataErr() {
- return false
- }
- i.clearData()
- fallthrough
- case i.data == nil:
- if !i.index.Next() {
- i.indexErr()
- return false
- }
- i.setData()
- return i.Next()
- }
- return true
-}
-
-func (i *indexedIterator) Prev() bool {
- if i.err != nil {
- return false
- } else if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- switch {
- case i.data != nil && !i.data.Prev():
- if i.dataErr() {
- return false
- }
- i.clearData()
- fallthrough
- case i.data == nil:
- if !i.index.Prev() {
- i.indexErr()
- return false
- }
- i.setData()
- if !i.data.Last() {
- if i.dataErr() {
- return false
- }
- i.clearData()
- return i.Prev()
- }
- }
- return true
-}
-
-func (i *indexedIterator) Key() []byte {
- if i.data == nil {
- return nil
- }
- return i.data.Key()
-}
-
-func (i *indexedIterator) Value() []byte {
- if i.data == nil {
- return nil
- }
- return i.data.Value()
-}
-
-func (i *indexedIterator) Release() {
- i.clearData()
- i.index.Release()
- i.BasicReleaser.Release()
-}
-
-func (i *indexedIterator) Error() error {
- if i.err != nil {
- return i.err
- }
- if err := i.index.Error(); err != nil {
- return err
- }
- return nil
-}
-
-func (i *indexedIterator) SetErrorCallback(f func(err error)) {
- i.errf = f
-}
-
-// NewIndexedIterator returns an 'indexed iterator'. An index is iterator
-// that returns another iterator, a 'data iterator'. A 'data iterator' is the
-// iterator that contains actual key/value pairs.
-//
-// If strict is true the any 'corruption errors' (i.e errors.IsCorrupted(err) == true)
-// won't be ignored and will halt 'indexed iterator', otherwise the iterator will
-// continue to the next 'data iterator'. Corruption on 'index iterator' will not be
-// ignored and will halt the iterator.
-func NewIndexedIterator(index IteratorIndexer, strict bool) Iterator {
- return &indexedIterator{index: index, strict: strict}
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/iter.go b/vendor/github.com/syndtr/goleveldb/leveldb/iterator/iter.go
deleted file mode 100644
index 96fb0f68..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/iter.go
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package iterator provides interface and implementation to traverse over
-// contents of a database.
-package iterator
-
-import (
- "errors"
-
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-var (
- ErrIterReleased = errors.New("leveldb/iterator: iterator released")
-)
-
-// IteratorSeeker is the interface that wraps the 'seeks method'.
-type IteratorSeeker interface {
- // First moves the iterator to the first key/value pair. If the iterator
- // only contains one key/value pair then First and Last would moves
- // to the same key/value pair.
- // It returns whether such pair exist.
- First() bool
-
- // Last moves the iterator to the last key/value pair. If the iterator
- // only contains one key/value pair then First and Last would moves
- // to the same key/value pair.
- // It returns whether such pair exist.
- Last() bool
-
- // Seek moves the iterator to the first key/value pair whose key is greater
- // than or equal to the given key.
- // It returns whether such pair exist.
- //
- // It is safe to modify the contents of the argument after Seek returns.
- Seek(key []byte) bool
-
- // Next moves the iterator to the next key/value pair.
- // It returns false if the iterator is exhausted.
- Next() bool
-
- // Prev moves the iterator to the previous key/value pair.
- // It returns false if the iterator is exhausted.
- Prev() bool
-}
-
-// CommonIterator is the interface that wraps common iterator methods.
-type CommonIterator interface {
- IteratorSeeker
-
- // util.Releaser is the interface that wraps basic Release method.
- // When called Release will releases any resources associated with the
- // iterator.
- util.Releaser
-
- // util.ReleaseSetter is the interface that wraps the basic SetReleaser
- // method.
- util.ReleaseSetter
-
- // TODO: Remove this when ready.
- Valid() bool
-
- // Error returns any accumulated error. Exhausting all the key/value pairs
- // is not considered to be an error.
- Error() error
-}
-
-// Iterator iterates over a DB's key/value pairs in key order.
-//
-// When encounter an error any 'seeks method' will return false and will
-// yield no key/value pairs. The error can be queried by calling the Error
-// method. Calling Release is still necessary.
-//
-// An iterator must be released after use, but it is not necessary to read
-// an iterator until exhaustion.
-// Also, an iterator is not necessarily safe for concurrent use, but it is
-// safe to use multiple iterators concurrently, with each in a dedicated
-// goroutine.
-type Iterator interface {
- CommonIterator
-
- // Key returns the key of the current key/value pair, or nil if done.
- // The caller should not modify the contents of the returned slice, and
- // its contents may change on the next call to any 'seeks method'.
- Key() []byte
-
- // Value returns the value of the current key/value pair, or nil if done.
- // The caller should not modify the contents of the returned slice, and
- // its contents may change on the next call to any 'seeks method'.
- Value() []byte
-}
-
-// ErrorCallbackSetter is the interface that wraps basic SetErrorCallback
-// method.
-//
-// ErrorCallbackSetter implemented by indexed and merged iterator.
-type ErrorCallbackSetter interface {
- // SetErrorCallback allows set an error callback of the corresponding
- // iterator. Use nil to clear the callback.
- SetErrorCallback(f func(err error))
-}
-
-type emptyIterator struct {
- util.BasicReleaser
- err error
-}
-
-func (i *emptyIterator) rErr() {
- if i.err == nil && i.Released() {
- i.err = ErrIterReleased
- }
-}
-
-func (*emptyIterator) Valid() bool { return false }
-func (i *emptyIterator) First() bool { i.rErr(); return false }
-func (i *emptyIterator) Last() bool { i.rErr(); return false }
-func (i *emptyIterator) Seek(key []byte) bool { i.rErr(); return false }
-func (i *emptyIterator) Next() bool { i.rErr(); return false }
-func (i *emptyIterator) Prev() bool { i.rErr(); return false }
-func (*emptyIterator) Key() []byte { return nil }
-func (*emptyIterator) Value() []byte { return nil }
-func (i *emptyIterator) Error() error { return i.err }
-
-// NewEmptyIterator creates an empty iterator. The err parameter can be
-// nil, but if not nil the given err will be returned by Error method.
-func NewEmptyIterator(err error) Iterator {
- return &emptyIterator{err: err}
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/merged_iter.go b/vendor/github.com/syndtr/goleveldb/leveldb/iterator/merged_iter.go
deleted file mode 100644
index 1a7e29df..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/iterator/merged_iter.go
+++ /dev/null
@@ -1,304 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package iterator
-
-import (
- "github.com/syndtr/goleveldb/leveldb/comparer"
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-type dir int
-
-const (
- dirReleased dir = iota - 1
- dirSOI
- dirEOI
- dirBackward
- dirForward
-)
-
-type mergedIterator struct {
- cmp comparer.Comparer
- iters []Iterator
- strict bool
-
- keys [][]byte
- index int
- dir dir
- err error
- errf func(err error)
- releaser util.Releaser
-}
-
-func assertKey(key []byte) []byte {
- if key == nil {
- panic("leveldb/iterator: nil key")
- }
- return key
-}
-
-func (i *mergedIterator) iterErr(iter Iterator) bool {
- if err := iter.Error(); err != nil {
- if i.errf != nil {
- i.errf(err)
- }
- if i.strict || !errors.IsCorrupted(err) {
- i.err = err
- return true
- }
- }
- return false
-}
-
-func (i *mergedIterator) Valid() bool {
- return i.err == nil && i.dir > dirEOI
-}
-
-func (i *mergedIterator) First() bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- for x, iter := range i.iters {
- switch {
- case iter.First():
- i.keys[x] = assertKey(iter.Key())
- case i.iterErr(iter):
- return false
- default:
- i.keys[x] = nil
- }
- }
- i.dir = dirSOI
- return i.next()
-}
-
-func (i *mergedIterator) Last() bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- for x, iter := range i.iters {
- switch {
- case iter.Last():
- i.keys[x] = assertKey(iter.Key())
- case i.iterErr(iter):
- return false
- default:
- i.keys[x] = nil
- }
- }
- i.dir = dirEOI
- return i.prev()
-}
-
-func (i *mergedIterator) Seek(key []byte) bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- for x, iter := range i.iters {
- switch {
- case iter.Seek(key):
- i.keys[x] = assertKey(iter.Key())
- case i.iterErr(iter):
- return false
- default:
- i.keys[x] = nil
- }
- }
- i.dir = dirSOI
- return i.next()
-}
-
-func (i *mergedIterator) next() bool {
- var key []byte
- if i.dir == dirForward {
- key = i.keys[i.index]
- }
- for x, tkey := range i.keys {
- if tkey != nil && (key == nil || i.cmp.Compare(tkey, key) < 0) {
- key = tkey
- i.index = x
- }
- }
- if key == nil {
- i.dir = dirEOI
- return false
- }
- i.dir = dirForward
- return true
-}
-
-func (i *mergedIterator) Next() bool {
- if i.dir == dirEOI || i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- switch i.dir {
- case dirSOI:
- return i.First()
- case dirBackward:
- key := append([]byte{}, i.keys[i.index]...)
- if !i.Seek(key) {
- return false
- }
- return i.Next()
- }
-
- x := i.index
- iter := i.iters[x]
- switch {
- case iter.Next():
- i.keys[x] = assertKey(iter.Key())
- case i.iterErr(iter):
- return false
- default:
- i.keys[x] = nil
- }
- return i.next()
-}
-
-func (i *mergedIterator) prev() bool {
- var key []byte
- if i.dir == dirBackward {
- key = i.keys[i.index]
- }
- for x, tkey := range i.keys {
- if tkey != nil && (key == nil || i.cmp.Compare(tkey, key) > 0) {
- key = tkey
- i.index = x
- }
- }
- if key == nil {
- i.dir = dirSOI
- return false
- }
- i.dir = dirBackward
- return true
-}
-
-func (i *mergedIterator) Prev() bool {
- if i.dir == dirSOI || i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- switch i.dir {
- case dirEOI:
- return i.Last()
- case dirForward:
- key := append([]byte{}, i.keys[i.index]...)
- for x, iter := range i.iters {
- if x == i.index {
- continue
- }
- seek := iter.Seek(key)
- switch {
- case seek && iter.Prev(), !seek && iter.Last():
- i.keys[x] = assertKey(iter.Key())
- case i.iterErr(iter):
- return false
- default:
- i.keys[x] = nil
- }
- }
- }
-
- x := i.index
- iter := i.iters[x]
- switch {
- case iter.Prev():
- i.keys[x] = assertKey(iter.Key())
- case i.iterErr(iter):
- return false
- default:
- i.keys[x] = nil
- }
- return i.prev()
-}
-
-func (i *mergedIterator) Key() []byte {
- if i.err != nil || i.dir <= dirEOI {
- return nil
- }
- return i.keys[i.index]
-}
-
-func (i *mergedIterator) Value() []byte {
- if i.err != nil || i.dir <= dirEOI {
- return nil
- }
- return i.iters[i.index].Value()
-}
-
-func (i *mergedIterator) Release() {
- if i.dir != dirReleased {
- i.dir = dirReleased
- for _, iter := range i.iters {
- iter.Release()
- }
- i.iters = nil
- i.keys = nil
- if i.releaser != nil {
- i.releaser.Release()
- i.releaser = nil
- }
- }
-}
-
-func (i *mergedIterator) SetReleaser(releaser util.Releaser) {
- if i.dir == dirReleased {
- panic(util.ErrReleased)
- }
- if i.releaser != nil && releaser != nil {
- panic(util.ErrHasReleaser)
- }
- i.releaser = releaser
-}
-
-func (i *mergedIterator) Error() error {
- return i.err
-}
-
-func (i *mergedIterator) SetErrorCallback(f func(err error)) {
- i.errf = f
-}
-
-// NewMergedIterator returns an iterator that merges its input. Walking the
-// resultant iterator will return all key/value pairs of all input iterators
-// in strictly increasing key order, as defined by cmp.
-// The input's key ranges may overlap, but there are assumed to be no duplicate
-// keys: if iters[i] contains a key k then iters[j] will not contain that key k.
-// None of the iters may be nil.
-//
-// If strict is true the any 'corruption errors' (i.e errors.IsCorrupted(err) == true)
-// won't be ignored and will halt 'merged iterator', otherwise the iterator will
-// continue to the next 'input iterator'.
-func NewMergedIterator(iters []Iterator, cmp comparer.Comparer, strict bool) Iterator {
- return &mergedIterator{
- iters: iters,
- cmp: cmp,
- strict: strict,
- keys: make([][]byte, len(iters)),
- }
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/journal/journal.go b/vendor/github.com/syndtr/goleveldb/leveldb/journal/journal.go
deleted file mode 100644
index d094c3d0..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/journal/journal.go
+++ /dev/null
@@ -1,524 +0,0 @@
-// Copyright 2011 The LevelDB-Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// Taken from: https://code.google.com/p/leveldb-go/source/browse/leveldb/record/record.go?r=1d5ccbe03246da926391ee12d1c6caae054ff4b0
-// License, authors and contributors informations can be found at bellow URLs respectively:
-// https://code.google.com/p/leveldb-go/source/browse/LICENSE
-// https://code.google.com/p/leveldb-go/source/browse/AUTHORS
-// https://code.google.com/p/leveldb-go/source/browse/CONTRIBUTORS
-
-// Package journal reads and writes sequences of journals. Each journal is a stream
-// of bytes that completes before the next journal starts.
-//
-// When reading, call Next to obtain an io.Reader for the next journal. Next will
-// return io.EOF when there are no more journals. It is valid to call Next
-// without reading the current journal to exhaustion.
-//
-// When writing, call Next to obtain an io.Writer for the next journal. Calling
-// Next finishes the current journal. Call Close to finish the final journal.
-//
-// Optionally, call Flush to finish the current journal and flush the underlying
-// writer without starting a new journal. To start a new journal after flushing,
-// call Next.
-//
-// Neither Readers or Writers are safe to use concurrently.
-//
-// Example code:
-// func read(r io.Reader) ([]string, error) {
-// var ss []string
-// journals := journal.NewReader(r, nil, true, true)
-// for {
-// j, err := journals.Next()
-// if err == io.EOF {
-// break
-// }
-// if err != nil {
-// return nil, err
-// }
-// s, err := ioutil.ReadAll(j)
-// if err != nil {
-// return nil, err
-// }
-// ss = append(ss, string(s))
-// }
-// return ss, nil
-// }
-//
-// func write(w io.Writer, ss []string) error {
-// journals := journal.NewWriter(w)
-// for _, s := range ss {
-// j, err := journals.Next()
-// if err != nil {
-// return err
-// }
-// if _, err := j.Write([]byte(s)), err != nil {
-// return err
-// }
-// }
-// return journals.Close()
-// }
-//
-// The wire format is that the stream is divided into 32KiB blocks, and each
-// block contains a number of tightly packed chunks. Chunks cannot cross block
-// boundaries. The last block may be shorter than 32 KiB. Any unused bytes in a
-// block must be zero.
-//
-// A journal maps to one or more chunks. Each chunk has a 7 byte header (a 4
-// byte checksum, a 2 byte little-endian uint16 length, and a 1 byte chunk type)
-// followed by a payload. The checksum is over the chunk type and the payload.
-//
-// There are four chunk types: whether the chunk is the full journal, or the
-// first, middle or last chunk of a multi-chunk journal. A multi-chunk journal
-// has one first chunk, zero or more middle chunks, and one last chunk.
-//
-// The wire format allows for limited recovery in the face of data corruption:
-// on a format error (such as a checksum mismatch), the reader moves to the
-// next block and looks for the next full or first chunk.
-package journal
-
-import (
- "encoding/binary"
- "fmt"
- "io"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/storage"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// These constants are part of the wire format and should not be changed.
-const (
- fullChunkType = 1
- firstChunkType = 2
- middleChunkType = 3
- lastChunkType = 4
-)
-
-const (
- blockSize = 32 * 1024
- headerSize = 7
-)
-
-type flusher interface {
- Flush() error
-}
-
-// ErrCorrupted is the error type that generated by corrupted block or chunk.
-type ErrCorrupted struct {
- Size int
- Reason string
-}
-
-func (e *ErrCorrupted) Error() string {
- return fmt.Sprintf("leveldb/journal: block/chunk corrupted: %s (%d bytes)", e.Reason, e.Size)
-}
-
-// Dropper is the interface that wrap simple Drop method. The Drop
-// method will be called when the journal reader dropping a block or chunk.
-type Dropper interface {
- Drop(err error)
-}
-
-// Reader reads journals from an underlying io.Reader.
-type Reader struct {
- // r is the underlying reader.
- r io.Reader
- // the dropper.
- dropper Dropper
- // strict flag.
- strict bool
- // checksum flag.
- checksum bool
- // seq is the sequence number of the current journal.
- seq int
- // buf[i:j] is the unread portion of the current chunk's payload.
- // The low bound, i, excludes the chunk header.
- i, j int
- // n is the number of bytes of buf that are valid. Once reading has started,
- // only the final block can have n < blockSize.
- n int
- // last is whether the current chunk is the last chunk of the journal.
- last bool
- // err is any accumulated error.
- err error
- // buf is the buffer.
- buf [blockSize]byte
-}
-
-// NewReader returns a new reader. The dropper may be nil, and if
-// strict is true then corrupted or invalid chunk will halt the journal
-// reader entirely.
-func NewReader(r io.Reader, dropper Dropper, strict, checksum bool) *Reader {
- return &Reader{
- r: r,
- dropper: dropper,
- strict: strict,
- checksum: checksum,
- last: true,
- }
-}
-
-var errSkip = errors.New("leveldb/journal: skipped")
-
-func (r *Reader) corrupt(n int, reason string, skip bool) error {
- if r.dropper != nil {
- r.dropper.Drop(&ErrCorrupted{n, reason})
- }
- if r.strict && !skip {
- r.err = errors.NewErrCorrupted(storage.FileDesc{}, &ErrCorrupted{n, reason})
- return r.err
- }
- return errSkip
-}
-
-// nextChunk sets r.buf[r.i:r.j] to hold the next chunk's payload, reading the
-// next block into the buffer if necessary.
-func (r *Reader) nextChunk(first bool) error {
- for {
- if r.j+headerSize <= r.n {
- checksum := binary.LittleEndian.Uint32(r.buf[r.j+0 : r.j+4])
- length := binary.LittleEndian.Uint16(r.buf[r.j+4 : r.j+6])
- chunkType := r.buf[r.j+6]
- unprocBlock := r.n - r.j
- if checksum == 0 && length == 0 && chunkType == 0 {
- // Drop entire block.
- r.i = r.n
- r.j = r.n
- return r.corrupt(unprocBlock, "zero header", false)
- }
- if chunkType < fullChunkType || chunkType > lastChunkType {
- // Drop entire block.
- r.i = r.n
- r.j = r.n
- return r.corrupt(unprocBlock, fmt.Sprintf("invalid chunk type %#x", chunkType), false)
- }
- r.i = r.j + headerSize
- r.j = r.j + headerSize + int(length)
- if r.j > r.n {
- // Drop entire block.
- r.i = r.n
- r.j = r.n
- return r.corrupt(unprocBlock, "chunk length overflows block", false)
- } else if r.checksum && checksum != util.NewCRC(r.buf[r.i-1:r.j]).Value() {
- // Drop entire block.
- r.i = r.n
- r.j = r.n
- return r.corrupt(unprocBlock, "checksum mismatch", false)
- }
- if first && chunkType != fullChunkType && chunkType != firstChunkType {
- chunkLength := (r.j - r.i) + headerSize
- r.i = r.j
- // Report the error, but skip it.
- return r.corrupt(chunkLength, "orphan chunk", true)
- }
- r.last = chunkType == fullChunkType || chunkType == lastChunkType
- return nil
- }
-
- // The last block.
- if r.n < blockSize && r.n > 0 {
- if !first {
- return r.corrupt(0, "missing chunk part", false)
- }
- r.err = io.EOF
- return r.err
- }
-
- // Read block.
- n, err := io.ReadFull(r.r, r.buf[:])
- if err != nil && err != io.EOF && err != io.ErrUnexpectedEOF {
- return err
- }
- if n == 0 {
- if !first {
- return r.corrupt(0, "missing chunk part", false)
- }
- r.err = io.EOF
- return r.err
- }
- r.i, r.j, r.n = 0, 0, n
- }
-}
-
-// Next returns a reader for the next journal. It returns io.EOF if there are no
-// more journals. The reader returned becomes stale after the next Next call,
-// and should no longer be used. If strict is false, the reader will returns
-// io.ErrUnexpectedEOF error when found corrupted journal.
-func (r *Reader) Next() (io.Reader, error) {
- r.seq++
- if r.err != nil {
- return nil, r.err
- }
- r.i = r.j
- for {
- if err := r.nextChunk(true); err == nil {
- break
- } else if err != errSkip {
- return nil, err
- }
- }
- return &singleReader{r, r.seq, nil}, nil
-}
-
-// Reset resets the journal reader, allows reuse of the journal reader. Reset returns
-// last accumulated error.
-func (r *Reader) Reset(reader io.Reader, dropper Dropper, strict, checksum bool) error {
- r.seq++
- err := r.err
- r.r = reader
- r.dropper = dropper
- r.strict = strict
- r.checksum = checksum
- r.i = 0
- r.j = 0
- r.n = 0
- r.last = true
- r.err = nil
- return err
-}
-
-type singleReader struct {
- r *Reader
- seq int
- err error
-}
-
-func (x *singleReader) Read(p []byte) (int, error) {
- r := x.r
- if r.seq != x.seq {
- return 0, errors.New("leveldb/journal: stale reader")
- }
- if x.err != nil {
- return 0, x.err
- }
- if r.err != nil {
- return 0, r.err
- }
- for r.i == r.j {
- if r.last {
- return 0, io.EOF
- }
- x.err = r.nextChunk(false)
- if x.err != nil {
- if x.err == errSkip {
- x.err = io.ErrUnexpectedEOF
- }
- return 0, x.err
- }
- }
- n := copy(p, r.buf[r.i:r.j])
- r.i += n
- return n, nil
-}
-
-func (x *singleReader) ReadByte() (byte, error) {
- r := x.r
- if r.seq != x.seq {
- return 0, errors.New("leveldb/journal: stale reader")
- }
- if x.err != nil {
- return 0, x.err
- }
- if r.err != nil {
- return 0, r.err
- }
- for r.i == r.j {
- if r.last {
- return 0, io.EOF
- }
- x.err = r.nextChunk(false)
- if x.err != nil {
- if x.err == errSkip {
- x.err = io.ErrUnexpectedEOF
- }
- return 0, x.err
- }
- }
- c := r.buf[r.i]
- r.i++
- return c, nil
-}
-
-// Writer writes journals to an underlying io.Writer.
-type Writer struct {
- // w is the underlying writer.
- w io.Writer
- // seq is the sequence number of the current journal.
- seq int
- // f is w as a flusher.
- f flusher
- // buf[i:j] is the bytes that will become the current chunk.
- // The low bound, i, includes the chunk header.
- i, j int
- // buf[:written] has already been written to w.
- // written is zero unless Flush has been called.
- written int
- // first is whether the current chunk is the first chunk of the journal.
- first bool
- // pending is whether a chunk is buffered but not yet written.
- pending bool
- // err is any accumulated error.
- err error
- // buf is the buffer.
- buf [blockSize]byte
-}
-
-// NewWriter returns a new Writer.
-func NewWriter(w io.Writer) *Writer {
- f, _ := w.(flusher)
- return &Writer{
- w: w,
- f: f,
- }
-}
-
-// fillHeader fills in the header for the pending chunk.
-func (w *Writer) fillHeader(last bool) {
- if w.i+headerSize > w.j || w.j > blockSize {
- panic("leveldb/journal: bad writer state")
- }
- if last {
- if w.first {
- w.buf[w.i+6] = fullChunkType
- } else {
- w.buf[w.i+6] = lastChunkType
- }
- } else {
- if w.first {
- w.buf[w.i+6] = firstChunkType
- } else {
- w.buf[w.i+6] = middleChunkType
- }
- }
- binary.LittleEndian.PutUint32(w.buf[w.i+0:w.i+4], util.NewCRC(w.buf[w.i+6:w.j]).Value())
- binary.LittleEndian.PutUint16(w.buf[w.i+4:w.i+6], uint16(w.j-w.i-headerSize))
-}
-
-// writeBlock writes the buffered block to the underlying writer, and reserves
-// space for the next chunk's header.
-func (w *Writer) writeBlock() {
- _, w.err = w.w.Write(w.buf[w.written:])
- w.i = 0
- w.j = headerSize
- w.written = 0
-}
-
-// writePending finishes the current journal and writes the buffer to the
-// underlying writer.
-func (w *Writer) writePending() {
- if w.err != nil {
- return
- }
- if w.pending {
- w.fillHeader(true)
- w.pending = false
- }
- _, w.err = w.w.Write(w.buf[w.written:w.j])
- w.written = w.j
-}
-
-// Close finishes the current journal and closes the writer.
-func (w *Writer) Close() error {
- w.seq++
- w.writePending()
- if w.err != nil {
- return w.err
- }
- w.err = errors.New("leveldb/journal: closed Writer")
- return nil
-}
-
-// Flush finishes the current journal, writes to the underlying writer, and
-// flushes it if that writer implements interface{ Flush() error }.
-func (w *Writer) Flush() error {
- w.seq++
- w.writePending()
- if w.err != nil {
- return w.err
- }
- if w.f != nil {
- w.err = w.f.Flush()
- return w.err
- }
- return nil
-}
-
-// Reset resets the journal writer, allows reuse of the journal writer. Reset
-// will also closes the journal writer if not already.
-func (w *Writer) Reset(writer io.Writer) (err error) {
- w.seq++
- if w.err == nil {
- w.writePending()
- err = w.err
- }
- w.w = writer
- w.f, _ = writer.(flusher)
- w.i = 0
- w.j = 0
- w.written = 0
- w.first = false
- w.pending = false
- w.err = nil
- return
-}
-
-// Next returns a writer for the next journal. The writer returned becomes stale
-// after the next Close, Flush or Next call, and should no longer be used.
-func (w *Writer) Next() (io.Writer, error) {
- w.seq++
- if w.err != nil {
- return nil, w.err
- }
- if w.pending {
- w.fillHeader(true)
- }
- w.i = w.j
- w.j = w.j + headerSize
- // Check if there is room in the block for the header.
- if w.j > blockSize {
- // Fill in the rest of the block with zeroes.
- for k := w.i; k < blockSize; k++ {
- w.buf[k] = 0
- }
- w.writeBlock()
- if w.err != nil {
- return nil, w.err
- }
- }
- w.first = true
- w.pending = true
- return singleWriter{w, w.seq}, nil
-}
-
-type singleWriter struct {
- w *Writer
- seq int
-}
-
-func (x singleWriter) Write(p []byte) (int, error) {
- w := x.w
- if w.seq != x.seq {
- return 0, errors.New("leveldb/journal: stale writer")
- }
- if w.err != nil {
- return 0, w.err
- }
- n0 := len(p)
- for len(p) > 0 {
- // Write a block, if it is full.
- if w.j == blockSize {
- w.fillHeader(false)
- w.writeBlock()
- if w.err != nil {
- return 0, w.err
- }
- w.first = false
- }
- // Copy bytes into the buffer.
- n := copy(w.buf[w.j:], p)
- w.j += n
- p = p[n:]
- }
- return n0, nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/key.go b/vendor/github.com/syndtr/goleveldb/leveldb/key.go
deleted file mode 100644
index ad8f51ec..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/key.go
+++ /dev/null
@@ -1,143 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "encoding/binary"
- "fmt"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-// ErrInternalKeyCorrupted records internal key corruption.
-type ErrInternalKeyCorrupted struct {
- Ikey []byte
- Reason string
-}
-
-func (e *ErrInternalKeyCorrupted) Error() string {
- return fmt.Sprintf("leveldb: internal key %q corrupted: %s", e.Ikey, e.Reason)
-}
-
-func newErrInternalKeyCorrupted(ikey []byte, reason string) error {
- return errors.NewErrCorrupted(storage.FileDesc{}, &ErrInternalKeyCorrupted{append([]byte{}, ikey...), reason})
-}
-
-type keyType uint
-
-func (kt keyType) String() string {
- switch kt {
- case keyTypeDel:
- return "d"
- case keyTypeVal:
- return "v"
- }
- return fmt.Sprintf("", uint(kt))
-}
-
-// Value types encoded as the last component of internal keys.
-// Don't modify; this value are saved to disk.
-const (
- keyTypeDel = keyType(0)
- keyTypeVal = keyType(1)
-)
-
-// keyTypeSeek defines the keyType that should be passed when constructing an
-// internal key for seeking to a particular sequence number (since we
-// sort sequence numbers in decreasing order and the value type is
-// embedded as the low 8 bits in the sequence number in internal keys,
-// we need to use the highest-numbered ValueType, not the lowest).
-const keyTypeSeek = keyTypeVal
-
-const (
- // Maximum value possible for sequence number; the 8-bits are
- // used by value type, so its can packed together in single
- // 64-bit integer.
- keyMaxSeq = (uint64(1) << 56) - 1
- // Maximum value possible for packed sequence number and type.
- keyMaxNum = (keyMaxSeq << 8) | uint64(keyTypeSeek)
-)
-
-// Maximum number encoded in bytes.
-var keyMaxNumBytes = make([]byte, 8)
-
-func init() {
- binary.LittleEndian.PutUint64(keyMaxNumBytes, keyMaxNum)
-}
-
-type internalKey []byte
-
-func makeInternalKey(dst, ukey []byte, seq uint64, kt keyType) internalKey {
- if seq > keyMaxSeq {
- panic("leveldb: invalid sequence number")
- } else if kt > keyTypeVal {
- panic("leveldb: invalid type")
- }
-
- dst = ensureBuffer(dst, len(ukey)+8)
- copy(dst, ukey)
- binary.LittleEndian.PutUint64(dst[len(ukey):], (seq<<8)|uint64(kt))
- return internalKey(dst)
-}
-
-func parseInternalKey(ik []byte) (ukey []byte, seq uint64, kt keyType, err error) {
- if len(ik) < 8 {
- return nil, 0, 0, newErrInternalKeyCorrupted(ik, "invalid length")
- }
- num := binary.LittleEndian.Uint64(ik[len(ik)-8:])
- seq, kt = uint64(num>>8), keyType(num&0xff)
- if kt > keyTypeVal {
- return nil, 0, 0, newErrInternalKeyCorrupted(ik, "invalid type")
- }
- ukey = ik[:len(ik)-8]
- return
-}
-
-func validInternalKey(ik []byte) bool {
- _, _, _, err := parseInternalKey(ik)
- return err == nil
-}
-
-func (ik internalKey) assert() {
- if ik == nil {
- panic("leveldb: nil internalKey")
- }
- if len(ik) < 8 {
- panic(fmt.Sprintf("leveldb: internal key %q, len=%d: invalid length", []byte(ik), len(ik)))
- }
-}
-
-func (ik internalKey) ukey() []byte {
- ik.assert()
- return ik[:len(ik)-8]
-}
-
-func (ik internalKey) num() uint64 {
- ik.assert()
- return binary.LittleEndian.Uint64(ik[len(ik)-8:])
-}
-
-func (ik internalKey) parseNum() (seq uint64, kt keyType) {
- num := ik.num()
- seq, kt = uint64(num>>8), keyType(num&0xff)
- if kt > keyTypeVal {
- panic(fmt.Sprintf("leveldb: internal key %q, len=%d: invalid type %#x", []byte(ik), len(ik), kt))
- }
- return
-}
-
-func (ik internalKey) String() string {
- if ik == nil {
- return ""
- }
-
- if ukey, seq, kt, err := parseInternalKey(ik); err == nil {
- return fmt.Sprintf("%s,%s%d", shorten(string(ukey)), kt, seq)
- }
- return fmt.Sprintf("", []byte(ik))
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/memdb/memdb.go b/vendor/github.com/syndtr/goleveldb/leveldb/memdb/memdb.go
deleted file mode 100644
index 824e47f5..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/memdb/memdb.go
+++ /dev/null
@@ -1,479 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package memdb provides in-memory key/value database implementation.
-package memdb
-
-import (
- "math/rand"
- "sync"
-
- "github.com/syndtr/goleveldb/leveldb/comparer"
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// Common errors.
-var (
- ErrNotFound = errors.ErrNotFound
- ErrIterReleased = errors.New("leveldb/memdb: iterator released")
-)
-
-const tMaxHeight = 12
-
-type dbIter struct {
- util.BasicReleaser
- p *DB
- slice *util.Range
- node int
- forward bool
- key, value []byte
- err error
-}
-
-func (i *dbIter) fill(checkStart, checkLimit bool) bool {
- if i.node != 0 {
- n := i.p.nodeData[i.node]
- m := n + i.p.nodeData[i.node+nKey]
- i.key = i.p.kvData[n:m]
- if i.slice != nil {
- switch {
- case checkLimit && i.slice.Limit != nil && i.p.cmp.Compare(i.key, i.slice.Limit) >= 0:
- fallthrough
- case checkStart && i.slice.Start != nil && i.p.cmp.Compare(i.key, i.slice.Start) < 0:
- i.node = 0
- goto bail
- }
- }
- i.value = i.p.kvData[m : m+i.p.nodeData[i.node+nVal]]
- return true
- }
-bail:
- i.key = nil
- i.value = nil
- return false
-}
-
-func (i *dbIter) Valid() bool {
- return i.node != 0
-}
-
-func (i *dbIter) First() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- i.forward = true
- i.p.mu.RLock()
- defer i.p.mu.RUnlock()
- if i.slice != nil && i.slice.Start != nil {
- i.node, _ = i.p.findGE(i.slice.Start, false)
- } else {
- i.node = i.p.nodeData[nNext]
- }
- return i.fill(false, true)
-}
-
-func (i *dbIter) Last() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- i.forward = false
- i.p.mu.RLock()
- defer i.p.mu.RUnlock()
- if i.slice != nil && i.slice.Limit != nil {
- i.node = i.p.findLT(i.slice.Limit)
- } else {
- i.node = i.p.findLast()
- }
- return i.fill(true, false)
-}
-
-func (i *dbIter) Seek(key []byte) bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- i.forward = true
- i.p.mu.RLock()
- defer i.p.mu.RUnlock()
- if i.slice != nil && i.slice.Start != nil && i.p.cmp.Compare(key, i.slice.Start) < 0 {
- key = i.slice.Start
- }
- i.node, _ = i.p.findGE(key, false)
- return i.fill(false, true)
-}
-
-func (i *dbIter) Next() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- if i.node == 0 {
- if !i.forward {
- return i.First()
- }
- return false
- }
- i.forward = true
- i.p.mu.RLock()
- defer i.p.mu.RUnlock()
- i.node = i.p.nodeData[i.node+nNext]
- return i.fill(false, true)
-}
-
-func (i *dbIter) Prev() bool {
- if i.Released() {
- i.err = ErrIterReleased
- return false
- }
-
- if i.node == 0 {
- if i.forward {
- return i.Last()
- }
- return false
- }
- i.forward = false
- i.p.mu.RLock()
- defer i.p.mu.RUnlock()
- i.node = i.p.findLT(i.key)
- return i.fill(true, false)
-}
-
-func (i *dbIter) Key() []byte {
- return i.key
-}
-
-func (i *dbIter) Value() []byte {
- return i.value
-}
-
-func (i *dbIter) Error() error { return i.err }
-
-func (i *dbIter) Release() {
- if !i.Released() {
- i.p = nil
- i.node = 0
- i.key = nil
- i.value = nil
- i.BasicReleaser.Release()
- }
-}
-
-const (
- nKV = iota
- nKey
- nVal
- nHeight
- nNext
-)
-
-// DB is an in-memory key/value database.
-type DB struct {
- cmp comparer.BasicComparer
- rnd *rand.Rand
-
- mu sync.RWMutex
- kvData []byte
- // Node data:
- // [0] : KV offset
- // [1] : Key length
- // [2] : Value length
- // [3] : Height
- // [3..height] : Next nodes
- nodeData []int
- prevNode [tMaxHeight]int
- maxHeight int
- n int
- kvSize int
-}
-
-func (p *DB) randHeight() (h int) {
- const branching = 4
- h = 1
- for h < tMaxHeight && p.rnd.Int()%branching == 0 {
- h++
- }
- return
-}
-
-// Must hold RW-lock if prev == true, as it use shared prevNode slice.
-func (p *DB) findGE(key []byte, prev bool) (int, bool) {
- node := 0
- h := p.maxHeight - 1
- for {
- next := p.nodeData[node+nNext+h]
- cmp := 1
- if next != 0 {
- o := p.nodeData[next]
- cmp = p.cmp.Compare(p.kvData[o:o+p.nodeData[next+nKey]], key)
- }
- if cmp < 0 {
- // Keep searching in this list
- node = next
- } else {
- if prev {
- p.prevNode[h] = node
- } else if cmp == 0 {
- return next, true
- }
- if h == 0 {
- return next, cmp == 0
- }
- h--
- }
- }
-}
-
-func (p *DB) findLT(key []byte) int {
- node := 0
- h := p.maxHeight - 1
- for {
- next := p.nodeData[node+nNext+h]
- o := p.nodeData[next]
- if next == 0 || p.cmp.Compare(p.kvData[o:o+p.nodeData[next+nKey]], key) >= 0 {
- if h == 0 {
- break
- }
- h--
- } else {
- node = next
- }
- }
- return node
-}
-
-func (p *DB) findLast() int {
- node := 0
- h := p.maxHeight - 1
- for {
- next := p.nodeData[node+nNext+h]
- if next == 0 {
- if h == 0 {
- break
- }
- h--
- } else {
- node = next
- }
- }
- return node
-}
-
-// Put sets the value for the given key. It overwrites any previous value
-// for that key; a DB is not a multi-map.
-//
-// It is safe to modify the contents of the arguments after Put returns.
-func (p *DB) Put(key []byte, value []byte) error {
- p.mu.Lock()
- defer p.mu.Unlock()
-
- if node, exact := p.findGE(key, true); exact {
- kvOffset := len(p.kvData)
- p.kvData = append(p.kvData, key...)
- p.kvData = append(p.kvData, value...)
- p.nodeData[node] = kvOffset
- m := p.nodeData[node+nVal]
- p.nodeData[node+nVal] = len(value)
- p.kvSize += len(value) - m
- return nil
- }
-
- h := p.randHeight()
- if h > p.maxHeight {
- for i := p.maxHeight; i < h; i++ {
- p.prevNode[i] = 0
- }
- p.maxHeight = h
- }
-
- kvOffset := len(p.kvData)
- p.kvData = append(p.kvData, key...)
- p.kvData = append(p.kvData, value...)
- // Node
- node := len(p.nodeData)
- p.nodeData = append(p.nodeData, kvOffset, len(key), len(value), h)
- for i, n := range p.prevNode[:h] {
- m := n + nNext + i
- p.nodeData = append(p.nodeData, p.nodeData[m])
- p.nodeData[m] = node
- }
-
- p.kvSize += len(key) + len(value)
- p.n++
- return nil
-}
-
-// Delete deletes the value for the given key. It returns ErrNotFound if
-// the DB does not contain the key.
-//
-// It is safe to modify the contents of the arguments after Delete returns.
-func (p *DB) Delete(key []byte) error {
- p.mu.Lock()
- defer p.mu.Unlock()
-
- node, exact := p.findGE(key, true)
- if !exact {
- return ErrNotFound
- }
-
- h := p.nodeData[node+nHeight]
- for i, n := range p.prevNode[:h] {
- m := n + nNext + i
- p.nodeData[m] = p.nodeData[p.nodeData[m]+nNext+i]
- }
-
- p.kvSize -= p.nodeData[node+nKey] + p.nodeData[node+nVal]
- p.n--
- return nil
-}
-
-// Contains returns true if the given key are in the DB.
-//
-// It is safe to modify the contents of the arguments after Contains returns.
-func (p *DB) Contains(key []byte) bool {
- p.mu.RLock()
- _, exact := p.findGE(key, false)
- p.mu.RUnlock()
- return exact
-}
-
-// Get gets the value for the given key. It returns error.ErrNotFound if the
-// DB does not contain the key.
-//
-// The caller should not modify the contents of the returned slice, but
-// it is safe to modify the contents of the argument after Get returns.
-func (p *DB) Get(key []byte) (value []byte, err error) {
- p.mu.RLock()
- if node, exact := p.findGE(key, false); exact {
- o := p.nodeData[node] + p.nodeData[node+nKey]
- value = p.kvData[o : o+p.nodeData[node+nVal]]
- } else {
- err = ErrNotFound
- }
- p.mu.RUnlock()
- return
-}
-
-// Find finds key/value pair whose key is greater than or equal to the
-// given key. It returns ErrNotFound if the table doesn't contain
-// such pair.
-//
-// The caller should not modify the contents of the returned slice, but
-// it is safe to modify the contents of the argument after Find returns.
-func (p *DB) Find(key []byte) (rkey, value []byte, err error) {
- p.mu.RLock()
- if node, _ := p.findGE(key, false); node != 0 {
- n := p.nodeData[node]
- m := n + p.nodeData[node+nKey]
- rkey = p.kvData[n:m]
- value = p.kvData[m : m+p.nodeData[node+nVal]]
- } else {
- err = ErrNotFound
- }
- p.mu.RUnlock()
- return
-}
-
-// NewIterator returns an iterator of the DB.
-// The returned iterator is not safe for concurrent use, but it is safe to use
-// multiple iterators concurrently, with each in a dedicated goroutine.
-// It is also safe to use an iterator concurrently with modifying its
-// underlying DB. However, the resultant key/value pairs are not guaranteed
-// to be a consistent snapshot of the DB at a particular point in time.
-//
-// Slice allows slicing the iterator to only contains keys in the given
-// range. A nil Range.Start is treated as a key before all keys in the
-// DB. And a nil Range.Limit is treated as a key after all keys in
-// the DB.
-//
-// WARNING: Any slice returned by interator (e.g. slice returned by calling
-// Iterator.Key() or Iterator.Key() methods), its content should not be modified
-// unless noted otherwise.
-//
-// The iterator must be released after use, by calling Release method.
-//
-// Also read Iterator documentation of the leveldb/iterator package.
-func (p *DB) NewIterator(slice *util.Range) iterator.Iterator {
- return &dbIter{p: p, slice: slice}
-}
-
-// Capacity returns keys/values buffer capacity.
-func (p *DB) Capacity() int {
- p.mu.RLock()
- defer p.mu.RUnlock()
- return cap(p.kvData)
-}
-
-// Size returns sum of keys and values length. Note that deleted
-// key/value will not be accounted for, but it will still consume
-// the buffer, since the buffer is append only.
-func (p *DB) Size() int {
- p.mu.RLock()
- defer p.mu.RUnlock()
- return p.kvSize
-}
-
-// Free returns keys/values free buffer before need to grow.
-func (p *DB) Free() int {
- p.mu.RLock()
- defer p.mu.RUnlock()
- return cap(p.kvData) - len(p.kvData)
-}
-
-// Len returns the number of entries in the DB.
-func (p *DB) Len() int {
- p.mu.RLock()
- defer p.mu.RUnlock()
- return p.n
-}
-
-// Reset resets the DB to initial empty state. Allows reuse the buffer.
-func (p *DB) Reset() {
- p.mu.Lock()
- p.rnd = rand.New(rand.NewSource(0xdeadbeef))
- p.maxHeight = 1
- p.n = 0
- p.kvSize = 0
- p.kvData = p.kvData[:0]
- p.nodeData = p.nodeData[:nNext+tMaxHeight]
- p.nodeData[nKV] = 0
- p.nodeData[nKey] = 0
- p.nodeData[nVal] = 0
- p.nodeData[nHeight] = tMaxHeight
- for n := 0; n < tMaxHeight; n++ {
- p.nodeData[nNext+n] = 0
- p.prevNode[n] = 0
- }
- p.mu.Unlock()
-}
-
-// New creates a new initialized in-memory key/value DB. The capacity
-// is the initial key/value buffer capacity. The capacity is advisory,
-// not enforced.
-//
-// This DB is append-only, deleting an entry would remove entry node but not
-// reclaim KV buffer.
-//
-// The returned DB instance is safe for concurrent use.
-func New(cmp comparer.BasicComparer, capacity int) *DB {
- p := &DB{
- cmp: cmp,
- rnd: rand.New(rand.NewSource(0xdeadbeef)),
- maxHeight: 1,
- kvData: make([]byte, 0, capacity),
- nodeData: make([]int, 4+tMaxHeight),
- }
- p.nodeData[nHeight] = tMaxHeight
- return p
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/opt/options.go b/vendor/github.com/syndtr/goleveldb/leveldb/opt/options.go
deleted file mode 100644
index 528b1642..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/opt/options.go
+++ /dev/null
@@ -1,697 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package opt provides sets of options used by LevelDB.
-package opt
-
-import (
- "math"
-
- "github.com/syndtr/goleveldb/leveldb/cache"
- "github.com/syndtr/goleveldb/leveldb/comparer"
- "github.com/syndtr/goleveldb/leveldb/filter"
-)
-
-const (
- KiB = 1024
- MiB = KiB * 1024
- GiB = MiB * 1024
-)
-
-var (
- DefaultBlockCacher = LRUCacher
- DefaultBlockCacheCapacity = 8 * MiB
- DefaultBlockRestartInterval = 16
- DefaultBlockSize = 4 * KiB
- DefaultCompactionExpandLimitFactor = 25
- DefaultCompactionGPOverlapsFactor = 10
- DefaultCompactionL0Trigger = 4
- DefaultCompactionSourceLimitFactor = 1
- DefaultCompactionTableSize = 2 * MiB
- DefaultCompactionTableSizeMultiplier = 1.0
- DefaultCompactionTotalSize = 10 * MiB
- DefaultCompactionTotalSizeMultiplier = 10.0
- DefaultCompressionType = SnappyCompression
- DefaultIteratorSamplingRate = 1 * MiB
- DefaultOpenFilesCacher = LRUCacher
- DefaultOpenFilesCacheCapacity = 500
- DefaultWriteBuffer = 4 * MiB
- DefaultWriteL0PauseTrigger = 12
- DefaultWriteL0SlowdownTrigger = 8
-)
-
-// Cacher is a caching algorithm.
-type Cacher interface {
- New(capacity int) cache.Cacher
-}
-
-type CacherFunc struct {
- NewFunc func(capacity int) cache.Cacher
-}
-
-func (f *CacherFunc) New(capacity int) cache.Cacher {
- if f.NewFunc != nil {
- return f.NewFunc(capacity)
- }
- return nil
-}
-
-func noCacher(int) cache.Cacher { return nil }
-
-var (
- // LRUCacher is the LRU-cache algorithm.
- LRUCacher = &CacherFunc{cache.NewLRU}
-
- // NoCacher is the value to disable caching algorithm.
- NoCacher = &CacherFunc{}
-)
-
-// Compression is the 'sorted table' block compression algorithm to use.
-type Compression uint
-
-func (c Compression) String() string {
- switch c {
- case DefaultCompression:
- return "default"
- case NoCompression:
- return "none"
- case SnappyCompression:
- return "snappy"
- }
- return "invalid"
-}
-
-const (
- DefaultCompression Compression = iota
- NoCompression
- SnappyCompression
- nCompression
-)
-
-// Strict is the DB 'strict level'.
-type Strict uint
-
-const (
- // If present then a corrupted or invalid chunk or block in manifest
- // journal will cause an error instead of being dropped.
- // This will prevent database with corrupted manifest to be opened.
- StrictManifest Strict = 1 << iota
-
- // If present then journal chunk checksum will be verified.
- StrictJournalChecksum
-
- // If present then a corrupted or invalid chunk or block in journal
- // will cause an error instead of being dropped.
- // This will prevent database with corrupted journal to be opened.
- StrictJournal
-
- // If present then 'sorted table' block checksum will be verified.
- // This has effect on both 'read operation' and compaction.
- StrictBlockChecksum
-
- // If present then a corrupted 'sorted table' will fails compaction.
- // The database will enter read-only mode.
- StrictCompaction
-
- // If present then a corrupted 'sorted table' will halts 'read operation'.
- StrictReader
-
- // If present then leveldb.Recover will drop corrupted 'sorted table'.
- StrictRecovery
-
- // This only applicable for ReadOptions, if present then this ReadOptions
- // 'strict level' will override global ones.
- StrictOverride
-
- // StrictAll enables all strict flags.
- StrictAll = StrictManifest | StrictJournalChecksum | StrictJournal | StrictBlockChecksum | StrictCompaction | StrictReader | StrictRecovery
-
- // DefaultStrict is the default strict flags. Specify any strict flags
- // will override default strict flags as whole (i.e. not OR'ed).
- DefaultStrict = StrictJournalChecksum | StrictBlockChecksum | StrictCompaction | StrictReader
-
- // NoStrict disables all strict flags. Override default strict flags.
- NoStrict = ^StrictAll
-)
-
-// Options holds the optional parameters for the DB at large.
-type Options struct {
- // AltFilters defines one or more 'alternative filters'.
- // 'alternative filters' will be used during reads if a filter block
- // does not match with the 'effective filter'.
- //
- // The default value is nil
- AltFilters []filter.Filter
-
- // BlockCacher provides cache algorithm for LevelDB 'sorted table' block caching.
- // Specify NoCacher to disable caching algorithm.
- //
- // The default value is LRUCacher.
- BlockCacher Cacher
-
- // BlockCacheCapacity defines the capacity of the 'sorted table' block caching.
- // Use -1 for zero, this has same effect as specifying NoCacher to BlockCacher.
- //
- // The default value is 8MiB.
- BlockCacheCapacity int
-
- // BlockCacheEvictRemoved allows enable forced-eviction on cached block belonging
- // to removed 'sorted table'.
- //
- // The default if false.
- BlockCacheEvictRemoved bool
-
- // BlockRestartInterval is the number of keys between restart points for
- // delta encoding of keys.
- //
- // The default value is 16.
- BlockRestartInterval int
-
- // BlockSize is the minimum uncompressed size in bytes of each 'sorted table'
- // block.
- //
- // The default value is 4KiB.
- BlockSize int
-
- // CompactionExpandLimitFactor limits compaction size after expanded.
- // This will be multiplied by table size limit at compaction target level.
- //
- // The default value is 25.
- CompactionExpandLimitFactor int
-
- // CompactionGPOverlapsFactor limits overlaps in grandparent (Level + 2) that a
- // single 'sorted table' generates.
- // This will be multiplied by table size limit at grandparent level.
- //
- // The default value is 10.
- CompactionGPOverlapsFactor int
-
- // CompactionL0Trigger defines number of 'sorted table' at level-0 that will
- // trigger compaction.
- //
- // The default value is 4.
- CompactionL0Trigger int
-
- // CompactionSourceLimitFactor limits compaction source size. This doesn't apply to
- // level-0.
- // This will be multiplied by table size limit at compaction target level.
- //
- // The default value is 1.
- CompactionSourceLimitFactor int
-
- // CompactionTableSize limits size of 'sorted table' that compaction generates.
- // The limits for each level will be calculated as:
- // CompactionTableSize * (CompactionTableSizeMultiplier ^ Level)
- // The multiplier for each level can also fine-tuned using CompactionTableSizeMultiplierPerLevel.
- //
- // The default value is 2MiB.
- CompactionTableSize int
-
- // CompactionTableSizeMultiplier defines multiplier for CompactionTableSize.
- //
- // The default value is 1.
- CompactionTableSizeMultiplier float64
-
- // CompactionTableSizeMultiplierPerLevel defines per-level multiplier for
- // CompactionTableSize.
- // Use zero to skip a level.
- //
- // The default value is nil.
- CompactionTableSizeMultiplierPerLevel []float64
-
- // CompactionTotalSize limits total size of 'sorted table' for each level.
- // The limits for each level will be calculated as:
- // CompactionTotalSize * (CompactionTotalSizeMultiplier ^ Level)
- // The multiplier for each level can also fine-tuned using
- // CompactionTotalSizeMultiplierPerLevel.
- //
- // The default value is 10MiB.
- CompactionTotalSize int
-
- // CompactionTotalSizeMultiplier defines multiplier for CompactionTotalSize.
- //
- // The default value is 10.
- CompactionTotalSizeMultiplier float64
-
- // CompactionTotalSizeMultiplierPerLevel defines per-level multiplier for
- // CompactionTotalSize.
- // Use zero to skip a level.
- //
- // The default value is nil.
- CompactionTotalSizeMultiplierPerLevel []float64
-
- // Comparer defines a total ordering over the space of []byte keys: a 'less
- // than' relationship. The same comparison algorithm must be used for reads
- // and writes over the lifetime of the DB.
- //
- // The default value uses the same ordering as bytes.Compare.
- Comparer comparer.Comparer
-
- // Compression defines the 'sorted table' block compression to use.
- //
- // The default value (DefaultCompression) uses snappy compression.
- Compression Compression
-
- // DisableBufferPool allows disable use of util.BufferPool functionality.
- //
- // The default value is false.
- DisableBufferPool bool
-
- // DisableBlockCache allows disable use of cache.Cache functionality on
- // 'sorted table' block.
- //
- // The default value is false.
- DisableBlockCache bool
-
- // DisableCompactionBackoff allows disable compaction retry backoff.
- //
- // The default value is false.
- DisableCompactionBackoff bool
-
- // DisableLargeBatchTransaction allows disabling switch-to-transaction mode
- // on large batch write. If enable batch writes large than WriteBuffer will
- // use transaction.
- //
- // The default is false.
- DisableLargeBatchTransaction bool
-
- // ErrorIfExist defines whether an error should returned if the DB already
- // exist.
- //
- // The default value is false.
- ErrorIfExist bool
-
- // ErrorIfMissing defines whether an error should returned if the DB is
- // missing. If false then the database will be created if missing, otherwise
- // an error will be returned.
- //
- // The default value is false.
- ErrorIfMissing bool
-
- // Filter defines an 'effective filter' to use. An 'effective filter'
- // if defined will be used to generate per-table filter block.
- // The filter name will be stored on disk.
- // During reads LevelDB will try to find matching filter from
- // 'effective filter' and 'alternative filters'.
- //
- // Filter can be changed after a DB has been created. It is recommended
- // to put old filter to the 'alternative filters' to mitigate lack of
- // filter during transition period.
- //
- // A filter is used to reduce disk reads when looking for a specific key.
- //
- // The default value is nil.
- Filter filter.Filter
-
- // IteratorSamplingRate defines approximate gap (in bytes) between read
- // sampling of an iterator. The samples will be used to determine when
- // compaction should be triggered.
- //
- // The default is 1MiB.
- IteratorSamplingRate int
-
- // NoSync allows completely disable fsync.
- //
- // The default is false.
- NoSync bool
-
- // NoWriteMerge allows disabling write merge.
- //
- // The default is false.
- NoWriteMerge bool
-
- // OpenFilesCacher provides cache algorithm for open files caching.
- // Specify NoCacher to disable caching algorithm.
- //
- // The default value is LRUCacher.
- OpenFilesCacher Cacher
-
- // OpenFilesCacheCapacity defines the capacity of the open files caching.
- // Use -1 for zero, this has same effect as specifying NoCacher to OpenFilesCacher.
- //
- // The default value is 500.
- OpenFilesCacheCapacity int
-
- // If true then opens DB in read-only mode.
- //
- // The default value is false.
- ReadOnly bool
-
- // Strict defines the DB strict level.
- Strict Strict
-
- // WriteBuffer defines maximum size of a 'memdb' before flushed to
- // 'sorted table'. 'memdb' is an in-memory DB backed by an on-disk
- // unsorted journal.
- //
- // LevelDB may held up to two 'memdb' at the same time.
- //
- // The default value is 4MiB.
- WriteBuffer int
-
- // WriteL0StopTrigger defines number of 'sorted table' at level-0 that will
- // pause write.
- //
- // The default value is 12.
- WriteL0PauseTrigger int
-
- // WriteL0SlowdownTrigger defines number of 'sorted table' at level-0 that
- // will trigger write slowdown.
- //
- // The default value is 8.
- WriteL0SlowdownTrigger int
-}
-
-func (o *Options) GetAltFilters() []filter.Filter {
- if o == nil {
- return nil
- }
- return o.AltFilters
-}
-
-func (o *Options) GetBlockCacher() Cacher {
- if o == nil || o.BlockCacher == nil {
- return DefaultBlockCacher
- } else if o.BlockCacher == NoCacher {
- return nil
- }
- return o.BlockCacher
-}
-
-func (o *Options) GetBlockCacheCapacity() int {
- if o == nil || o.BlockCacheCapacity == 0 {
- return DefaultBlockCacheCapacity
- } else if o.BlockCacheCapacity < 0 {
- return 0
- }
- return o.BlockCacheCapacity
-}
-
-func (o *Options) GetBlockCacheEvictRemoved() bool {
- if o == nil {
- return false
- }
- return o.BlockCacheEvictRemoved
-}
-
-func (o *Options) GetBlockRestartInterval() int {
- if o == nil || o.BlockRestartInterval <= 0 {
- return DefaultBlockRestartInterval
- }
- return o.BlockRestartInterval
-}
-
-func (o *Options) GetBlockSize() int {
- if o == nil || o.BlockSize <= 0 {
- return DefaultBlockSize
- }
- return o.BlockSize
-}
-
-func (o *Options) GetCompactionExpandLimit(level int) int {
- factor := DefaultCompactionExpandLimitFactor
- if o != nil && o.CompactionExpandLimitFactor > 0 {
- factor = o.CompactionExpandLimitFactor
- }
- return o.GetCompactionTableSize(level+1) * factor
-}
-
-func (o *Options) GetCompactionGPOverlaps(level int) int {
- factor := DefaultCompactionGPOverlapsFactor
- if o != nil && o.CompactionGPOverlapsFactor > 0 {
- factor = o.CompactionGPOverlapsFactor
- }
- return o.GetCompactionTableSize(level+2) * factor
-}
-
-func (o *Options) GetCompactionL0Trigger() int {
- if o == nil || o.CompactionL0Trigger == 0 {
- return DefaultCompactionL0Trigger
- }
- return o.CompactionL0Trigger
-}
-
-func (o *Options) GetCompactionSourceLimit(level int) int {
- factor := DefaultCompactionSourceLimitFactor
- if o != nil && o.CompactionSourceLimitFactor > 0 {
- factor = o.CompactionSourceLimitFactor
- }
- return o.GetCompactionTableSize(level+1) * factor
-}
-
-func (o *Options) GetCompactionTableSize(level int) int {
- var (
- base = DefaultCompactionTableSize
- mult float64
- )
- if o != nil {
- if o.CompactionTableSize > 0 {
- base = o.CompactionTableSize
- }
- if level < len(o.CompactionTableSizeMultiplierPerLevel) && o.CompactionTableSizeMultiplierPerLevel[level] > 0 {
- mult = o.CompactionTableSizeMultiplierPerLevel[level]
- } else if o.CompactionTableSizeMultiplier > 0 {
- mult = math.Pow(o.CompactionTableSizeMultiplier, float64(level))
- }
- }
- if mult == 0 {
- mult = math.Pow(DefaultCompactionTableSizeMultiplier, float64(level))
- }
- return int(float64(base) * mult)
-}
-
-func (o *Options) GetCompactionTotalSize(level int) int64 {
- var (
- base = DefaultCompactionTotalSize
- mult float64
- )
- if o != nil {
- if o.CompactionTotalSize > 0 {
- base = o.CompactionTotalSize
- }
- if level < len(o.CompactionTotalSizeMultiplierPerLevel) && o.CompactionTotalSizeMultiplierPerLevel[level] > 0 {
- mult = o.CompactionTotalSizeMultiplierPerLevel[level]
- } else if o.CompactionTotalSizeMultiplier > 0 {
- mult = math.Pow(o.CompactionTotalSizeMultiplier, float64(level))
- }
- }
- if mult == 0 {
- mult = math.Pow(DefaultCompactionTotalSizeMultiplier, float64(level))
- }
- return int64(float64(base) * mult)
-}
-
-func (o *Options) GetComparer() comparer.Comparer {
- if o == nil || o.Comparer == nil {
- return comparer.DefaultComparer
- }
- return o.Comparer
-}
-
-func (o *Options) GetCompression() Compression {
- if o == nil || o.Compression <= DefaultCompression || o.Compression >= nCompression {
- return DefaultCompressionType
- }
- return o.Compression
-}
-
-func (o *Options) GetDisableBufferPool() bool {
- if o == nil {
- return false
- }
- return o.DisableBufferPool
-}
-
-func (o *Options) GetDisableBlockCache() bool {
- if o == nil {
- return false
- }
- return o.DisableBlockCache
-}
-
-func (o *Options) GetDisableCompactionBackoff() bool {
- if o == nil {
- return false
- }
- return o.DisableCompactionBackoff
-}
-
-func (o *Options) GetDisableLargeBatchTransaction() bool {
- if o == nil {
- return false
- }
- return o.DisableLargeBatchTransaction
-}
-
-func (o *Options) GetErrorIfExist() bool {
- if o == nil {
- return false
- }
- return o.ErrorIfExist
-}
-
-func (o *Options) GetErrorIfMissing() bool {
- if o == nil {
- return false
- }
- return o.ErrorIfMissing
-}
-
-func (o *Options) GetFilter() filter.Filter {
- if o == nil {
- return nil
- }
- return o.Filter
-}
-
-func (o *Options) GetIteratorSamplingRate() int {
- if o == nil || o.IteratorSamplingRate <= 0 {
- return DefaultIteratorSamplingRate
- }
- return o.IteratorSamplingRate
-}
-
-func (o *Options) GetNoSync() bool {
- if o == nil {
- return false
- }
- return o.NoSync
-}
-
-func (o *Options) GetNoWriteMerge() bool {
- if o == nil {
- return false
- }
- return o.NoWriteMerge
-}
-
-func (o *Options) GetOpenFilesCacher() Cacher {
- if o == nil || o.OpenFilesCacher == nil {
- return DefaultOpenFilesCacher
- }
- if o.OpenFilesCacher == NoCacher {
- return nil
- }
- return o.OpenFilesCacher
-}
-
-func (o *Options) GetOpenFilesCacheCapacity() int {
- if o == nil || o.OpenFilesCacheCapacity == 0 {
- return DefaultOpenFilesCacheCapacity
- } else if o.OpenFilesCacheCapacity < 0 {
- return 0
- }
- return o.OpenFilesCacheCapacity
-}
-
-func (o *Options) GetReadOnly() bool {
- if o == nil {
- return false
- }
- return o.ReadOnly
-}
-
-func (o *Options) GetStrict(strict Strict) bool {
- if o == nil || o.Strict == 0 {
- return DefaultStrict&strict != 0
- }
- return o.Strict&strict != 0
-}
-
-func (o *Options) GetWriteBuffer() int {
- if o == nil || o.WriteBuffer <= 0 {
- return DefaultWriteBuffer
- }
- return o.WriteBuffer
-}
-
-func (o *Options) GetWriteL0PauseTrigger() int {
- if o == nil || o.WriteL0PauseTrigger == 0 {
- return DefaultWriteL0PauseTrigger
- }
- return o.WriteL0PauseTrigger
-}
-
-func (o *Options) GetWriteL0SlowdownTrigger() int {
- if o == nil || o.WriteL0SlowdownTrigger == 0 {
- return DefaultWriteL0SlowdownTrigger
- }
- return o.WriteL0SlowdownTrigger
-}
-
-// ReadOptions holds the optional parameters for 'read operation'. The
-// 'read operation' includes Get, Find and NewIterator.
-type ReadOptions struct {
- // DontFillCache defines whether block reads for this 'read operation'
- // should be cached. If false then the block will be cached. This does
- // not affects already cached block.
- //
- // The default value is false.
- DontFillCache bool
-
- // Strict will be OR'ed with global DB 'strict level' unless StrictOverride
- // is present. Currently only StrictReader that has effect here.
- Strict Strict
-}
-
-func (ro *ReadOptions) GetDontFillCache() bool {
- if ro == nil {
- return false
- }
- return ro.DontFillCache
-}
-
-func (ro *ReadOptions) GetStrict(strict Strict) bool {
- if ro == nil {
- return false
- }
- return ro.Strict&strict != 0
-}
-
-// WriteOptions holds the optional parameters for 'write operation'. The
-// 'write operation' includes Write, Put and Delete.
-type WriteOptions struct {
- // NoWriteMerge allows disabling write merge.
- //
- // The default is false.
- NoWriteMerge bool
-
- // Sync is whether to sync underlying writes from the OS buffer cache
- // through to actual disk, if applicable. Setting Sync can result in
- // slower writes.
- //
- // If false, and the machine crashes, then some recent writes may be lost.
- // Note that if it is just the process that crashes (and the machine does
- // not) then no writes will be lost.
- //
- // In other words, Sync being false has the same semantics as a write
- // system call. Sync being true means write followed by fsync.
- //
- // The default value is false.
- Sync bool
-}
-
-func (wo *WriteOptions) GetNoWriteMerge() bool {
- if wo == nil {
- return false
- }
- return wo.NoWriteMerge
-}
-
-func (wo *WriteOptions) GetSync() bool {
- if wo == nil {
- return false
- }
- return wo.Sync
-}
-
-func GetStrict(o *Options, ro *ReadOptions, strict Strict) bool {
- if ro.GetStrict(StrictOverride) {
- return ro.GetStrict(strict)
- } else {
- return o.GetStrict(strict) || ro.GetStrict(strict)
- }
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/options.go b/vendor/github.com/syndtr/goleveldb/leveldb/options.go
deleted file mode 100644
index b072b1ac..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/options.go
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "github.com/syndtr/goleveldb/leveldb/filter"
- "github.com/syndtr/goleveldb/leveldb/opt"
-)
-
-func dupOptions(o *opt.Options) *opt.Options {
- newo := &opt.Options{}
- if o != nil {
- *newo = *o
- }
- if newo.Strict == 0 {
- newo.Strict = opt.DefaultStrict
- }
- return newo
-}
-
-func (s *session) setOptions(o *opt.Options) {
- no := dupOptions(o)
- // Alternative filters.
- if filters := o.GetAltFilters(); len(filters) > 0 {
- no.AltFilters = make([]filter.Filter, len(filters))
- for i, filter := range filters {
- no.AltFilters[i] = &iFilter{filter}
- }
- }
- // Comparer.
- s.icmp = &iComparer{o.GetComparer()}
- no.Comparer = s.icmp
- // Filter.
- if filter := o.GetFilter(); filter != nil {
- no.Filter = &iFilter{filter}
- }
-
- s.o = &cachedOptions{Options: no}
- s.o.cache()
-}
-
-const optCachedLevel = 7
-
-type cachedOptions struct {
- *opt.Options
-
- compactionExpandLimit []int
- compactionGPOverlaps []int
- compactionSourceLimit []int
- compactionTableSize []int
- compactionTotalSize []int64
-}
-
-func (co *cachedOptions) cache() {
- co.compactionExpandLimit = make([]int, optCachedLevel)
- co.compactionGPOverlaps = make([]int, optCachedLevel)
- co.compactionSourceLimit = make([]int, optCachedLevel)
- co.compactionTableSize = make([]int, optCachedLevel)
- co.compactionTotalSize = make([]int64, optCachedLevel)
-
- for level := 0; level < optCachedLevel; level++ {
- co.compactionExpandLimit[level] = co.Options.GetCompactionExpandLimit(level)
- co.compactionGPOverlaps[level] = co.Options.GetCompactionGPOverlaps(level)
- co.compactionSourceLimit[level] = co.Options.GetCompactionSourceLimit(level)
- co.compactionTableSize[level] = co.Options.GetCompactionTableSize(level)
- co.compactionTotalSize[level] = co.Options.GetCompactionTotalSize(level)
- }
-}
-
-func (co *cachedOptions) GetCompactionExpandLimit(level int) int {
- if level < optCachedLevel {
- return co.compactionExpandLimit[level]
- }
- return co.Options.GetCompactionExpandLimit(level)
-}
-
-func (co *cachedOptions) GetCompactionGPOverlaps(level int) int {
- if level < optCachedLevel {
- return co.compactionGPOverlaps[level]
- }
- return co.Options.GetCompactionGPOverlaps(level)
-}
-
-func (co *cachedOptions) GetCompactionSourceLimit(level int) int {
- if level < optCachedLevel {
- return co.compactionSourceLimit[level]
- }
- return co.Options.GetCompactionSourceLimit(level)
-}
-
-func (co *cachedOptions) GetCompactionTableSize(level int) int {
- if level < optCachedLevel {
- return co.compactionTableSize[level]
- }
- return co.Options.GetCompactionTableSize(level)
-}
-
-func (co *cachedOptions) GetCompactionTotalSize(level int) int64 {
- if level < optCachedLevel {
- return co.compactionTotalSize[level]
- }
- return co.Options.GetCompactionTotalSize(level)
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/session.go b/vendor/github.com/syndtr/goleveldb/leveldb/session.go
deleted file mode 100644
index 3f391f93..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/session.go
+++ /dev/null
@@ -1,210 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "fmt"
- "io"
- "os"
- "sync"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/journal"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-// ErrManifestCorrupted records manifest corruption. This error will be
-// wrapped with errors.ErrCorrupted.
-type ErrManifestCorrupted struct {
- Field string
- Reason string
-}
-
-func (e *ErrManifestCorrupted) Error() string {
- return fmt.Sprintf("leveldb: manifest corrupted (field '%s'): %s", e.Field, e.Reason)
-}
-
-func newErrManifestCorrupted(fd storage.FileDesc, field, reason string) error {
- return errors.NewErrCorrupted(fd, &ErrManifestCorrupted{field, reason})
-}
-
-// session represent a persistent database session.
-type session struct {
- // Need 64-bit alignment.
- stNextFileNum int64 // current unused file number
- stJournalNum int64 // current journal file number; need external synchronization
- stPrevJournalNum int64 // prev journal file number; no longer used; for compatibility with older version of leveldb
- stTempFileNum int64
- stSeqNum uint64 // last mem compacted seq; need external synchronization
-
- stor *iStorage
- storLock storage.Locker
- o *cachedOptions
- icmp *iComparer
- tops *tOps
- fileRef map[int64]int
-
- manifest *journal.Writer
- manifestWriter storage.Writer
- manifestFd storage.FileDesc
-
- stCompPtrs []internalKey // compaction pointers; need external synchronization
- stVersion *version // current version
- vmu sync.Mutex
-}
-
-// Creates new initialized session instance.
-func newSession(stor storage.Storage, o *opt.Options) (s *session, err error) {
- if stor == nil {
- return nil, os.ErrInvalid
- }
- storLock, err := stor.Lock()
- if err != nil {
- return
- }
- s = &session{
- stor: newIStorage(stor),
- storLock: storLock,
- fileRef: make(map[int64]int),
- }
- s.setOptions(o)
- s.tops = newTableOps(s)
- s.setVersion(newVersion(s))
- s.log("log@legend F·NumFile S·FileSize N·Entry C·BadEntry B·BadBlock Ke·KeyError D·DroppedEntry L·Level Q·SeqNum T·TimeElapsed")
- return
-}
-
-// Close session.
-func (s *session) close() {
- s.tops.close()
- if s.manifest != nil {
- s.manifest.Close()
- }
- if s.manifestWriter != nil {
- s.manifestWriter.Close()
- }
- s.manifest = nil
- s.manifestWriter = nil
- s.setVersion(&version{s: s, closing: true})
-}
-
-// Release session lock.
-func (s *session) release() {
- s.storLock.Unlock()
-}
-
-// Create a new database session; need external synchronization.
-func (s *session) create() error {
- // create manifest
- return s.newManifest(nil, nil)
-}
-
-// Recover a database session; need external synchronization.
-func (s *session) recover() (err error) {
- defer func() {
- if os.IsNotExist(err) {
- // Don't return os.ErrNotExist if the underlying storage contains
- // other files that belong to LevelDB. So the DB won't get trashed.
- if fds, _ := s.stor.List(storage.TypeAll); len(fds) > 0 {
- err = &errors.ErrCorrupted{Fd: storage.FileDesc{Type: storage.TypeManifest}, Err: &errors.ErrMissingFiles{}}
- }
- }
- }()
-
- fd, err := s.stor.GetMeta()
- if err != nil {
- return
- }
-
- reader, err := s.stor.Open(fd)
- if err != nil {
- return
- }
- defer reader.Close()
-
- var (
- // Options.
- strict = s.o.GetStrict(opt.StrictManifest)
-
- jr = journal.NewReader(reader, dropper{s, fd}, strict, true)
- rec = &sessionRecord{}
- staging = s.stVersion.newStaging()
- )
- for {
- var r io.Reader
- r, err = jr.Next()
- if err != nil {
- if err == io.EOF {
- err = nil
- break
- }
- return errors.SetFd(err, fd)
- }
-
- err = rec.decode(r)
- if err == nil {
- // save compact pointers
- for _, r := range rec.compPtrs {
- s.setCompPtr(r.level, internalKey(r.ikey))
- }
- // commit record to version staging
- staging.commit(rec)
- } else {
- err = errors.SetFd(err, fd)
- if strict || !errors.IsCorrupted(err) {
- return
- }
- s.logf("manifest error: %v (skipped)", errors.SetFd(err, fd))
- }
- rec.resetCompPtrs()
- rec.resetAddedTables()
- rec.resetDeletedTables()
- }
-
- switch {
- case !rec.has(recComparer):
- return newErrManifestCorrupted(fd, "comparer", "missing")
- case rec.comparer != s.icmp.uName():
- return newErrManifestCorrupted(fd, "comparer", fmt.Sprintf("mismatch: want '%s', got '%s'", s.icmp.uName(), rec.comparer))
- case !rec.has(recNextFileNum):
- return newErrManifestCorrupted(fd, "next-file-num", "missing")
- case !rec.has(recJournalNum):
- return newErrManifestCorrupted(fd, "journal-file-num", "missing")
- case !rec.has(recSeqNum):
- return newErrManifestCorrupted(fd, "seq-num", "missing")
- }
-
- s.manifestFd = fd
- s.setVersion(staging.finish())
- s.setNextFileNum(rec.nextFileNum)
- s.recordCommited(rec)
- return nil
-}
-
-// Commit session; need external synchronization.
-func (s *session) commit(r *sessionRecord) (err error) {
- v := s.version()
- defer v.release()
-
- // spawn new version based on current version
- nv := v.spawn(r)
-
- if s.manifest == nil {
- // manifest journal writer not yet created, create one
- err = s.newManifest(r, nv)
- } else {
- err = s.flushManifest(r)
- }
-
- // finally, apply new version if no error rise
- if err == nil {
- s.setVersion(nv)
- }
-
- return
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/session_compaction.go b/vendor/github.com/syndtr/goleveldb/leveldb/session_compaction.go
deleted file mode 100644
index 089cd00b..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/session_compaction.go
+++ /dev/null
@@ -1,302 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "sync/atomic"
-
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/memdb"
- "github.com/syndtr/goleveldb/leveldb/opt"
-)
-
-func (s *session) pickMemdbLevel(umin, umax []byte, maxLevel int) int {
- v := s.version()
- defer v.release()
- return v.pickMemdbLevel(umin, umax, maxLevel)
-}
-
-func (s *session) flushMemdb(rec *sessionRecord, mdb *memdb.DB, maxLevel int) (int, error) {
- // Create sorted table.
- iter := mdb.NewIterator(nil)
- defer iter.Release()
- t, n, err := s.tops.createFrom(iter)
- if err != nil {
- return 0, err
- }
-
- // Pick level other than zero can cause compaction issue with large
- // bulk insert and delete on strictly incrementing key-space. The
- // problem is that the small deletion markers trapped at lower level,
- // while key/value entries keep growing at higher level. Since the
- // key-space is strictly incrementing it will not overlaps with
- // higher level, thus maximum possible level is always picked, while
- // overlapping deletion marker pushed into lower level.
- // See: https://github.com/syndtr/goleveldb/issues/127.
- flushLevel := s.pickMemdbLevel(t.imin.ukey(), t.imax.ukey(), maxLevel)
- rec.addTableFile(flushLevel, t)
-
- s.logf("memdb@flush created L%d@%d N·%d S·%s %q:%q", flushLevel, t.fd.Num, n, shortenb(int(t.size)), t.imin, t.imax)
- return flushLevel, nil
-}
-
-// Pick a compaction based on current state; need external synchronization.
-func (s *session) pickCompaction() *compaction {
- v := s.version()
-
- var sourceLevel int
- var t0 tFiles
- if v.cScore >= 1 {
- sourceLevel = v.cLevel
- cptr := s.getCompPtr(sourceLevel)
- tables := v.levels[sourceLevel]
- for _, t := range tables {
- if cptr == nil || s.icmp.Compare(t.imax, cptr) > 0 {
- t0 = append(t0, t)
- break
- }
- }
- if len(t0) == 0 {
- t0 = append(t0, tables[0])
- }
- } else {
- if p := atomic.LoadPointer(&v.cSeek); p != nil {
- ts := (*tSet)(p)
- sourceLevel = ts.level
- t0 = append(t0, ts.table)
- } else {
- v.release()
- return nil
- }
- }
-
- return newCompaction(s, v, sourceLevel, t0)
-}
-
-// Create compaction from given level and range; need external synchronization.
-func (s *session) getCompactionRange(sourceLevel int, umin, umax []byte, noLimit bool) *compaction {
- v := s.version()
-
- if sourceLevel >= len(v.levels) {
- v.release()
- return nil
- }
-
- t0 := v.levels[sourceLevel].getOverlaps(nil, s.icmp, umin, umax, sourceLevel == 0)
- if len(t0) == 0 {
- v.release()
- return nil
- }
-
- // Avoid compacting too much in one shot in case the range is large.
- // But we cannot do this for level-0 since level-0 files can overlap
- // and we must not pick one file and drop another older file if the
- // two files overlap.
- if !noLimit && sourceLevel > 0 {
- limit := int64(v.s.o.GetCompactionSourceLimit(sourceLevel))
- total := int64(0)
- for i, t := range t0 {
- total += t.size
- if total >= limit {
- s.logf("table@compaction limiting F·%d -> F·%d", len(t0), i+1)
- t0 = t0[:i+1]
- break
- }
- }
- }
-
- return newCompaction(s, v, sourceLevel, t0)
-}
-
-func newCompaction(s *session, v *version, sourceLevel int, t0 tFiles) *compaction {
- c := &compaction{
- s: s,
- v: v,
- sourceLevel: sourceLevel,
- levels: [2]tFiles{t0, nil},
- maxGPOverlaps: int64(s.o.GetCompactionGPOverlaps(sourceLevel)),
- tPtrs: make([]int, len(v.levels)),
- }
- c.expand()
- c.save()
- return c
-}
-
-// compaction represent a compaction state.
-type compaction struct {
- s *session
- v *version
-
- sourceLevel int
- levels [2]tFiles
- maxGPOverlaps int64
-
- gp tFiles
- gpi int
- seenKey bool
- gpOverlappedBytes int64
- imin, imax internalKey
- tPtrs []int
- released bool
-
- snapGPI int
- snapSeenKey bool
- snapGPOverlappedBytes int64
- snapTPtrs []int
-}
-
-func (c *compaction) save() {
- c.snapGPI = c.gpi
- c.snapSeenKey = c.seenKey
- c.snapGPOverlappedBytes = c.gpOverlappedBytes
- c.snapTPtrs = append(c.snapTPtrs[:0], c.tPtrs...)
-}
-
-func (c *compaction) restore() {
- c.gpi = c.snapGPI
- c.seenKey = c.snapSeenKey
- c.gpOverlappedBytes = c.snapGPOverlappedBytes
- c.tPtrs = append(c.tPtrs[:0], c.snapTPtrs...)
-}
-
-func (c *compaction) release() {
- if !c.released {
- c.released = true
- c.v.release()
- }
-}
-
-// Expand compacted tables; need external synchronization.
-func (c *compaction) expand() {
- limit := int64(c.s.o.GetCompactionExpandLimit(c.sourceLevel))
- vt0 := c.v.levels[c.sourceLevel]
- vt1 := tFiles{}
- if level := c.sourceLevel + 1; level < len(c.v.levels) {
- vt1 = c.v.levels[level]
- }
-
- t0, t1 := c.levels[0], c.levels[1]
- imin, imax := t0.getRange(c.s.icmp)
- // We expand t0 here just incase ukey hop across tables.
- t0 = vt0.getOverlaps(t0, c.s.icmp, imin.ukey(), imax.ukey(), c.sourceLevel == 0)
- if len(t0) != len(c.levels[0]) {
- imin, imax = t0.getRange(c.s.icmp)
- }
- t1 = vt1.getOverlaps(t1, c.s.icmp, imin.ukey(), imax.ukey(), false)
- // Get entire range covered by compaction.
- amin, amax := append(t0, t1...).getRange(c.s.icmp)
-
- // See if we can grow the number of inputs in "sourceLevel" without
- // changing the number of "sourceLevel+1" files we pick up.
- if len(t1) > 0 {
- exp0 := vt0.getOverlaps(nil, c.s.icmp, amin.ukey(), amax.ukey(), c.sourceLevel == 0)
- if len(exp0) > len(t0) && t1.size()+exp0.size() < limit {
- xmin, xmax := exp0.getRange(c.s.icmp)
- exp1 := vt1.getOverlaps(nil, c.s.icmp, xmin.ukey(), xmax.ukey(), false)
- if len(exp1) == len(t1) {
- c.s.logf("table@compaction expanding L%d+L%d (F·%d S·%s)+(F·%d S·%s) -> (F·%d S·%s)+(F·%d S·%s)",
- c.sourceLevel, c.sourceLevel+1, len(t0), shortenb(int(t0.size())), len(t1), shortenb(int(t1.size())),
- len(exp0), shortenb(int(exp0.size())), len(exp1), shortenb(int(exp1.size())))
- imin, imax = xmin, xmax
- t0, t1 = exp0, exp1
- amin, amax = append(t0, t1...).getRange(c.s.icmp)
- }
- }
- }
-
- // Compute the set of grandparent files that overlap this compaction
- // (parent == sourceLevel+1; grandparent == sourceLevel+2)
- if level := c.sourceLevel + 2; level < len(c.v.levels) {
- c.gp = c.v.levels[level].getOverlaps(c.gp, c.s.icmp, amin.ukey(), amax.ukey(), false)
- }
-
- c.levels[0], c.levels[1] = t0, t1
- c.imin, c.imax = imin, imax
-}
-
-// Check whether compaction is trivial.
-func (c *compaction) trivial() bool {
- return len(c.levels[0]) == 1 && len(c.levels[1]) == 0 && c.gp.size() <= c.maxGPOverlaps
-}
-
-func (c *compaction) baseLevelForKey(ukey []byte) bool {
- for level := c.sourceLevel + 2; level < len(c.v.levels); level++ {
- tables := c.v.levels[level]
- for c.tPtrs[level] < len(tables) {
- t := tables[c.tPtrs[level]]
- if c.s.icmp.uCompare(ukey, t.imax.ukey()) <= 0 {
- // We've advanced far enough.
- if c.s.icmp.uCompare(ukey, t.imin.ukey()) >= 0 {
- // Key falls in this file's range, so definitely not base level.
- return false
- }
- break
- }
- c.tPtrs[level]++
- }
- }
- return true
-}
-
-func (c *compaction) shouldStopBefore(ikey internalKey) bool {
- for ; c.gpi < len(c.gp); c.gpi++ {
- gp := c.gp[c.gpi]
- if c.s.icmp.Compare(ikey, gp.imax) <= 0 {
- break
- }
- if c.seenKey {
- c.gpOverlappedBytes += gp.size
- }
- }
- c.seenKey = true
-
- if c.gpOverlappedBytes > c.maxGPOverlaps {
- // Too much overlap for current output; start new output.
- c.gpOverlappedBytes = 0
- return true
- }
- return false
-}
-
-// Creates an iterator.
-func (c *compaction) newIterator() iterator.Iterator {
- // Creates iterator slice.
- icap := len(c.levels)
- if c.sourceLevel == 0 {
- // Special case for level-0.
- icap = len(c.levels[0]) + 1
- }
- its := make([]iterator.Iterator, 0, icap)
-
- // Options.
- ro := &opt.ReadOptions{
- DontFillCache: true,
- Strict: opt.StrictOverride,
- }
- strict := c.s.o.GetStrict(opt.StrictCompaction)
- if strict {
- ro.Strict |= opt.StrictReader
- }
-
- for i, tables := range c.levels {
- if len(tables) == 0 {
- continue
- }
-
- // Level-0 is not sorted and may overlaps each other.
- if c.sourceLevel+i == 0 {
- for _, t := range tables {
- its = append(its, c.s.tops.newIterator(t, nil, ro))
- }
- } else {
- it := iterator.NewIndexedIterator(tables.newIndexIterator(c.s.tops, c.s.icmp, nil, ro), strict)
- its = append(its, it)
- }
- }
-
- return iterator.NewMergedIterator(its, c.s.icmp, strict)
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/session_record.go b/vendor/github.com/syndtr/goleveldb/leveldb/session_record.go
deleted file mode 100644
index 854e1aa6..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/session_record.go
+++ /dev/null
@@ -1,323 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "bufio"
- "encoding/binary"
- "io"
- "strings"
-
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-type byteReader interface {
- io.Reader
- io.ByteReader
-}
-
-// These numbers are written to disk and should not be changed.
-const (
- recComparer = 1
- recJournalNum = 2
- recNextFileNum = 3
- recSeqNum = 4
- recCompPtr = 5
- recDelTable = 6
- recAddTable = 7
- // 8 was used for large value refs
- recPrevJournalNum = 9
-)
-
-type cpRecord struct {
- level int
- ikey internalKey
-}
-
-type atRecord struct {
- level int
- num int64
- size int64
- imin internalKey
- imax internalKey
-}
-
-type dtRecord struct {
- level int
- num int64
-}
-
-type sessionRecord struct {
- hasRec int
- comparer string
- journalNum int64
- prevJournalNum int64
- nextFileNum int64
- seqNum uint64
- compPtrs []cpRecord
- addedTables []atRecord
- deletedTables []dtRecord
-
- scratch [binary.MaxVarintLen64]byte
- err error
-}
-
-func (p *sessionRecord) has(rec int) bool {
- return p.hasRec&(1<
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "fmt"
- "sync/atomic"
-
- "github.com/syndtr/goleveldb/leveldb/journal"
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-// Logging.
-
-type dropper struct {
- s *session
- fd storage.FileDesc
-}
-
-func (d dropper) Drop(err error) {
- if e, ok := err.(*journal.ErrCorrupted); ok {
- d.s.logf("journal@drop %s-%d S·%s %q", d.fd.Type, d.fd.Num, shortenb(e.Size), e.Reason)
- } else {
- d.s.logf("journal@drop %s-%d %q", d.fd.Type, d.fd.Num, err)
- }
-}
-
-func (s *session) log(v ...interface{}) { s.stor.Log(fmt.Sprint(v...)) }
-func (s *session) logf(format string, v ...interface{}) { s.stor.Log(fmt.Sprintf(format, v...)) }
-
-// File utils.
-
-func (s *session) newTemp() storage.FileDesc {
- num := atomic.AddInt64(&s.stTempFileNum, 1) - 1
- return storage.FileDesc{Type: storage.TypeTemp, Num: num}
-}
-
-func (s *session) addFileRef(fd storage.FileDesc, ref int) int {
- ref += s.fileRef[fd.Num]
- if ref > 0 {
- s.fileRef[fd.Num] = ref
- } else if ref == 0 {
- delete(s.fileRef, fd.Num)
- } else {
- panic(fmt.Sprintf("negative ref: %v", fd))
- }
- return ref
-}
-
-// Session state.
-
-// Get current version. This will incr version ref, must call
-// version.release (exactly once) after use.
-func (s *session) version() *version {
- s.vmu.Lock()
- defer s.vmu.Unlock()
- s.stVersion.incref()
- return s.stVersion
-}
-
-func (s *session) tLen(level int) int {
- s.vmu.Lock()
- defer s.vmu.Unlock()
- return s.stVersion.tLen(level)
-}
-
-// Set current version to v.
-func (s *session) setVersion(v *version) {
- s.vmu.Lock()
- defer s.vmu.Unlock()
- // Hold by session. It is important to call this first before releasing
- // current version, otherwise the still used files might get released.
- v.incref()
- if s.stVersion != nil {
- // Release current version.
- s.stVersion.releaseNB()
- }
- s.stVersion = v
-}
-
-// Get current unused file number.
-func (s *session) nextFileNum() int64 {
- return atomic.LoadInt64(&s.stNextFileNum)
-}
-
-// Set current unused file number to num.
-func (s *session) setNextFileNum(num int64) {
- atomic.StoreInt64(&s.stNextFileNum, num)
-}
-
-// Mark file number as used.
-func (s *session) markFileNum(num int64) {
- nextFileNum := num + 1
- for {
- old, x := s.stNextFileNum, nextFileNum
- if old > x {
- x = old
- }
- if atomic.CompareAndSwapInt64(&s.stNextFileNum, old, x) {
- break
- }
- }
-}
-
-// Allocate a file number.
-func (s *session) allocFileNum() int64 {
- return atomic.AddInt64(&s.stNextFileNum, 1) - 1
-}
-
-// Reuse given file number.
-func (s *session) reuseFileNum(num int64) {
- for {
- old, x := s.stNextFileNum, num
- if old != x+1 {
- x = old
- }
- if atomic.CompareAndSwapInt64(&s.stNextFileNum, old, x) {
- break
- }
- }
-}
-
-// Set compaction ptr at given level; need external synchronization.
-func (s *session) setCompPtr(level int, ik internalKey) {
- if level >= len(s.stCompPtrs) {
- newCompPtrs := make([]internalKey, level+1)
- copy(newCompPtrs, s.stCompPtrs)
- s.stCompPtrs = newCompPtrs
- }
- s.stCompPtrs[level] = append(internalKey{}, ik...)
-}
-
-// Get compaction ptr at given level; need external synchronization.
-func (s *session) getCompPtr(level int) internalKey {
- if level >= len(s.stCompPtrs) {
- return nil
- }
- return s.stCompPtrs[level]
-}
-
-// Manifest related utils.
-
-// Fill given session record obj with current states; need external
-// synchronization.
-func (s *session) fillRecord(r *sessionRecord, snapshot bool) {
- r.setNextFileNum(s.nextFileNum())
-
- if snapshot {
- if !r.has(recJournalNum) {
- r.setJournalNum(s.stJournalNum)
- }
-
- if !r.has(recSeqNum) {
- r.setSeqNum(s.stSeqNum)
- }
-
- for level, ik := range s.stCompPtrs {
- if ik != nil {
- r.addCompPtr(level, ik)
- }
- }
-
- r.setComparer(s.icmp.uName())
- }
-}
-
-// Mark if record has been committed, this will update session state;
-// need external synchronization.
-func (s *session) recordCommited(rec *sessionRecord) {
- if rec.has(recJournalNum) {
- s.stJournalNum = rec.journalNum
- }
-
- if rec.has(recPrevJournalNum) {
- s.stPrevJournalNum = rec.prevJournalNum
- }
-
- if rec.has(recSeqNum) {
- s.stSeqNum = rec.seqNum
- }
-
- for _, r := range rec.compPtrs {
- s.setCompPtr(r.level, internalKey(r.ikey))
- }
-}
-
-// Create a new manifest file; need external synchronization.
-func (s *session) newManifest(rec *sessionRecord, v *version) (err error) {
- fd := storage.FileDesc{Type: storage.TypeManifest, Num: s.allocFileNum()}
- writer, err := s.stor.Create(fd)
- if err != nil {
- return
- }
- jw := journal.NewWriter(writer)
-
- if v == nil {
- v = s.version()
- defer v.release()
- }
- if rec == nil {
- rec = &sessionRecord{}
- }
- s.fillRecord(rec, true)
- v.fillRecord(rec)
-
- defer func() {
- if err == nil {
- s.recordCommited(rec)
- if s.manifest != nil {
- s.manifest.Close()
- }
- if s.manifestWriter != nil {
- s.manifestWriter.Close()
- }
- if !s.manifestFd.Zero() {
- s.stor.Remove(s.manifestFd)
- }
- s.manifestFd = fd
- s.manifestWriter = writer
- s.manifest = jw
- } else {
- writer.Close()
- s.stor.Remove(fd)
- s.reuseFileNum(fd.Num)
- }
- }()
-
- w, err := jw.Next()
- if err != nil {
- return
- }
- err = rec.encode(w)
- if err != nil {
- return
- }
- err = jw.Flush()
- if err != nil {
- return
- }
- err = s.stor.SetMeta(fd)
- return
-}
-
-// Flush record to disk.
-func (s *session) flushManifest(rec *sessionRecord) (err error) {
- s.fillRecord(rec, false)
- w, err := s.manifest.Next()
- if err != nil {
- return
- }
- err = rec.encode(w)
- if err != nil {
- return
- }
- err = s.manifest.Flush()
- if err != nil {
- return
- }
- if !s.o.GetNoSync() {
- err = s.manifestWriter.Sync()
- if err != nil {
- return
- }
- }
- s.recordCommited(rec)
- return
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage.go
deleted file mode 100644
index d45fb5df..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage.go
+++ /dev/null
@@ -1,63 +0,0 @@
-package leveldb
-
-import (
- "github.com/syndtr/goleveldb/leveldb/storage"
- "sync/atomic"
-)
-
-type iStorage struct {
- storage.Storage
- read uint64
- write uint64
-}
-
-func (c *iStorage) Open(fd storage.FileDesc) (storage.Reader, error) {
- r, err := c.Storage.Open(fd)
- return &iStorageReader{r, c}, err
-}
-
-func (c *iStorage) Create(fd storage.FileDesc) (storage.Writer, error) {
- w, err := c.Storage.Create(fd)
- return &iStorageWriter{w, c}, err
-}
-
-func (c *iStorage) reads() uint64 {
- return atomic.LoadUint64(&c.read)
-}
-
-func (c *iStorage) writes() uint64 {
- return atomic.LoadUint64(&c.write)
-}
-
-// newIStorage returns the given storage wrapped by iStorage.
-func newIStorage(s storage.Storage) *iStorage {
- return &iStorage{s, 0, 0}
-}
-
-type iStorageReader struct {
- storage.Reader
- c *iStorage
-}
-
-func (r *iStorageReader) Read(p []byte) (n int, err error) {
- n, err = r.Reader.Read(p)
- atomic.AddUint64(&r.c.read, uint64(n))
- return n, err
-}
-
-func (r *iStorageReader) ReadAt(p []byte, off int64) (n int, err error) {
- n, err = r.Reader.ReadAt(p, off)
- atomic.AddUint64(&r.c.read, uint64(n))
- return n, err
-}
-
-type iStorageWriter struct {
- storage.Writer
- c *iStorage
-}
-
-func (w *iStorageWriter) Write(p []byte) (n int, err error) {
- n, err = w.Writer.Write(p)
- atomic.AddUint64(&w.c.write, uint64(n))
- return n, err
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage.go
deleted file mode 100644
index 9ba71fd6..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage.go
+++ /dev/null
@@ -1,671 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reservefs.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package storage
-
-import (
- "errors"
- "fmt"
- "io"
- "io/ioutil"
- "os"
- "path/filepath"
- "runtime"
- "sort"
- "strconv"
- "strings"
- "sync"
- "time"
-)
-
-var (
- errFileOpen = errors.New("leveldb/storage: file still open")
- errReadOnly = errors.New("leveldb/storage: storage is read-only")
-)
-
-type fileLock interface {
- release() error
-}
-
-type fileStorageLock struct {
- fs *fileStorage
-}
-
-func (lock *fileStorageLock) Unlock() {
- if lock.fs != nil {
- lock.fs.mu.Lock()
- defer lock.fs.mu.Unlock()
- if lock.fs.slock == lock {
- lock.fs.slock = nil
- }
- }
-}
-
-type int64Slice []int64
-
-func (p int64Slice) Len() int { return len(p) }
-func (p int64Slice) Less(i, j int) bool { return p[i] < p[j] }
-func (p int64Slice) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
-
-func writeFileSynced(filename string, data []byte, perm os.FileMode) error {
- f, err := os.OpenFile(filename, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, perm)
- if err != nil {
- return err
- }
- n, err := f.Write(data)
- if err == nil && n < len(data) {
- err = io.ErrShortWrite
- }
- if err1 := f.Sync(); err == nil {
- err = err1
- }
- if err1 := f.Close(); err == nil {
- err = err1
- }
- return err
-}
-
-const logSizeThreshold = 1024 * 1024 // 1 MiB
-
-// fileStorage is a file-system backed storage.
-type fileStorage struct {
- path string
- readOnly bool
-
- mu sync.Mutex
- flock fileLock
- slock *fileStorageLock
- logw *os.File
- logSize int64
- buf []byte
- // Opened file counter; if open < 0 means closed.
- open int
- day int
-}
-
-// OpenFile returns a new filesystem-backed storage implementation with the given
-// path. This also acquire a file lock, so any subsequent attempt to open the
-// same path will fail.
-//
-// The storage must be closed after use, by calling Close method.
-func OpenFile(path string, readOnly bool) (Storage, error) {
- if fi, err := os.Stat(path); err == nil {
- if !fi.IsDir() {
- return nil, fmt.Errorf("leveldb/storage: open %s: not a directory", path)
- }
- } else if os.IsNotExist(err) && !readOnly {
- if err := os.MkdirAll(path, 0755); err != nil {
- return nil, err
- }
- } else {
- return nil, err
- }
-
- flock, err := newFileLock(filepath.Join(path, "LOCK"), readOnly)
- if err != nil {
- return nil, err
- }
-
- defer func() {
- if err != nil {
- flock.release()
- }
- }()
-
- var (
- logw *os.File
- logSize int64
- )
- if !readOnly {
- logw, err = os.OpenFile(filepath.Join(path, "LOG"), os.O_WRONLY|os.O_CREATE, 0644)
- if err != nil {
- return nil, err
- }
- logSize, err = logw.Seek(0, os.SEEK_END)
- if err != nil {
- logw.Close()
- return nil, err
- }
- }
-
- fs := &fileStorage{
- path: path,
- readOnly: readOnly,
- flock: flock,
- logw: logw,
- logSize: logSize,
- }
- runtime.SetFinalizer(fs, (*fileStorage).Close)
- return fs, nil
-}
-
-func (fs *fileStorage) Lock() (Locker, error) {
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return nil, ErrClosed
- }
- if fs.readOnly {
- return &fileStorageLock{}, nil
- }
- if fs.slock != nil {
- return nil, ErrLocked
- }
- fs.slock = &fileStorageLock{fs: fs}
- return fs.slock, nil
-}
-
-func itoa(buf []byte, i int, wid int) []byte {
- u := uint(i)
- if u == 0 && wid <= 1 {
- return append(buf, '0')
- }
-
- // Assemble decimal in reverse order.
- var b [32]byte
- bp := len(b)
- for ; u > 0 || wid > 0; u /= 10 {
- bp--
- wid--
- b[bp] = byte(u%10) + '0'
- }
- return append(buf, b[bp:]...)
-}
-
-func (fs *fileStorage) printDay(t time.Time) {
- if fs.day == t.Day() {
- return
- }
- fs.day = t.Day()
- fs.logw.Write([]byte("=============== " + t.Format("Jan 2, 2006 (MST)") + " ===============\n"))
-}
-
-func (fs *fileStorage) doLog(t time.Time, str string) {
- if fs.logSize > logSizeThreshold {
- // Rotate log file.
- fs.logw.Close()
- fs.logw = nil
- fs.logSize = 0
- rename(filepath.Join(fs.path, "LOG"), filepath.Join(fs.path, "LOG.old"))
- }
- if fs.logw == nil {
- var err error
- fs.logw, err = os.OpenFile(filepath.Join(fs.path, "LOG"), os.O_WRONLY|os.O_CREATE, 0644)
- if err != nil {
- return
- }
- // Force printDay on new log file.
- fs.day = 0
- }
- fs.printDay(t)
- hour, min, sec := t.Clock()
- msec := t.Nanosecond() / 1e3
- // time
- fs.buf = itoa(fs.buf[:0], hour, 2)
- fs.buf = append(fs.buf, ':')
- fs.buf = itoa(fs.buf, min, 2)
- fs.buf = append(fs.buf, ':')
- fs.buf = itoa(fs.buf, sec, 2)
- fs.buf = append(fs.buf, '.')
- fs.buf = itoa(fs.buf, msec, 6)
- fs.buf = append(fs.buf, ' ')
- // write
- fs.buf = append(fs.buf, []byte(str)...)
- fs.buf = append(fs.buf, '\n')
- n, _ := fs.logw.Write(fs.buf)
- fs.logSize += int64(n)
-}
-
-func (fs *fileStorage) Log(str string) {
- if !fs.readOnly {
- t := time.Now()
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return
- }
- fs.doLog(t, str)
- }
-}
-
-func (fs *fileStorage) log(str string) {
- if !fs.readOnly {
- fs.doLog(time.Now(), str)
- }
-}
-
-func (fs *fileStorage) setMeta(fd FileDesc) error {
- content := fsGenName(fd) + "\n"
- // Check and backup old CURRENT file.
- currentPath := filepath.Join(fs.path, "CURRENT")
- if _, err := os.Stat(currentPath); err == nil {
- b, err := ioutil.ReadFile(currentPath)
- if err != nil {
- fs.log(fmt.Sprintf("backup CURRENT: %v", err))
- return err
- }
- if string(b) == content {
- // Content not changed, do nothing.
- return nil
- }
- if err := writeFileSynced(currentPath+".bak", b, 0644); err != nil {
- fs.log(fmt.Sprintf("backup CURRENT: %v", err))
- return err
- }
- } else if !os.IsNotExist(err) {
- return err
- }
- path := fmt.Sprintf("%s.%d", filepath.Join(fs.path, "CURRENT"), fd.Num)
- if err := writeFileSynced(path, []byte(content), 0644); err != nil {
- fs.log(fmt.Sprintf("create CURRENT.%d: %v", fd.Num, err))
- return err
- }
- // Replace CURRENT file.
- if err := rename(path, currentPath); err != nil {
- fs.log(fmt.Sprintf("rename CURRENT.%d: %v", fd.Num, err))
- return err
- }
- // Sync root directory.
- if err := syncDir(fs.path); err != nil {
- fs.log(fmt.Sprintf("syncDir: %v", err))
- return err
- }
- return nil
-}
-
-func (fs *fileStorage) SetMeta(fd FileDesc) error {
- if !FileDescOk(fd) {
- return ErrInvalidFile
- }
- if fs.readOnly {
- return errReadOnly
- }
-
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return ErrClosed
- }
- return fs.setMeta(fd)
-}
-
-func (fs *fileStorage) GetMeta() (FileDesc, error) {
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return FileDesc{}, ErrClosed
- }
- dir, err := os.Open(fs.path)
- if err != nil {
- return FileDesc{}, err
- }
- names, err := dir.Readdirnames(0)
- // Close the dir first before checking for Readdirnames error.
- if ce := dir.Close(); ce != nil {
- fs.log(fmt.Sprintf("close dir: %v", ce))
- }
- if err != nil {
- return FileDesc{}, err
- }
- // Try this in order:
- // - CURRENT.[0-9]+ ('pending rename' file, descending order)
- // - CURRENT
- // - CURRENT.bak
- //
- // Skip corrupted file or file that point to a missing target file.
- type currentFile struct {
- name string
- fd FileDesc
- }
- tryCurrent := func(name string) (*currentFile, error) {
- b, err := ioutil.ReadFile(filepath.Join(fs.path, name))
- if err != nil {
- if os.IsNotExist(err) {
- err = os.ErrNotExist
- }
- return nil, err
- }
- var fd FileDesc
- if len(b) < 1 || b[len(b)-1] != '\n' || !fsParseNamePtr(string(b[:len(b)-1]), &fd) {
- fs.log(fmt.Sprintf("%s: corrupted content: %q", name, b))
- err := &ErrCorrupted{
- Err: errors.New("leveldb/storage: corrupted or incomplete CURRENT file"),
- }
- return nil, err
- }
- if _, err := os.Stat(filepath.Join(fs.path, fsGenName(fd))); err != nil {
- if os.IsNotExist(err) {
- fs.log(fmt.Sprintf("%s: missing target file: %s", name, fd))
- err = os.ErrNotExist
- }
- return nil, err
- }
- return ¤tFile{name: name, fd: fd}, nil
- }
- tryCurrents := func(names []string) (*currentFile, error) {
- var (
- cur *currentFile
- // Last corruption error.
- lastCerr error
- )
- for _, name := range names {
- var err error
- cur, err = tryCurrent(name)
- if err == nil {
- break
- } else if err == os.ErrNotExist {
- // Fallback to the next file.
- } else if isCorrupted(err) {
- lastCerr = err
- // Fallback to the next file.
- } else {
- // In case the error is due to permission, etc.
- return nil, err
- }
- }
- if cur == nil {
- err := os.ErrNotExist
- if lastCerr != nil {
- err = lastCerr
- }
- return nil, err
- }
- return cur, nil
- }
-
- // Try 'pending rename' files.
- var nums []int64
- for _, name := range names {
- if strings.HasPrefix(name, "CURRENT.") && name != "CURRENT.bak" {
- i, err := strconv.ParseInt(name[8:], 10, 64)
- if err == nil {
- nums = append(nums, i)
- }
- }
- }
- var (
- pendCur *currentFile
- pendErr = os.ErrNotExist
- pendNames []string
- )
- if len(nums) > 0 {
- sort.Sort(sort.Reverse(int64Slice(nums)))
- pendNames = make([]string, len(nums))
- for i, num := range nums {
- pendNames[i] = fmt.Sprintf("CURRENT.%d", num)
- }
- pendCur, pendErr = tryCurrents(pendNames)
- if pendErr != nil && pendErr != os.ErrNotExist && !isCorrupted(pendErr) {
- return FileDesc{}, pendErr
- }
- }
-
- // Try CURRENT and CURRENT.bak.
- curCur, curErr := tryCurrents([]string{"CURRENT", "CURRENT.bak"})
- if curErr != nil && curErr != os.ErrNotExist && !isCorrupted(curErr) {
- return FileDesc{}, curErr
- }
-
- // pendCur takes precedence, but guards against obsolete pendCur.
- if pendCur != nil && (curCur == nil || pendCur.fd.Num > curCur.fd.Num) {
- curCur = pendCur
- }
-
- if curCur != nil {
- // Restore CURRENT file to proper state.
- if !fs.readOnly && (curCur.name != "CURRENT" || len(pendNames) != 0) {
- // Ignore setMeta errors, however don't delete obsolete files if we
- // catch error.
- if err := fs.setMeta(curCur.fd); err == nil {
- // Remove 'pending rename' files.
- for _, name := range pendNames {
- if err := os.Remove(filepath.Join(fs.path, name)); err != nil {
- fs.log(fmt.Sprintf("remove %s: %v", name, err))
- }
- }
- }
- }
- return curCur.fd, nil
- }
-
- // Nothing found.
- if isCorrupted(pendErr) {
- return FileDesc{}, pendErr
- }
- return FileDesc{}, curErr
-}
-
-func (fs *fileStorage) List(ft FileType) (fds []FileDesc, err error) {
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return nil, ErrClosed
- }
- dir, err := os.Open(fs.path)
- if err != nil {
- return
- }
- names, err := dir.Readdirnames(0)
- // Close the dir first before checking for Readdirnames error.
- if cerr := dir.Close(); cerr != nil {
- fs.log(fmt.Sprintf("close dir: %v", cerr))
- }
- if err == nil {
- for _, name := range names {
- if fd, ok := fsParseName(name); ok && fd.Type&ft != 0 {
- fds = append(fds, fd)
- }
- }
- }
- return
-}
-
-func (fs *fileStorage) Open(fd FileDesc) (Reader, error) {
- if !FileDescOk(fd) {
- return nil, ErrInvalidFile
- }
-
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return nil, ErrClosed
- }
- of, err := os.OpenFile(filepath.Join(fs.path, fsGenName(fd)), os.O_RDONLY, 0)
- if err != nil {
- if fsHasOldName(fd) && os.IsNotExist(err) {
- of, err = os.OpenFile(filepath.Join(fs.path, fsGenOldName(fd)), os.O_RDONLY, 0)
- if err == nil {
- goto ok
- }
- }
- return nil, err
- }
-ok:
- fs.open++
- return &fileWrap{File: of, fs: fs, fd: fd}, nil
-}
-
-func (fs *fileStorage) Create(fd FileDesc) (Writer, error) {
- if !FileDescOk(fd) {
- return nil, ErrInvalidFile
- }
- if fs.readOnly {
- return nil, errReadOnly
- }
-
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return nil, ErrClosed
- }
- of, err := os.OpenFile(filepath.Join(fs.path, fsGenName(fd)), os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
- if err != nil {
- return nil, err
- }
- fs.open++
- return &fileWrap{File: of, fs: fs, fd: fd}, nil
-}
-
-func (fs *fileStorage) Remove(fd FileDesc) error {
- if !FileDescOk(fd) {
- return ErrInvalidFile
- }
- if fs.readOnly {
- return errReadOnly
- }
-
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return ErrClosed
- }
- err := os.Remove(filepath.Join(fs.path, fsGenName(fd)))
- if err != nil {
- if fsHasOldName(fd) && os.IsNotExist(err) {
- if e1 := os.Remove(filepath.Join(fs.path, fsGenOldName(fd))); !os.IsNotExist(e1) {
- fs.log(fmt.Sprintf("remove %s: %v (old name)", fd, err))
- err = e1
- }
- } else {
- fs.log(fmt.Sprintf("remove %s: %v", fd, err))
- }
- }
- return err
-}
-
-func (fs *fileStorage) Rename(oldfd, newfd FileDesc) error {
- if !FileDescOk(oldfd) || !FileDescOk(newfd) {
- return ErrInvalidFile
- }
- if oldfd == newfd {
- return nil
- }
- if fs.readOnly {
- return errReadOnly
- }
-
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return ErrClosed
- }
- return rename(filepath.Join(fs.path, fsGenName(oldfd)), filepath.Join(fs.path, fsGenName(newfd)))
-}
-
-func (fs *fileStorage) Close() error {
- fs.mu.Lock()
- defer fs.mu.Unlock()
- if fs.open < 0 {
- return ErrClosed
- }
- // Clear the finalizer.
- runtime.SetFinalizer(fs, nil)
-
- if fs.open > 0 {
- fs.log(fmt.Sprintf("close: warning, %d files still open", fs.open))
- }
- fs.open = -1
- if fs.logw != nil {
- fs.logw.Close()
- }
- return fs.flock.release()
-}
-
-type fileWrap struct {
- *os.File
- fs *fileStorage
- fd FileDesc
- closed bool
-}
-
-func (fw *fileWrap) Sync() error {
- if err := fw.File.Sync(); err != nil {
- return err
- }
- if fw.fd.Type == TypeManifest {
- // Also sync parent directory if file type is manifest.
- // See: https://code.google.com/p/leveldb/issues/detail?id=190.
- if err := syncDir(fw.fs.path); err != nil {
- fw.fs.log(fmt.Sprintf("syncDir: %v", err))
- return err
- }
- }
- return nil
-}
-
-func (fw *fileWrap) Close() error {
- fw.fs.mu.Lock()
- defer fw.fs.mu.Unlock()
- if fw.closed {
- return ErrClosed
- }
- fw.closed = true
- fw.fs.open--
- err := fw.File.Close()
- if err != nil {
- fw.fs.log(fmt.Sprintf("close %s: %v", fw.fd, err))
- }
- return err
-}
-
-func fsGenName(fd FileDesc) string {
- switch fd.Type {
- case TypeManifest:
- return fmt.Sprintf("MANIFEST-%06d", fd.Num)
- case TypeJournal:
- return fmt.Sprintf("%06d.log", fd.Num)
- case TypeTable:
- return fmt.Sprintf("%06d.ldb", fd.Num)
- case TypeTemp:
- return fmt.Sprintf("%06d.tmp", fd.Num)
- default:
- panic("invalid file type")
- }
-}
-
-func fsHasOldName(fd FileDesc) bool {
- return fd.Type == TypeTable
-}
-
-func fsGenOldName(fd FileDesc) string {
- switch fd.Type {
- case TypeTable:
- return fmt.Sprintf("%06d.sst", fd.Num)
- }
- return fsGenName(fd)
-}
-
-func fsParseName(name string) (fd FileDesc, ok bool) {
- var tail string
- _, err := fmt.Sscanf(name, "%d.%s", &fd.Num, &tail)
- if err == nil {
- switch tail {
- case "log":
- fd.Type = TypeJournal
- case "ldb", "sst":
- fd.Type = TypeTable
- case "tmp":
- fd.Type = TypeTemp
- default:
- return
- }
- return fd, true
- }
- n, _ := fmt.Sscanf(name, "MANIFEST-%d%s", &fd.Num, &tail)
- if n == 1 {
- fd.Type = TypeManifest
- return fd, true
- }
- return
-}
-
-func fsParseNamePtr(name string, fd *FileDesc) bool {
- _fd, ok := fsParseName(name)
- if fd != nil {
- *fd = _fd
- }
- return ok
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_nacl.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_nacl.go
deleted file mode 100644
index 5545aeef..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_nacl.go
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// +build nacl
-
-package storage
-
-import (
- "os"
- "syscall"
-)
-
-func newFileLock(path string, readOnly bool) (fl fileLock, err error) {
- return nil, syscall.ENOTSUP
-}
-
-func setFileLock(f *os.File, readOnly, lock bool) error {
- return syscall.ENOTSUP
-}
-
-func rename(oldpath, newpath string) error {
- return syscall.ENOTSUP
-}
-
-func isErrInvalid(err error) bool {
- return false
-}
-
-func syncDir(name string) error {
- return syscall.ENOTSUP
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_plan9.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_plan9.go
deleted file mode 100644
index b8297980..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_plan9.go
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package storage
-
-import (
- "os"
-)
-
-type plan9FileLock struct {
- f *os.File
-}
-
-func (fl *plan9FileLock) release() error {
- return fl.f.Close()
-}
-
-func newFileLock(path string, readOnly bool) (fl fileLock, err error) {
- var (
- flag int
- perm os.FileMode
- )
- if readOnly {
- flag = os.O_RDONLY
- } else {
- flag = os.O_RDWR
- perm = os.ModeExclusive
- }
- f, err := os.OpenFile(path, flag, perm)
- if os.IsNotExist(err) {
- f, err = os.OpenFile(path, flag|os.O_CREATE, perm|0644)
- }
- if err != nil {
- return
- }
- fl = &plan9FileLock{f: f}
- return
-}
-
-func rename(oldpath, newpath string) error {
- if _, err := os.Stat(newpath); err == nil {
- if err := os.Remove(newpath); err != nil {
- return err
- }
- }
-
- return os.Rename(oldpath, newpath)
-}
-
-func syncDir(name string) error {
- f, err := os.Open(name)
- if err != nil {
- return err
- }
- defer f.Close()
- if err := f.Sync(); err != nil {
- return err
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_solaris.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_solaris.go
deleted file mode 100644
index 79901ee4..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_solaris.go
+++ /dev/null
@@ -1,81 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// +build solaris
-
-package storage
-
-import (
- "os"
- "syscall"
-)
-
-type unixFileLock struct {
- f *os.File
-}
-
-func (fl *unixFileLock) release() error {
- if err := setFileLock(fl.f, false, false); err != nil {
- return err
- }
- return fl.f.Close()
-}
-
-func newFileLock(path string, readOnly bool) (fl fileLock, err error) {
- var flag int
- if readOnly {
- flag = os.O_RDONLY
- } else {
- flag = os.O_RDWR
- }
- f, err := os.OpenFile(path, flag, 0)
- if os.IsNotExist(err) {
- f, err = os.OpenFile(path, flag|os.O_CREATE, 0644)
- }
- if err != nil {
- return
- }
- err = setFileLock(f, readOnly, true)
- if err != nil {
- f.Close()
- return
- }
- fl = &unixFileLock{f: f}
- return
-}
-
-func setFileLock(f *os.File, readOnly, lock bool) error {
- flock := syscall.Flock_t{
- Type: syscall.F_UNLCK,
- Start: 0,
- Len: 0,
- Whence: 1,
- }
- if lock {
- if readOnly {
- flock.Type = syscall.F_RDLCK
- } else {
- flock.Type = syscall.F_WRLCK
- }
- }
- return syscall.FcntlFlock(f.Fd(), syscall.F_SETLK, &flock)
-}
-
-func rename(oldpath, newpath string) error {
- return os.Rename(oldpath, newpath)
-}
-
-func syncDir(name string) error {
- f, err := os.Open(name)
- if err != nil {
- return err
- }
- defer f.Close()
- if err := f.Sync(); err != nil {
- return err
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_unix.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_unix.go
deleted file mode 100644
index d75f66a9..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_unix.go
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// +build darwin dragonfly freebsd linux netbsd openbsd
-
-package storage
-
-import (
- "os"
- "syscall"
-)
-
-type unixFileLock struct {
- f *os.File
-}
-
-func (fl *unixFileLock) release() error {
- if err := setFileLock(fl.f, false, false); err != nil {
- return err
- }
- return fl.f.Close()
-}
-
-func newFileLock(path string, readOnly bool) (fl fileLock, err error) {
- var flag int
- if readOnly {
- flag = os.O_RDONLY
- } else {
- flag = os.O_RDWR
- }
- f, err := os.OpenFile(path, flag, 0)
- if os.IsNotExist(err) {
- f, err = os.OpenFile(path, flag|os.O_CREATE, 0644)
- }
- if err != nil {
- return
- }
- err = setFileLock(f, readOnly, true)
- if err != nil {
- f.Close()
- return
- }
- fl = &unixFileLock{f: f}
- return
-}
-
-func setFileLock(f *os.File, readOnly, lock bool) error {
- how := syscall.LOCK_UN
- if lock {
- if readOnly {
- how = syscall.LOCK_SH
- } else {
- how = syscall.LOCK_EX
- }
- }
- return syscall.Flock(int(f.Fd()), how|syscall.LOCK_NB)
-}
-
-func rename(oldpath, newpath string) error {
- return os.Rename(oldpath, newpath)
-}
-
-func isErrInvalid(err error) bool {
- if err == os.ErrInvalid {
- return true
- }
- // Go < 1.8
- if syserr, ok := err.(*os.SyscallError); ok && syserr.Err == syscall.EINVAL {
- return true
- }
- // Go >= 1.8 returns *os.PathError instead
- if patherr, ok := err.(*os.PathError); ok && patherr.Err == syscall.EINVAL {
- return true
- }
- return false
-}
-
-func syncDir(name string) error {
- // As per fsync manpage, Linux seems to expect fsync on directory, however
- // some system don't support this, so we will ignore syscall.EINVAL.
- //
- // From fsync(2):
- // Calling fsync() does not necessarily ensure that the entry in the
- // directory containing the file has also reached disk. For that an
- // explicit fsync() on a file descriptor for the directory is also needed.
- f, err := os.Open(name)
- if err != nil {
- return err
- }
- defer f.Close()
- if err := f.Sync(); err != nil && !isErrInvalid(err) {
- return err
- }
- return nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_windows.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_windows.go
deleted file mode 100644
index 899335fd..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/file_storage_windows.go
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright (c) 2013, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package storage
-
-import (
- "syscall"
- "unsafe"
-)
-
-var (
- modkernel32 = syscall.NewLazyDLL("kernel32.dll")
-
- procMoveFileExW = modkernel32.NewProc("MoveFileExW")
-)
-
-const (
- _MOVEFILE_REPLACE_EXISTING = 1
-)
-
-type windowsFileLock struct {
- fd syscall.Handle
-}
-
-func (fl *windowsFileLock) release() error {
- return syscall.Close(fl.fd)
-}
-
-func newFileLock(path string, readOnly bool) (fl fileLock, err error) {
- pathp, err := syscall.UTF16PtrFromString(path)
- if err != nil {
- return
- }
- var access, shareMode uint32
- if readOnly {
- access = syscall.GENERIC_READ
- shareMode = syscall.FILE_SHARE_READ
- } else {
- access = syscall.GENERIC_READ | syscall.GENERIC_WRITE
- }
- fd, err := syscall.CreateFile(pathp, access, shareMode, nil, syscall.OPEN_EXISTING, syscall.FILE_ATTRIBUTE_NORMAL, 0)
- if err == syscall.ERROR_FILE_NOT_FOUND {
- fd, err = syscall.CreateFile(pathp, access, shareMode, nil, syscall.OPEN_ALWAYS, syscall.FILE_ATTRIBUTE_NORMAL, 0)
- }
- if err != nil {
- return
- }
- fl = &windowsFileLock{fd: fd}
- return
-}
-
-func moveFileEx(from *uint16, to *uint16, flags uint32) error {
- r1, _, e1 := syscall.Syscall(procMoveFileExW.Addr(), 3, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), uintptr(flags))
- if r1 == 0 {
- if e1 != 0 {
- return error(e1)
- }
- return syscall.EINVAL
- }
- return nil
-}
-
-func rename(oldpath, newpath string) error {
- from, err := syscall.UTF16PtrFromString(oldpath)
- if err != nil {
- return err
- }
- to, err := syscall.UTF16PtrFromString(newpath)
- if err != nil {
- return err
- }
- return moveFileEx(from, to, _MOVEFILE_REPLACE_EXISTING)
-}
-
-func syncDir(name string) error { return nil }
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/mem_storage.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/mem_storage.go
deleted file mode 100644
index 838f1bee..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/mem_storage.go
+++ /dev/null
@@ -1,222 +0,0 @@
-// Copyright (c) 2013, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package storage
-
-import (
- "bytes"
- "os"
- "sync"
-)
-
-const typeShift = 4
-
-// Verify at compile-time that typeShift is large enough to cover all FileType
-// values by confirming that 0 == 0.
-var _ [0]struct{} = [TypeAll >> typeShift]struct{}{}
-
-type memStorageLock struct {
- ms *memStorage
-}
-
-func (lock *memStorageLock) Unlock() {
- ms := lock.ms
- ms.mu.Lock()
- defer ms.mu.Unlock()
- if ms.slock == lock {
- ms.slock = nil
- }
- return
-}
-
-// memStorage is a memory-backed storage.
-type memStorage struct {
- mu sync.Mutex
- slock *memStorageLock
- files map[uint64]*memFile
- meta FileDesc
-}
-
-// NewMemStorage returns a new memory-backed storage implementation.
-func NewMemStorage() Storage {
- return &memStorage{
- files: make(map[uint64]*memFile),
- }
-}
-
-func (ms *memStorage) Lock() (Locker, error) {
- ms.mu.Lock()
- defer ms.mu.Unlock()
- if ms.slock != nil {
- return nil, ErrLocked
- }
- ms.slock = &memStorageLock{ms: ms}
- return ms.slock, nil
-}
-
-func (*memStorage) Log(str string) {}
-
-func (ms *memStorage) SetMeta(fd FileDesc) error {
- if !FileDescOk(fd) {
- return ErrInvalidFile
- }
-
- ms.mu.Lock()
- ms.meta = fd
- ms.mu.Unlock()
- return nil
-}
-
-func (ms *memStorage) GetMeta() (FileDesc, error) {
- ms.mu.Lock()
- defer ms.mu.Unlock()
- if ms.meta.Zero() {
- return FileDesc{}, os.ErrNotExist
- }
- return ms.meta, nil
-}
-
-func (ms *memStorage) List(ft FileType) ([]FileDesc, error) {
- ms.mu.Lock()
- var fds []FileDesc
- for x := range ms.files {
- fd := unpackFile(x)
- if fd.Type&ft != 0 {
- fds = append(fds, fd)
- }
- }
- ms.mu.Unlock()
- return fds, nil
-}
-
-func (ms *memStorage) Open(fd FileDesc) (Reader, error) {
- if !FileDescOk(fd) {
- return nil, ErrInvalidFile
- }
-
- ms.mu.Lock()
- defer ms.mu.Unlock()
- if m, exist := ms.files[packFile(fd)]; exist {
- if m.open {
- return nil, errFileOpen
- }
- m.open = true
- return &memReader{Reader: bytes.NewReader(m.Bytes()), ms: ms, m: m}, nil
- }
- return nil, os.ErrNotExist
-}
-
-func (ms *memStorage) Create(fd FileDesc) (Writer, error) {
- if !FileDescOk(fd) {
- return nil, ErrInvalidFile
- }
-
- x := packFile(fd)
- ms.mu.Lock()
- defer ms.mu.Unlock()
- m, exist := ms.files[x]
- if exist {
- if m.open {
- return nil, errFileOpen
- }
- m.Reset()
- } else {
- m = &memFile{}
- ms.files[x] = m
- }
- m.open = true
- return &memWriter{memFile: m, ms: ms}, nil
-}
-
-func (ms *memStorage) Remove(fd FileDesc) error {
- if !FileDescOk(fd) {
- return ErrInvalidFile
- }
-
- x := packFile(fd)
- ms.mu.Lock()
- defer ms.mu.Unlock()
- if _, exist := ms.files[x]; exist {
- delete(ms.files, x)
- return nil
- }
- return os.ErrNotExist
-}
-
-func (ms *memStorage) Rename(oldfd, newfd FileDesc) error {
- if !FileDescOk(oldfd) || !FileDescOk(newfd) {
- return ErrInvalidFile
- }
- if oldfd == newfd {
- return nil
- }
-
- oldx := packFile(oldfd)
- newx := packFile(newfd)
- ms.mu.Lock()
- defer ms.mu.Unlock()
- oldm, exist := ms.files[oldx]
- if !exist {
- return os.ErrNotExist
- }
- newm, exist := ms.files[newx]
- if (exist && newm.open) || oldm.open {
- return errFileOpen
- }
- delete(ms.files, oldx)
- ms.files[newx] = oldm
- return nil
-}
-
-func (*memStorage) Close() error { return nil }
-
-type memFile struct {
- bytes.Buffer
- open bool
-}
-
-type memReader struct {
- *bytes.Reader
- ms *memStorage
- m *memFile
- closed bool
-}
-
-func (mr *memReader) Close() error {
- mr.ms.mu.Lock()
- defer mr.ms.mu.Unlock()
- if mr.closed {
- return ErrClosed
- }
- mr.m.open = false
- return nil
-}
-
-type memWriter struct {
- *memFile
- ms *memStorage
- closed bool
-}
-
-func (*memWriter) Sync() error { return nil }
-
-func (mw *memWriter) Close() error {
- mw.ms.mu.Lock()
- defer mw.ms.mu.Unlock()
- if mw.closed {
- return ErrClosed
- }
- mw.memFile.open = false
- return nil
-}
-
-func packFile(fd FileDesc) uint64 {
- return uint64(fd.Num)<> typeShift)}
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/storage/storage.go b/vendor/github.com/syndtr/goleveldb/leveldb/storage/storage.go
deleted file mode 100644
index 4e4a7242..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/storage/storage.go
+++ /dev/null
@@ -1,187 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package storage provides storage abstraction for LevelDB.
-package storage
-
-import (
- "errors"
- "fmt"
- "io"
-)
-
-// FileType represent a file type.
-type FileType int
-
-// File types.
-const (
- TypeManifest FileType = 1 << iota
- TypeJournal
- TypeTable
- TypeTemp
-
- TypeAll = TypeManifest | TypeJournal | TypeTable | TypeTemp
-)
-
-func (t FileType) String() string {
- switch t {
- case TypeManifest:
- return "manifest"
- case TypeJournal:
- return "journal"
- case TypeTable:
- return "table"
- case TypeTemp:
- return "temp"
- }
- return fmt.Sprintf("", t)
-}
-
-// Common error.
-var (
- ErrInvalidFile = errors.New("leveldb/storage: invalid file for argument")
- ErrLocked = errors.New("leveldb/storage: already locked")
- ErrClosed = errors.New("leveldb/storage: closed")
-)
-
-// ErrCorrupted is the type that wraps errors that indicate corruption of
-// a file. Package storage has its own type instead of using
-// errors.ErrCorrupted to prevent circular import.
-type ErrCorrupted struct {
- Fd FileDesc
- Err error
-}
-
-func isCorrupted(err error) bool {
- switch err.(type) {
- case *ErrCorrupted:
- return true
- }
- return false
-}
-
-func (e *ErrCorrupted) Error() string {
- if !e.Fd.Zero() {
- return fmt.Sprintf("%v [file=%v]", e.Err, e.Fd)
- }
- return e.Err.Error()
-}
-
-// Syncer is the interface that wraps basic Sync method.
-type Syncer interface {
- // Sync commits the current contents of the file to stable storage.
- Sync() error
-}
-
-// Reader is the interface that groups the basic Read, Seek, ReadAt and Close
-// methods.
-type Reader interface {
- io.ReadSeeker
- io.ReaderAt
- io.Closer
-}
-
-// Writer is the interface that groups the basic Write, Sync and Close
-// methods.
-type Writer interface {
- io.WriteCloser
- Syncer
-}
-
-// Locker is the interface that wraps Unlock method.
-type Locker interface {
- Unlock()
-}
-
-// FileDesc is a 'file descriptor'.
-type FileDesc struct {
- Type FileType
- Num int64
-}
-
-func (fd FileDesc) String() string {
- switch fd.Type {
- case TypeManifest:
- return fmt.Sprintf("MANIFEST-%06d", fd.Num)
- case TypeJournal:
- return fmt.Sprintf("%06d.log", fd.Num)
- case TypeTable:
- return fmt.Sprintf("%06d.ldb", fd.Num)
- case TypeTemp:
- return fmt.Sprintf("%06d.tmp", fd.Num)
- default:
- return fmt.Sprintf("%#x-%d", fd.Type, fd.Num)
- }
-}
-
-// Zero returns true if fd == (FileDesc{}).
-func (fd FileDesc) Zero() bool {
- return fd == (FileDesc{})
-}
-
-// FileDescOk returns true if fd is a valid 'file descriptor'.
-func FileDescOk(fd FileDesc) bool {
- switch fd.Type {
- case TypeManifest:
- case TypeJournal:
- case TypeTable:
- case TypeTemp:
- default:
- return false
- }
- return fd.Num >= 0
-}
-
-// Storage is the storage. A storage instance must be safe for concurrent use.
-type Storage interface {
- // Lock locks the storage. Any subsequent attempt to call Lock will fail
- // until the last lock released.
- // Caller should call Unlock method after use.
- Lock() (Locker, error)
-
- // Log logs a string. This is used for logging.
- // An implementation may write to a file, stdout or simply do nothing.
- Log(str string)
-
- // SetMeta store 'file descriptor' that can later be acquired using GetMeta
- // method. The 'file descriptor' should point to a valid file.
- // SetMeta should be implemented in such way that changes should happen
- // atomically.
- SetMeta(fd FileDesc) error
-
- // GetMeta returns 'file descriptor' stored in meta. The 'file descriptor'
- // can be updated using SetMeta method.
- // Returns os.ErrNotExist if meta doesn't store any 'file descriptor', or
- // 'file descriptor' point to nonexistent file.
- GetMeta() (FileDesc, error)
-
- // List returns file descriptors that match the given file types.
- // The file types may be OR'ed together.
- List(ft FileType) ([]FileDesc, error)
-
- // Open opens file with the given 'file descriptor' read-only.
- // Returns os.ErrNotExist error if the file does not exist.
- // Returns ErrClosed if the underlying storage is closed.
- Open(fd FileDesc) (Reader, error)
-
- // Create creates file with the given 'file descriptor', truncate if already
- // exist and opens write-only.
- // Returns ErrClosed if the underlying storage is closed.
- Create(fd FileDesc) (Writer, error)
-
- // Remove removes file with the given 'file descriptor'.
- // Returns ErrClosed if the underlying storage is closed.
- Remove(fd FileDesc) error
-
- // Rename renames file from oldfd to newfd.
- // Returns ErrClosed if the underlying storage is closed.
- Rename(oldfd, newfd FileDesc) error
-
- // Close closes the storage.
- // It is valid to call Close multiple times. Other methods should not be
- // called after the storage has been closed.
- Close() error
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/table.go b/vendor/github.com/syndtr/goleveldb/leveldb/table.go
deleted file mode 100644
index 1fac60d0..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/table.go
+++ /dev/null
@@ -1,531 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "fmt"
- "sort"
- "sync/atomic"
-
- "github.com/syndtr/goleveldb/leveldb/cache"
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/storage"
- "github.com/syndtr/goleveldb/leveldb/table"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// tFile holds basic information about a table.
-type tFile struct {
- fd storage.FileDesc
- seekLeft int32
- size int64
- imin, imax internalKey
-}
-
-// Returns true if given key is after largest key of this table.
-func (t *tFile) after(icmp *iComparer, ukey []byte) bool {
- return ukey != nil && icmp.uCompare(ukey, t.imax.ukey()) > 0
-}
-
-// Returns true if given key is before smallest key of this table.
-func (t *tFile) before(icmp *iComparer, ukey []byte) bool {
- return ukey != nil && icmp.uCompare(ukey, t.imin.ukey()) < 0
-}
-
-// Returns true if given key range overlaps with this table key range.
-func (t *tFile) overlaps(icmp *iComparer, umin, umax []byte) bool {
- return !t.after(icmp, umin) && !t.before(icmp, umax)
-}
-
-// Cosumes one seek and return current seeks left.
-func (t *tFile) consumeSeek() int32 {
- return atomic.AddInt32(&t.seekLeft, -1)
-}
-
-// Creates new tFile.
-func newTableFile(fd storage.FileDesc, size int64, imin, imax internalKey) *tFile {
- f := &tFile{
- fd: fd,
- size: size,
- imin: imin,
- imax: imax,
- }
-
- // We arrange to automatically compact this file after
- // a certain number of seeks. Let's assume:
- // (1) One seek costs 10ms
- // (2) Writing or reading 1MB costs 10ms (100MB/s)
- // (3) A compaction of 1MB does 25MB of IO:
- // 1MB read from this level
- // 10-12MB read from next level (boundaries may be misaligned)
- // 10-12MB written to next level
- // This implies that 25 seeks cost the same as the compaction
- // of 1MB of data. I.e., one seek costs approximately the
- // same as the compaction of 40KB of data. We are a little
- // conservative and allow approximately one seek for every 16KB
- // of data before triggering a compaction.
- f.seekLeft = int32(size / 16384)
- if f.seekLeft < 100 {
- f.seekLeft = 100
- }
-
- return f
-}
-
-func tableFileFromRecord(r atRecord) *tFile {
- return newTableFile(storage.FileDesc{Type: storage.TypeTable, Num: r.num}, r.size, r.imin, r.imax)
-}
-
-// tFiles hold multiple tFile.
-type tFiles []*tFile
-
-func (tf tFiles) Len() int { return len(tf) }
-func (tf tFiles) Swap(i, j int) { tf[i], tf[j] = tf[j], tf[i] }
-
-func (tf tFiles) nums() string {
- x := "[ "
- for i, f := range tf {
- if i != 0 {
- x += ", "
- }
- x += fmt.Sprint(f.fd.Num)
- }
- x += " ]"
- return x
-}
-
-// Returns true if i smallest key is less than j.
-// This used for sort by key in ascending order.
-func (tf tFiles) lessByKey(icmp *iComparer, i, j int) bool {
- a, b := tf[i], tf[j]
- n := icmp.Compare(a.imin, b.imin)
- if n == 0 {
- return a.fd.Num < b.fd.Num
- }
- return n < 0
-}
-
-// Returns true if i file number is greater than j.
-// This used for sort by file number in descending order.
-func (tf tFiles) lessByNum(i, j int) bool {
- return tf[i].fd.Num > tf[j].fd.Num
-}
-
-// Sorts tables by key in ascending order.
-func (tf tFiles) sortByKey(icmp *iComparer) {
- sort.Sort(&tFilesSortByKey{tFiles: tf, icmp: icmp})
-}
-
-// Sorts tables by file number in descending order.
-func (tf tFiles) sortByNum() {
- sort.Sort(&tFilesSortByNum{tFiles: tf})
-}
-
-// Returns sum of all tables size.
-func (tf tFiles) size() (sum int64) {
- for _, t := range tf {
- sum += t.size
- }
- return sum
-}
-
-// Searches smallest index of tables whose its smallest
-// key is after or equal with given key.
-func (tf tFiles) searchMin(icmp *iComparer, ikey internalKey) int {
- return sort.Search(len(tf), func(i int) bool {
- return icmp.Compare(tf[i].imin, ikey) >= 0
- })
-}
-
-// Searches smallest index of tables whose its largest
-// key is after or equal with given key.
-func (tf tFiles) searchMax(icmp *iComparer, ikey internalKey) int {
- return sort.Search(len(tf), func(i int) bool {
- return icmp.Compare(tf[i].imax, ikey) >= 0
- })
-}
-
-// Returns true if given key range overlaps with one or more
-// tables key range. If unsorted is true then binary search will not be used.
-func (tf tFiles) overlaps(icmp *iComparer, umin, umax []byte, unsorted bool) bool {
- if unsorted {
- // Check against all files.
- for _, t := range tf {
- if t.overlaps(icmp, umin, umax) {
- return true
- }
- }
- return false
- }
-
- i := 0
- if len(umin) > 0 {
- // Find the earliest possible internal key for min.
- i = tf.searchMax(icmp, makeInternalKey(nil, umin, keyMaxSeq, keyTypeSeek))
- }
- if i >= len(tf) {
- // Beginning of range is after all files, so no overlap.
- return false
- }
- return !tf[i].before(icmp, umax)
-}
-
-// Returns tables whose its key range overlaps with given key range.
-// Range will be expanded if ukey found hop across tables.
-// If overlapped is true then the search will be restarted if umax
-// expanded.
-// The dst content will be overwritten.
-func (tf tFiles) getOverlaps(dst tFiles, icmp *iComparer, umin, umax []byte, overlapped bool) tFiles {
- dst = dst[:0]
- for i := 0; i < len(tf); {
- t := tf[i]
- if t.overlaps(icmp, umin, umax) {
- if umin != nil && icmp.uCompare(t.imin.ukey(), umin) < 0 {
- umin = t.imin.ukey()
- dst = dst[:0]
- i = 0
- continue
- } else if umax != nil && icmp.uCompare(t.imax.ukey(), umax) > 0 {
- umax = t.imax.ukey()
- // Restart search if it is overlapped.
- if overlapped {
- dst = dst[:0]
- i = 0
- continue
- }
- }
-
- dst = append(dst, t)
- }
- i++
- }
-
- return dst
-}
-
-// Returns tables key range.
-func (tf tFiles) getRange(icmp *iComparer) (imin, imax internalKey) {
- for i, t := range tf {
- if i == 0 {
- imin, imax = t.imin, t.imax
- continue
- }
- if icmp.Compare(t.imin, imin) < 0 {
- imin = t.imin
- }
- if icmp.Compare(t.imax, imax) > 0 {
- imax = t.imax
- }
- }
-
- return
-}
-
-// Creates iterator index from tables.
-func (tf tFiles) newIndexIterator(tops *tOps, icmp *iComparer, slice *util.Range, ro *opt.ReadOptions) iterator.IteratorIndexer {
- if slice != nil {
- var start, limit int
- if slice.Start != nil {
- start = tf.searchMax(icmp, internalKey(slice.Start))
- }
- if slice.Limit != nil {
- limit = tf.searchMin(icmp, internalKey(slice.Limit))
- } else {
- limit = tf.Len()
- }
- tf = tf[start:limit]
- }
- return iterator.NewArrayIndexer(&tFilesArrayIndexer{
- tFiles: tf,
- tops: tops,
- icmp: icmp,
- slice: slice,
- ro: ro,
- })
-}
-
-// Tables iterator index.
-type tFilesArrayIndexer struct {
- tFiles
- tops *tOps
- icmp *iComparer
- slice *util.Range
- ro *opt.ReadOptions
-}
-
-func (a *tFilesArrayIndexer) Search(key []byte) int {
- return a.searchMax(a.icmp, internalKey(key))
-}
-
-func (a *tFilesArrayIndexer) Get(i int) iterator.Iterator {
- if i == 0 || i == a.Len()-1 {
- return a.tops.newIterator(a.tFiles[i], a.slice, a.ro)
- }
- return a.tops.newIterator(a.tFiles[i], nil, a.ro)
-}
-
-// Helper type for sortByKey.
-type tFilesSortByKey struct {
- tFiles
- icmp *iComparer
-}
-
-func (x *tFilesSortByKey) Less(i, j int) bool {
- return x.lessByKey(x.icmp, i, j)
-}
-
-// Helper type for sortByNum.
-type tFilesSortByNum struct {
- tFiles
-}
-
-func (x *tFilesSortByNum) Less(i, j int) bool {
- return x.lessByNum(i, j)
-}
-
-// Table operations.
-type tOps struct {
- s *session
- noSync bool
- evictRemoved bool
- cache *cache.Cache
- bcache *cache.Cache
- bpool *util.BufferPool
-}
-
-// Creates an empty table and returns table writer.
-func (t *tOps) create() (*tWriter, error) {
- fd := storage.FileDesc{Type: storage.TypeTable, Num: t.s.allocFileNum()}
- fw, err := t.s.stor.Create(fd)
- if err != nil {
- return nil, err
- }
- return &tWriter{
- t: t,
- fd: fd,
- w: fw,
- tw: table.NewWriter(fw, t.s.o.Options),
- }, nil
-}
-
-// Builds table from src iterator.
-func (t *tOps) createFrom(src iterator.Iterator) (f *tFile, n int, err error) {
- w, err := t.create()
- if err != nil {
- return
- }
-
- defer func() {
- if err != nil {
- w.drop()
- }
- }()
-
- for src.Next() {
- err = w.append(src.Key(), src.Value())
- if err != nil {
- return
- }
- }
- err = src.Error()
- if err != nil {
- return
- }
-
- n = w.tw.EntriesLen()
- f, err = w.finish()
- return
-}
-
-// Opens table. It returns a cache handle, which should
-// be released after use.
-func (t *tOps) open(f *tFile) (ch *cache.Handle, err error) {
- ch = t.cache.Get(0, uint64(f.fd.Num), func() (size int, value cache.Value) {
- var r storage.Reader
- r, err = t.s.stor.Open(f.fd)
- if err != nil {
- return 0, nil
- }
-
- var bcache *cache.NamespaceGetter
- if t.bcache != nil {
- bcache = &cache.NamespaceGetter{Cache: t.bcache, NS: uint64(f.fd.Num)}
- }
-
- var tr *table.Reader
- tr, err = table.NewReader(r, f.size, f.fd, bcache, t.bpool, t.s.o.Options)
- if err != nil {
- r.Close()
- return 0, nil
- }
- return 1, tr
-
- })
- if ch == nil && err == nil {
- err = ErrClosed
- }
- return
-}
-
-// Finds key/value pair whose key is greater than or equal to the
-// given key.
-func (t *tOps) find(f *tFile, key []byte, ro *opt.ReadOptions) (rkey, rvalue []byte, err error) {
- ch, err := t.open(f)
- if err != nil {
- return nil, nil, err
- }
- defer ch.Release()
- return ch.Value().(*table.Reader).Find(key, true, ro)
-}
-
-// Finds key that is greater than or equal to the given key.
-func (t *tOps) findKey(f *tFile, key []byte, ro *opt.ReadOptions) (rkey []byte, err error) {
- ch, err := t.open(f)
- if err != nil {
- return nil, err
- }
- defer ch.Release()
- return ch.Value().(*table.Reader).FindKey(key, true, ro)
-}
-
-// Returns approximate offset of the given key.
-func (t *tOps) offsetOf(f *tFile, key []byte) (offset int64, err error) {
- ch, err := t.open(f)
- if err != nil {
- return
- }
- defer ch.Release()
- return ch.Value().(*table.Reader).OffsetOf(key)
-}
-
-// Creates an iterator from the given table.
-func (t *tOps) newIterator(f *tFile, slice *util.Range, ro *opt.ReadOptions) iterator.Iterator {
- ch, err := t.open(f)
- if err != nil {
- return iterator.NewEmptyIterator(err)
- }
- iter := ch.Value().(*table.Reader).NewIterator(slice, ro)
- iter.SetReleaser(ch)
- return iter
-}
-
-// Removes table from persistent storage. It waits until
-// no one use the the table.
-func (t *tOps) remove(f *tFile) {
- t.cache.Delete(0, uint64(f.fd.Num), func() {
- if err := t.s.stor.Remove(f.fd); err != nil {
- t.s.logf("table@remove removing @%d %q", f.fd.Num, err)
- } else {
- t.s.logf("table@remove removed @%d", f.fd.Num)
- }
- if t.evictRemoved && t.bcache != nil {
- t.bcache.EvictNS(uint64(f.fd.Num))
- }
- })
-}
-
-// Closes the table ops instance. It will close all tables,
-// regadless still used or not.
-func (t *tOps) close() {
- t.bpool.Close()
- t.cache.Close()
- if t.bcache != nil {
- t.bcache.CloseWeak()
- }
-}
-
-// Creates new initialized table ops instance.
-func newTableOps(s *session) *tOps {
- var (
- cacher cache.Cacher
- bcache *cache.Cache
- bpool *util.BufferPool
- )
- if s.o.GetOpenFilesCacheCapacity() > 0 {
- cacher = cache.NewLRU(s.o.GetOpenFilesCacheCapacity())
- }
- if !s.o.GetDisableBlockCache() {
- var bcacher cache.Cacher
- if s.o.GetBlockCacheCapacity() > 0 {
- bcacher = s.o.GetBlockCacher().New(s.o.GetBlockCacheCapacity())
- }
- bcache = cache.NewCache(bcacher)
- }
- if !s.o.GetDisableBufferPool() {
- bpool = util.NewBufferPool(s.o.GetBlockSize() + 5)
- }
- return &tOps{
- s: s,
- noSync: s.o.GetNoSync(),
- evictRemoved: s.o.GetBlockCacheEvictRemoved(),
- cache: cache.NewCache(cacher),
- bcache: bcache,
- bpool: bpool,
- }
-}
-
-// tWriter wraps the table writer. It keep track of file descriptor
-// and added key range.
-type tWriter struct {
- t *tOps
-
- fd storage.FileDesc
- w storage.Writer
- tw *table.Writer
-
- first, last []byte
-}
-
-// Append key/value pair to the table.
-func (w *tWriter) append(key, value []byte) error {
- if w.first == nil {
- w.first = append([]byte{}, key...)
- }
- w.last = append(w.last[:0], key...)
- return w.tw.Append(key, value)
-}
-
-// Returns true if the table is empty.
-func (w *tWriter) empty() bool {
- return w.first == nil
-}
-
-// Closes the storage.Writer.
-func (w *tWriter) close() {
- if w.w != nil {
- w.w.Close()
- w.w = nil
- }
-}
-
-// Finalizes the table and returns table file.
-func (w *tWriter) finish() (f *tFile, err error) {
- defer w.close()
- err = w.tw.Close()
- if err != nil {
- return
- }
- if !w.t.noSync {
- err = w.w.Sync()
- if err != nil {
- return
- }
- }
- f = newTableFile(w.fd, int64(w.tw.BytesLen()), internalKey(w.first), internalKey(w.last))
- return
-}
-
-// Drops the table.
-func (w *tWriter) drop() {
- w.close()
- w.t.s.stor.Remove(w.fd)
- w.t.s.reuseFileNum(w.fd.Num)
- w.tw = nil
- w.first = nil
- w.last = nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/table/reader.go b/vendor/github.com/syndtr/goleveldb/leveldb/table/reader.go
deleted file mode 100644
index 496feb6f..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/table/reader.go
+++ /dev/null
@@ -1,1139 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package table
-
-import (
- "encoding/binary"
- "fmt"
- "io"
- "sort"
- "strings"
- "sync"
-
- "github.com/golang/snappy"
-
- "github.com/syndtr/goleveldb/leveldb/cache"
- "github.com/syndtr/goleveldb/leveldb/comparer"
- "github.com/syndtr/goleveldb/leveldb/errors"
- "github.com/syndtr/goleveldb/leveldb/filter"
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/storage"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-// Reader errors.
-var (
- ErrNotFound = errors.ErrNotFound
- ErrReaderReleased = errors.New("leveldb/table: reader released")
- ErrIterReleased = errors.New("leveldb/table: iterator released")
-)
-
-// ErrCorrupted describes error due to corruption. This error will be wrapped
-// with errors.ErrCorrupted.
-type ErrCorrupted struct {
- Pos int64
- Size int64
- Kind string
- Reason string
-}
-
-func (e *ErrCorrupted) Error() string {
- return fmt.Sprintf("leveldb/table: corruption on %s (pos=%d): %s", e.Kind, e.Pos, e.Reason)
-}
-
-func max(x, y int) int {
- if x > y {
- return x
- }
- return y
-}
-
-type block struct {
- bpool *util.BufferPool
- bh blockHandle
- data []byte
- restartsLen int
- restartsOffset int
-}
-
-func (b *block) seek(cmp comparer.Comparer, rstart, rlimit int, key []byte) (index, offset int, err error) {
- index = sort.Search(b.restartsLen-rstart-(b.restartsLen-rlimit), func(i int) bool {
- offset := int(binary.LittleEndian.Uint32(b.data[b.restartsOffset+4*(rstart+i):]))
- offset++ // shared always zero, since this is a restart point
- v1, n1 := binary.Uvarint(b.data[offset:]) // key length
- _, n2 := binary.Uvarint(b.data[offset+n1:]) // value length
- m := offset + n1 + n2
- return cmp.Compare(b.data[m:m+int(v1)], key) > 0
- }) + rstart - 1
- if index < rstart {
- // The smallest key is greater-than key sought.
- index = rstart
- }
- offset = int(binary.LittleEndian.Uint32(b.data[b.restartsOffset+4*index:]))
- return
-}
-
-func (b *block) restartIndex(rstart, rlimit, offset int) int {
- return sort.Search(b.restartsLen-rstart-(b.restartsLen-rlimit), func(i int) bool {
- return int(binary.LittleEndian.Uint32(b.data[b.restartsOffset+4*(rstart+i):])) > offset
- }) + rstart - 1
-}
-
-func (b *block) restartOffset(index int) int {
- return int(binary.LittleEndian.Uint32(b.data[b.restartsOffset+4*index:]))
-}
-
-func (b *block) entry(offset int) (key, value []byte, nShared, n int, err error) {
- if offset >= b.restartsOffset {
- if offset != b.restartsOffset {
- err = &ErrCorrupted{Reason: "entries offset not aligned"}
- }
- return
- }
- v0, n0 := binary.Uvarint(b.data[offset:]) // Shared prefix length
- v1, n1 := binary.Uvarint(b.data[offset+n0:]) // Key length
- v2, n2 := binary.Uvarint(b.data[offset+n0+n1:]) // Value length
- m := n0 + n1 + n2
- n = m + int(v1) + int(v2)
- if n0 <= 0 || n1 <= 0 || n2 <= 0 || offset+n > b.restartsOffset {
- err = &ErrCorrupted{Reason: "entries corrupted"}
- return
- }
- key = b.data[offset+m : offset+m+int(v1)]
- value = b.data[offset+m+int(v1) : offset+n]
- nShared = int(v0)
- return
-}
-
-func (b *block) Release() {
- b.bpool.Put(b.data)
- b.bpool = nil
- b.data = nil
-}
-
-type dir int
-
-const (
- dirReleased dir = iota - 1
- dirSOI
- dirEOI
- dirBackward
- dirForward
-)
-
-type blockIter struct {
- tr *Reader
- block *block
- blockReleaser util.Releaser
- releaser util.Releaser
- key, value []byte
- offset int
- // Previous offset, only filled by Next.
- prevOffset int
- prevNode []int
- prevKeys []byte
- restartIndex int
- // Iterator direction.
- dir dir
- // Restart index slice range.
- riStart int
- riLimit int
- // Offset slice range.
- offsetStart int
- offsetRealStart int
- offsetLimit int
- // Error.
- err error
-}
-
-func (i *blockIter) sErr(err error) {
- i.err = err
- i.key = nil
- i.value = nil
- i.prevNode = nil
- i.prevKeys = nil
-}
-
-func (i *blockIter) reset() {
- if i.dir == dirBackward {
- i.prevNode = i.prevNode[:0]
- i.prevKeys = i.prevKeys[:0]
- }
- i.restartIndex = i.riStart
- i.offset = i.offsetStart
- i.dir = dirSOI
- i.key = i.key[:0]
- i.value = nil
-}
-
-func (i *blockIter) isFirst() bool {
- switch i.dir {
- case dirForward:
- return i.prevOffset == i.offsetRealStart
- case dirBackward:
- return len(i.prevNode) == 1 && i.restartIndex == i.riStart
- }
- return false
-}
-
-func (i *blockIter) isLast() bool {
- switch i.dir {
- case dirForward, dirBackward:
- return i.offset == i.offsetLimit
- }
- return false
-}
-
-func (i *blockIter) First() bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- if i.dir == dirBackward {
- i.prevNode = i.prevNode[:0]
- i.prevKeys = i.prevKeys[:0]
- }
- i.dir = dirSOI
- return i.Next()
-}
-
-func (i *blockIter) Last() bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- if i.dir == dirBackward {
- i.prevNode = i.prevNode[:0]
- i.prevKeys = i.prevKeys[:0]
- }
- i.dir = dirEOI
- return i.Prev()
-}
-
-func (i *blockIter) Seek(key []byte) bool {
- if i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- ri, offset, err := i.block.seek(i.tr.cmp, i.riStart, i.riLimit, key)
- if err != nil {
- i.sErr(err)
- return false
- }
- i.restartIndex = ri
- i.offset = max(i.offsetStart, offset)
- if i.dir == dirSOI || i.dir == dirEOI {
- i.dir = dirForward
- }
- for i.Next() {
- if i.tr.cmp.Compare(i.key, key) >= 0 {
- return true
- }
- }
- return false
-}
-
-func (i *blockIter) Next() bool {
- if i.dir == dirEOI || i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- if i.dir == dirSOI {
- i.restartIndex = i.riStart
- i.offset = i.offsetStart
- } else if i.dir == dirBackward {
- i.prevNode = i.prevNode[:0]
- i.prevKeys = i.prevKeys[:0]
- }
- for i.offset < i.offsetRealStart {
- key, value, nShared, n, err := i.block.entry(i.offset)
- if err != nil {
- i.sErr(i.tr.fixErrCorruptedBH(i.block.bh, err))
- return false
- }
- if n == 0 {
- i.dir = dirEOI
- return false
- }
- i.key = append(i.key[:nShared], key...)
- i.value = value
- i.offset += n
- }
- if i.offset >= i.offsetLimit {
- i.dir = dirEOI
- if i.offset != i.offsetLimit {
- i.sErr(i.tr.newErrCorruptedBH(i.block.bh, "entries offset not aligned"))
- }
- return false
- }
- key, value, nShared, n, err := i.block.entry(i.offset)
- if err != nil {
- i.sErr(i.tr.fixErrCorruptedBH(i.block.bh, err))
- return false
- }
- if n == 0 {
- i.dir = dirEOI
- return false
- }
- i.key = append(i.key[:nShared], key...)
- i.value = value
- i.prevOffset = i.offset
- i.offset += n
- i.dir = dirForward
- return true
-}
-
-func (i *blockIter) Prev() bool {
- if i.dir == dirSOI || i.err != nil {
- return false
- } else if i.dir == dirReleased {
- i.err = ErrIterReleased
- return false
- }
-
- var ri int
- if i.dir == dirForward {
- // Change direction.
- i.offset = i.prevOffset
- if i.offset == i.offsetRealStart {
- i.dir = dirSOI
- return false
- }
- ri = i.block.restartIndex(i.restartIndex, i.riLimit, i.offset)
- i.dir = dirBackward
- } else if i.dir == dirEOI {
- // At the end of iterator.
- i.restartIndex = i.riLimit
- i.offset = i.offsetLimit
- if i.offset == i.offsetRealStart {
- i.dir = dirSOI
- return false
- }
- ri = i.riLimit - 1
- i.dir = dirBackward
- } else if len(i.prevNode) == 1 {
- // This is the end of a restart range.
- i.offset = i.prevNode[0]
- i.prevNode = i.prevNode[:0]
- if i.restartIndex == i.riStart {
- i.dir = dirSOI
- return false
- }
- i.restartIndex--
- ri = i.restartIndex
- } else {
- // In the middle of restart range, get from cache.
- n := len(i.prevNode) - 3
- node := i.prevNode[n:]
- i.prevNode = i.prevNode[:n]
- // Get the key.
- ko := node[0]
- i.key = append(i.key[:0], i.prevKeys[ko:]...)
- i.prevKeys = i.prevKeys[:ko]
- // Get the value.
- vo := node[1]
- vl := vo + node[2]
- i.value = i.block.data[vo:vl]
- i.offset = vl
- return true
- }
- // Build entries cache.
- i.key = i.key[:0]
- i.value = nil
- offset := i.block.restartOffset(ri)
- if offset == i.offset {
- ri--
- if ri < 0 {
- i.dir = dirSOI
- return false
- }
- offset = i.block.restartOffset(ri)
- }
- i.prevNode = append(i.prevNode, offset)
- for {
- key, value, nShared, n, err := i.block.entry(offset)
- if err != nil {
- i.sErr(i.tr.fixErrCorruptedBH(i.block.bh, err))
- return false
- }
- if offset >= i.offsetRealStart {
- if i.value != nil {
- // Appends 3 variables:
- // 1. Previous keys offset
- // 2. Value offset in the data block
- // 3. Value length
- i.prevNode = append(i.prevNode, len(i.prevKeys), offset-len(i.value), len(i.value))
- i.prevKeys = append(i.prevKeys, i.key...)
- }
- i.value = value
- }
- i.key = append(i.key[:nShared], key...)
- offset += n
- // Stop if target offset reached.
- if offset >= i.offset {
- if offset != i.offset {
- i.sErr(i.tr.newErrCorruptedBH(i.block.bh, "entries offset not aligned"))
- return false
- }
-
- break
- }
- }
- i.restartIndex = ri
- i.offset = offset
- return true
-}
-
-func (i *blockIter) Key() []byte {
- if i.err != nil || i.dir <= dirEOI {
- return nil
- }
- return i.key
-}
-
-func (i *blockIter) Value() []byte {
- if i.err != nil || i.dir <= dirEOI {
- return nil
- }
- return i.value
-}
-
-func (i *blockIter) Release() {
- if i.dir != dirReleased {
- i.tr = nil
- i.block = nil
- i.prevNode = nil
- i.prevKeys = nil
- i.key = nil
- i.value = nil
- i.dir = dirReleased
- if i.blockReleaser != nil {
- i.blockReleaser.Release()
- i.blockReleaser = nil
- }
- if i.releaser != nil {
- i.releaser.Release()
- i.releaser = nil
- }
- }
-}
-
-func (i *blockIter) SetReleaser(releaser util.Releaser) {
- if i.dir == dirReleased {
- panic(util.ErrReleased)
- }
- if i.releaser != nil && releaser != nil {
- panic(util.ErrHasReleaser)
- }
- i.releaser = releaser
-}
-
-func (i *blockIter) Valid() bool {
- return i.err == nil && (i.dir == dirBackward || i.dir == dirForward)
-}
-
-func (i *blockIter) Error() error {
- return i.err
-}
-
-type filterBlock struct {
- bpool *util.BufferPool
- data []byte
- oOffset int
- baseLg uint
- filtersNum int
-}
-
-func (b *filterBlock) contains(filter filter.Filter, offset uint64, key []byte) bool {
- i := int(offset >> b.baseLg)
- if i < b.filtersNum {
- o := b.data[b.oOffset+i*4:]
- n := int(binary.LittleEndian.Uint32(o))
- m := int(binary.LittleEndian.Uint32(o[4:]))
- if n < m && m <= b.oOffset {
- return filter.Contains(b.data[n:m], key)
- } else if n == m {
- return false
- }
- }
- return true
-}
-
-func (b *filterBlock) Release() {
- b.bpool.Put(b.data)
- b.bpool = nil
- b.data = nil
-}
-
-type indexIter struct {
- *blockIter
- tr *Reader
- slice *util.Range
- // Options
- fillCache bool
-}
-
-func (i *indexIter) Get() iterator.Iterator {
- value := i.Value()
- if value == nil {
- return nil
- }
- dataBH, n := decodeBlockHandle(value)
- if n == 0 {
- return iterator.NewEmptyIterator(i.tr.newErrCorruptedBH(i.tr.indexBH, "bad data block handle"))
- }
-
- var slice *util.Range
- if i.slice != nil && (i.blockIter.isFirst() || i.blockIter.isLast()) {
- slice = i.slice
- }
- return i.tr.getDataIterErr(dataBH, slice, i.tr.verifyChecksum, i.fillCache)
-}
-
-// Reader is a table reader.
-type Reader struct {
- mu sync.RWMutex
- fd storage.FileDesc
- reader io.ReaderAt
- cache *cache.NamespaceGetter
- err error
- bpool *util.BufferPool
- // Options
- o *opt.Options
- cmp comparer.Comparer
- filter filter.Filter
- verifyChecksum bool
-
- dataEnd int64
- metaBH, indexBH, filterBH blockHandle
- indexBlock *block
- filterBlock *filterBlock
-}
-
-func (r *Reader) blockKind(bh blockHandle) string {
- switch bh.offset {
- case r.metaBH.offset:
- return "meta-block"
- case r.indexBH.offset:
- return "index-block"
- case r.filterBH.offset:
- if r.filterBH.length > 0 {
- return "filter-block"
- }
- }
- return "data-block"
-}
-
-func (r *Reader) newErrCorrupted(pos, size int64, kind, reason string) error {
- return &errors.ErrCorrupted{Fd: r.fd, Err: &ErrCorrupted{Pos: pos, Size: size, Kind: kind, Reason: reason}}
-}
-
-func (r *Reader) newErrCorruptedBH(bh blockHandle, reason string) error {
- return r.newErrCorrupted(int64(bh.offset), int64(bh.length), r.blockKind(bh), reason)
-}
-
-func (r *Reader) fixErrCorruptedBH(bh blockHandle, err error) error {
- if cerr, ok := err.(*ErrCorrupted); ok {
- cerr.Pos = int64(bh.offset)
- cerr.Size = int64(bh.length)
- cerr.Kind = r.blockKind(bh)
- return &errors.ErrCorrupted{Fd: r.fd, Err: cerr}
- }
- return err
-}
-
-func (r *Reader) readRawBlock(bh blockHandle, verifyChecksum bool) ([]byte, error) {
- data := r.bpool.Get(int(bh.length + blockTrailerLen))
- if _, err := r.reader.ReadAt(data, int64(bh.offset)); err != nil && err != io.EOF {
- return nil, err
- }
-
- if verifyChecksum {
- n := bh.length + 1
- checksum0 := binary.LittleEndian.Uint32(data[n:])
- checksum1 := util.NewCRC(data[:n]).Value()
- if checksum0 != checksum1 {
- r.bpool.Put(data)
- return nil, r.newErrCorruptedBH(bh, fmt.Sprintf("checksum mismatch, want=%#x got=%#x", checksum0, checksum1))
- }
- }
-
- switch data[bh.length] {
- case blockTypeNoCompression:
- data = data[:bh.length]
- case blockTypeSnappyCompression:
- decLen, err := snappy.DecodedLen(data[:bh.length])
- if err != nil {
- r.bpool.Put(data)
- return nil, r.newErrCorruptedBH(bh, err.Error())
- }
- decData := r.bpool.Get(decLen)
- decData, err = snappy.Decode(decData, data[:bh.length])
- r.bpool.Put(data)
- if err != nil {
- r.bpool.Put(decData)
- return nil, r.newErrCorruptedBH(bh, err.Error())
- }
- data = decData
- default:
- r.bpool.Put(data)
- return nil, r.newErrCorruptedBH(bh, fmt.Sprintf("unknown compression type %#x", data[bh.length]))
- }
- return data, nil
-}
-
-func (r *Reader) readBlock(bh blockHandle, verifyChecksum bool) (*block, error) {
- data, err := r.readRawBlock(bh, verifyChecksum)
- if err != nil {
- return nil, err
- }
- restartsLen := int(binary.LittleEndian.Uint32(data[len(data)-4:]))
- b := &block{
- bpool: r.bpool,
- bh: bh,
- data: data,
- restartsLen: restartsLen,
- restartsOffset: len(data) - (restartsLen+1)*4,
- }
- return b, nil
-}
-
-func (r *Reader) readBlockCached(bh blockHandle, verifyChecksum, fillCache bool) (*block, util.Releaser, error) {
- if r.cache != nil {
- var (
- err error
- ch *cache.Handle
- )
- if fillCache {
- ch = r.cache.Get(bh.offset, func() (size int, value cache.Value) {
- var b *block
- b, err = r.readBlock(bh, verifyChecksum)
- if err != nil {
- return 0, nil
- }
- return cap(b.data), b
- })
- } else {
- ch = r.cache.Get(bh.offset, nil)
- }
- if ch != nil {
- b, ok := ch.Value().(*block)
- if !ok {
- ch.Release()
- return nil, nil, errors.New("leveldb/table: inconsistent block type")
- }
- return b, ch, err
- } else if err != nil {
- return nil, nil, err
- }
- }
-
- b, err := r.readBlock(bh, verifyChecksum)
- return b, b, err
-}
-
-func (r *Reader) readFilterBlock(bh blockHandle) (*filterBlock, error) {
- data, err := r.readRawBlock(bh, true)
- if err != nil {
- return nil, err
- }
- n := len(data)
- if n < 5 {
- return nil, r.newErrCorruptedBH(bh, "too short")
- }
- m := n - 5
- oOffset := int(binary.LittleEndian.Uint32(data[m:]))
- if oOffset > m {
- return nil, r.newErrCorruptedBH(bh, "invalid data-offsets offset")
- }
- b := &filterBlock{
- bpool: r.bpool,
- data: data,
- oOffset: oOffset,
- baseLg: uint(data[n-1]),
- filtersNum: (m - oOffset) / 4,
- }
- return b, nil
-}
-
-func (r *Reader) readFilterBlockCached(bh blockHandle, fillCache bool) (*filterBlock, util.Releaser, error) {
- if r.cache != nil {
- var (
- err error
- ch *cache.Handle
- )
- if fillCache {
- ch = r.cache.Get(bh.offset, func() (size int, value cache.Value) {
- var b *filterBlock
- b, err = r.readFilterBlock(bh)
- if err != nil {
- return 0, nil
- }
- return cap(b.data), b
- })
- } else {
- ch = r.cache.Get(bh.offset, nil)
- }
- if ch != nil {
- b, ok := ch.Value().(*filterBlock)
- if !ok {
- ch.Release()
- return nil, nil, errors.New("leveldb/table: inconsistent block type")
- }
- return b, ch, err
- } else if err != nil {
- return nil, nil, err
- }
- }
-
- b, err := r.readFilterBlock(bh)
- return b, b, err
-}
-
-func (r *Reader) getIndexBlock(fillCache bool) (b *block, rel util.Releaser, err error) {
- if r.indexBlock == nil {
- return r.readBlockCached(r.indexBH, true, fillCache)
- }
- return r.indexBlock, util.NoopReleaser{}, nil
-}
-
-func (r *Reader) getFilterBlock(fillCache bool) (*filterBlock, util.Releaser, error) {
- if r.filterBlock == nil {
- return r.readFilterBlockCached(r.filterBH, fillCache)
- }
- return r.filterBlock, util.NoopReleaser{}, nil
-}
-
-func (r *Reader) newBlockIter(b *block, bReleaser util.Releaser, slice *util.Range, inclLimit bool) *blockIter {
- bi := &blockIter{
- tr: r,
- block: b,
- blockReleaser: bReleaser,
- // Valid key should never be nil.
- key: make([]byte, 0),
- dir: dirSOI,
- riStart: 0,
- riLimit: b.restartsLen,
- offsetStart: 0,
- offsetRealStart: 0,
- offsetLimit: b.restartsOffset,
- }
- if slice != nil {
- if slice.Start != nil {
- if bi.Seek(slice.Start) {
- bi.riStart = b.restartIndex(bi.restartIndex, b.restartsLen, bi.prevOffset)
- bi.offsetStart = b.restartOffset(bi.riStart)
- bi.offsetRealStart = bi.prevOffset
- } else {
- bi.riStart = b.restartsLen
- bi.offsetStart = b.restartsOffset
- bi.offsetRealStart = b.restartsOffset
- }
- }
- if slice.Limit != nil {
- if bi.Seek(slice.Limit) && (!inclLimit || bi.Next()) {
- bi.offsetLimit = bi.prevOffset
- bi.riLimit = bi.restartIndex + 1
- }
- }
- bi.reset()
- if bi.offsetStart > bi.offsetLimit {
- bi.sErr(errors.New("leveldb/table: invalid slice range"))
- }
- }
- return bi
-}
-
-func (r *Reader) getDataIter(dataBH blockHandle, slice *util.Range, verifyChecksum, fillCache bool) iterator.Iterator {
- b, rel, err := r.readBlockCached(dataBH, verifyChecksum, fillCache)
- if err != nil {
- return iterator.NewEmptyIterator(err)
- }
- return r.newBlockIter(b, rel, slice, false)
-}
-
-func (r *Reader) getDataIterErr(dataBH blockHandle, slice *util.Range, verifyChecksum, fillCache bool) iterator.Iterator {
- r.mu.RLock()
- defer r.mu.RUnlock()
-
- if r.err != nil {
- return iterator.NewEmptyIterator(r.err)
- }
-
- return r.getDataIter(dataBH, slice, verifyChecksum, fillCache)
-}
-
-// NewIterator creates an iterator from the table.
-//
-// Slice allows slicing the iterator to only contains keys in the given
-// range. A nil Range.Start is treated as a key before all keys in the
-// table. And a nil Range.Limit is treated as a key after all keys in
-// the table.
-//
-// WARNING: Any slice returned by interator (e.g. slice returned by calling
-// Iterator.Key() or Iterator.Key() methods), its content should not be modified
-// unless noted otherwise.
-//
-// The returned iterator is not safe for concurrent use and should be released
-// after use.
-//
-// Also read Iterator documentation of the leveldb/iterator package.
-func (r *Reader) NewIterator(slice *util.Range, ro *opt.ReadOptions) iterator.Iterator {
- r.mu.RLock()
- defer r.mu.RUnlock()
-
- if r.err != nil {
- return iterator.NewEmptyIterator(r.err)
- }
-
- fillCache := !ro.GetDontFillCache()
- indexBlock, rel, err := r.getIndexBlock(fillCache)
- if err != nil {
- return iterator.NewEmptyIterator(err)
- }
- index := &indexIter{
- blockIter: r.newBlockIter(indexBlock, rel, slice, true),
- tr: r,
- slice: slice,
- fillCache: !ro.GetDontFillCache(),
- }
- return iterator.NewIndexedIterator(index, opt.GetStrict(r.o, ro, opt.StrictReader))
-}
-
-func (r *Reader) find(key []byte, filtered bool, ro *opt.ReadOptions, noValue bool) (rkey, value []byte, err error) {
- r.mu.RLock()
- defer r.mu.RUnlock()
-
- if r.err != nil {
- err = r.err
- return
- }
-
- indexBlock, rel, err := r.getIndexBlock(true)
- if err != nil {
- return
- }
- defer rel.Release()
-
- index := r.newBlockIter(indexBlock, nil, nil, true)
- defer index.Release()
-
- if !index.Seek(key) {
- if err = index.Error(); err == nil {
- err = ErrNotFound
- }
- return
- }
-
- dataBH, n := decodeBlockHandle(index.Value())
- if n == 0 {
- r.err = r.newErrCorruptedBH(r.indexBH, "bad data block handle")
- return nil, nil, r.err
- }
-
- // The filter should only used for exact match.
- if filtered && r.filter != nil {
- filterBlock, frel, ferr := r.getFilterBlock(true)
- if ferr == nil {
- if !filterBlock.contains(r.filter, dataBH.offset, key) {
- frel.Release()
- return nil, nil, ErrNotFound
- }
- frel.Release()
- } else if !errors.IsCorrupted(ferr) {
- return nil, nil, ferr
- }
- }
-
- data := r.getDataIter(dataBH, nil, r.verifyChecksum, !ro.GetDontFillCache())
- if !data.Seek(key) {
- data.Release()
- if err = data.Error(); err != nil {
- return
- }
-
- // The nearest greater-than key is the first key of the next block.
- if !index.Next() {
- if err = index.Error(); err == nil {
- err = ErrNotFound
- }
- return
- }
-
- dataBH, n = decodeBlockHandle(index.Value())
- if n == 0 {
- r.err = r.newErrCorruptedBH(r.indexBH, "bad data block handle")
- return nil, nil, r.err
- }
-
- data = r.getDataIter(dataBH, nil, r.verifyChecksum, !ro.GetDontFillCache())
- if !data.Next() {
- data.Release()
- if err = data.Error(); err == nil {
- err = ErrNotFound
- }
- return
- }
- }
-
- // Key doesn't use block buffer, no need to copy the buffer.
- rkey = data.Key()
- if !noValue {
- if r.bpool == nil {
- value = data.Value()
- } else {
- // Value does use block buffer, and since the buffer will be
- // recycled, it need to be copied.
- value = append([]byte{}, data.Value()...)
- }
- }
- data.Release()
- return
-}
-
-// Find finds key/value pair whose key is greater than or equal to the
-// given key. It returns ErrNotFound if the table doesn't contain
-// such pair.
-// If filtered is true then the nearest 'block' will be checked against
-// 'filter data' (if present) and will immediately return ErrNotFound if
-// 'filter data' indicates that such pair doesn't exist.
-//
-// The caller may modify the contents of the returned slice as it is its
-// own copy.
-// It is safe to modify the contents of the argument after Find returns.
-func (r *Reader) Find(key []byte, filtered bool, ro *opt.ReadOptions) (rkey, value []byte, err error) {
- return r.find(key, filtered, ro, false)
-}
-
-// FindKey finds key that is greater than or equal to the given key.
-// It returns ErrNotFound if the table doesn't contain such key.
-// If filtered is true then the nearest 'block' will be checked against
-// 'filter data' (if present) and will immediately return ErrNotFound if
-// 'filter data' indicates that such key doesn't exist.
-//
-// The caller may modify the contents of the returned slice as it is its
-// own copy.
-// It is safe to modify the contents of the argument after Find returns.
-func (r *Reader) FindKey(key []byte, filtered bool, ro *opt.ReadOptions) (rkey []byte, err error) {
- rkey, _, err = r.find(key, filtered, ro, true)
- return
-}
-
-// Get gets the value for the given key. It returns errors.ErrNotFound
-// if the table does not contain the key.
-//
-// The caller may modify the contents of the returned slice as it is its
-// own copy.
-// It is safe to modify the contents of the argument after Find returns.
-func (r *Reader) Get(key []byte, ro *opt.ReadOptions) (value []byte, err error) {
- r.mu.RLock()
- defer r.mu.RUnlock()
-
- if r.err != nil {
- err = r.err
- return
- }
-
- rkey, value, err := r.find(key, false, ro, false)
- if err == nil && r.cmp.Compare(rkey, key) != 0 {
- value = nil
- err = ErrNotFound
- }
- return
-}
-
-// OffsetOf returns approximate offset for the given key.
-//
-// It is safe to modify the contents of the argument after Get returns.
-func (r *Reader) OffsetOf(key []byte) (offset int64, err error) {
- r.mu.RLock()
- defer r.mu.RUnlock()
-
- if r.err != nil {
- err = r.err
- return
- }
-
- indexBlock, rel, err := r.readBlockCached(r.indexBH, true, true)
- if err != nil {
- return
- }
- defer rel.Release()
-
- index := r.newBlockIter(indexBlock, nil, nil, true)
- defer index.Release()
- if index.Seek(key) {
- dataBH, n := decodeBlockHandle(index.Value())
- if n == 0 {
- r.err = r.newErrCorruptedBH(r.indexBH, "bad data block handle")
- return
- }
- offset = int64(dataBH.offset)
- return
- }
- err = index.Error()
- if err == nil {
- offset = r.dataEnd
- }
- return
-}
-
-// Release implements util.Releaser.
-// It also close the file if it is an io.Closer.
-func (r *Reader) Release() {
- r.mu.Lock()
- defer r.mu.Unlock()
-
- if closer, ok := r.reader.(io.Closer); ok {
- closer.Close()
- }
- if r.indexBlock != nil {
- r.indexBlock.Release()
- r.indexBlock = nil
- }
- if r.filterBlock != nil {
- r.filterBlock.Release()
- r.filterBlock = nil
- }
- r.reader = nil
- r.cache = nil
- r.bpool = nil
- r.err = ErrReaderReleased
-}
-
-// NewReader creates a new initialized table reader for the file.
-// The fi, cache and bpool is optional and can be nil.
-//
-// The returned table reader instance is safe for concurrent use.
-func NewReader(f io.ReaderAt, size int64, fd storage.FileDesc, cache *cache.NamespaceGetter, bpool *util.BufferPool, o *opt.Options) (*Reader, error) {
- if f == nil {
- return nil, errors.New("leveldb/table: nil file")
- }
-
- r := &Reader{
- fd: fd,
- reader: f,
- cache: cache,
- bpool: bpool,
- o: o,
- cmp: o.GetComparer(),
- verifyChecksum: o.GetStrict(opt.StrictBlockChecksum),
- }
-
- if size < footerLen {
- r.err = r.newErrCorrupted(0, size, "table", "too small")
- return r, nil
- }
-
- footerPos := size - footerLen
- var footer [footerLen]byte
- if _, err := r.reader.ReadAt(footer[:], footerPos); err != nil && err != io.EOF {
- return nil, err
- }
- if string(footer[footerLen-len(magic):footerLen]) != magic {
- r.err = r.newErrCorrupted(footerPos, footerLen, "table-footer", "bad magic number")
- return r, nil
- }
-
- var n int
- // Decode the metaindex block handle.
- r.metaBH, n = decodeBlockHandle(footer[:])
- if n == 0 {
- r.err = r.newErrCorrupted(footerPos, footerLen, "table-footer", "bad metaindex block handle")
- return r, nil
- }
-
- // Decode the index block handle.
- r.indexBH, n = decodeBlockHandle(footer[n:])
- if n == 0 {
- r.err = r.newErrCorrupted(footerPos, footerLen, "table-footer", "bad index block handle")
- return r, nil
- }
-
- // Read metaindex block.
- metaBlock, err := r.readBlock(r.metaBH, true)
- if err != nil {
- if errors.IsCorrupted(err) {
- r.err = err
- return r, nil
- }
- return nil, err
- }
-
- // Set data end.
- r.dataEnd = int64(r.metaBH.offset)
-
- // Read metaindex.
- metaIter := r.newBlockIter(metaBlock, nil, nil, true)
- for metaIter.Next() {
- key := string(metaIter.Key())
- if !strings.HasPrefix(key, "filter.") {
- continue
- }
- fn := key[7:]
- if f0 := o.GetFilter(); f0 != nil && f0.Name() == fn {
- r.filter = f0
- } else {
- for _, f0 := range o.GetAltFilters() {
- if f0.Name() == fn {
- r.filter = f0
- break
- }
- }
- }
- if r.filter != nil {
- filterBH, n := decodeBlockHandle(metaIter.Value())
- if n == 0 {
- continue
- }
- r.filterBH = filterBH
- // Update data end.
- r.dataEnd = int64(filterBH.offset)
- break
- }
- }
- metaIter.Release()
- metaBlock.Release()
-
- // Cache index and filter block locally, since we don't have global cache.
- if cache == nil {
- r.indexBlock, err = r.readBlock(r.indexBH, true)
- if err != nil {
- if errors.IsCorrupted(err) {
- r.err = err
- return r, nil
- }
- return nil, err
- }
- if r.filter != nil {
- r.filterBlock, err = r.readFilterBlock(r.filterBH)
- if err != nil {
- if !errors.IsCorrupted(err) {
- return nil, err
- }
-
- // Don't use filter then.
- r.filter = nil
- }
- }
- }
-
- return r, nil
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/table/table.go b/vendor/github.com/syndtr/goleveldb/leveldb/table/table.go
deleted file mode 100644
index beacdc1f..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/table/table.go
+++ /dev/null
@@ -1,177 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package table allows read and write sorted key/value.
-package table
-
-import (
- "encoding/binary"
-)
-
-/*
-Table:
-
-Table is consist of one or more data blocks, an optional filter block
-a metaindex block, an index block and a table footer. Metaindex block
-is a special block used to keep parameters of the table, such as filter
-block name and its block handle. Index block is a special block used to
-keep record of data blocks offset and length, index block use one as
-restart interval. The key used by index block are the last key of preceding
-block, shorter separator of adjacent blocks or shorter successor of the
-last key of the last block. Filter block is an optional block contains
-sequence of filter data generated by a filter generator.
-
-Table data structure:
- + optional
- /
- +--------------+--------------+--------------+------+-------+-----------------+-------------+--------+
- | data block 1 | ... | data block n | filter block | metaindex block | index block | footer |
- +--------------+--------------+--------------+--------------+-----------------+-------------+--------+
-
- Each block followed by a 5-bytes trailer contains compression type and checksum.
-
-Table block trailer:
-
- +---------------------------+-------------------+
- | compression type (1-byte) | checksum (4-byte) |
- +---------------------------+-------------------+
-
- The checksum is a CRC-32 computed using Castagnoli's polynomial. Compression
- type also included in the checksum.
-
-Table footer:
-
- +------------------- 40-bytes -------------------+
- / \
- +------------------------+--------------------+------+-----------------+
- | metaindex block handle / index block handle / ---- | magic (8-bytes) |
- +------------------------+--------------------+------+-----------------+
-
- The magic are first 64-bit of SHA-1 sum of "http://code.google.com/p/leveldb/".
-
-NOTE: All fixed-length integer are little-endian.
-*/
-
-/*
-Block:
-
-Block is consist of one or more key/value entries and a block trailer.
-Block entry shares key prefix with its preceding key until a restart
-point reached. A block should contains at least one restart point.
-First restart point are always zero.
-
-Block data structure:
-
- + restart point + restart point (depends on restart interval)
- / /
- +---------------+---------------+---------------+---------------+---------+
- | block entry 1 | block entry 2 | ... | block entry n | trailer |
- +---------------+---------------+---------------+---------------+---------+
-
-Key/value entry:
-
- +---- key len ----+
- / \
- +-------+---------+-----------+---------+--------------------+--------------+----------------+
- | shared (varint) | not shared (varint) | value len (varint) | key (varlen) | value (varlen) |
- +-----------------+---------------------+--------------------+--------------+----------------+
-
- Block entry shares key prefix with its preceding key:
- Conditions:
- restart_interval=2
- entry one : key=deck,value=v1
- entry two : key=dock,value=v2
- entry three: key=duck,value=v3
- The entries will be encoded as follow:
-
- + restart point (offset=0) + restart point (offset=16)
- / /
- +-----+-----+-----+----------+--------+-----+-----+-----+---------+--------+-----+-----+-----+----------+--------+
- | 0 | 4 | 2 | "deck" | "v1" | 1 | 3 | 2 | "ock" | "v2" | 0 | 4 | 2 | "duck" | "v3" |
- +-----+-----+-----+----------+--------+-----+-----+-----+---------+--------+-----+-----+-----+----------+--------+
- \ / \ / \ /
- +----------- entry one -----------+ +----------- entry two ----------+ +---------- entry three ----------+
-
- The block trailer will contains two restart points:
-
- +------------+-----------+--------+
- | 0 | 16 | 2 |
- +------------+-----------+---+----+
- \ / \
- +-- restart points --+ + restart points length
-
-Block trailer:
-
- +-- 4-bytes --+
- / \
- +-----------------+-----------------+-----------------+------------------------------+
- | restart point 1 | .... | restart point n | restart points len (4-bytes) |
- +-----------------+-----------------+-----------------+------------------------------+
-
-
-NOTE: All fixed-length integer are little-endian.
-*/
-
-/*
-Filter block:
-
-Filter block consist of one or more filter data and a filter block trailer.
-The trailer contains filter data offsets, a trailer offset and a 1-byte base Lg.
-
-Filter block data structure:
-
- + offset 1 + offset 2 + offset n + trailer offset
- / / / /
- +---------------+---------------+---------------+---------+
- | filter data 1 | ... | filter data n | trailer |
- +---------------+---------------+---------------+---------+
-
-Filter block trailer:
-
- +- 4-bytes -+
- / \
- +---------------+---------------+---------------+-------------------------------+------------------+
- | data 1 offset | .... | data n offset | data-offsets offset (4-bytes) | base Lg (1-byte) |
- +-------------- +---------------+---------------+-------------------------------+------------------+
-
-
-NOTE: All fixed-length integer are little-endian.
-*/
-
-const (
- blockTrailerLen = 5
- footerLen = 48
-
- magic = "\x57\xfb\x80\x8b\x24\x75\x47\xdb"
-
- // The block type gives the per-block compression format.
- // These constants are part of the file format and should not be changed.
- blockTypeNoCompression = 0
- blockTypeSnappyCompression = 1
-
- // Generate new filter every 2KB of data
- filterBaseLg = 11
- filterBase = 1 << filterBaseLg
-)
-
-type blockHandle struct {
- offset, length uint64
-}
-
-func decodeBlockHandle(src []byte) (blockHandle, int) {
- offset, n := binary.Uvarint(src)
- length, m := binary.Uvarint(src[n:])
- if n == 0 || m == 0 {
- return blockHandle{}, 0
- }
- return blockHandle{offset, length}, n + m
-}
-
-func encodeBlockHandle(dst []byte, b blockHandle) int {
- n := binary.PutUvarint(dst, b.offset)
- m := binary.PutUvarint(dst[n:], b.length)
- return n + m
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/table/writer.go b/vendor/github.com/syndtr/goleveldb/leveldb/table/writer.go
deleted file mode 100644
index b96b271d..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/table/writer.go
+++ /dev/null
@@ -1,375 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package table
-
-import (
- "encoding/binary"
- "errors"
- "fmt"
- "io"
-
- "github.com/golang/snappy"
-
- "github.com/syndtr/goleveldb/leveldb/comparer"
- "github.com/syndtr/goleveldb/leveldb/filter"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-func sharedPrefixLen(a, b []byte) int {
- i, n := 0, len(a)
- if n > len(b) {
- n = len(b)
- }
- for i < n && a[i] == b[i] {
- i++
- }
- return i
-}
-
-type blockWriter struct {
- restartInterval int
- buf util.Buffer
- nEntries int
- prevKey []byte
- restarts []uint32
- scratch []byte
-}
-
-func (w *blockWriter) append(key, value []byte) {
- nShared := 0
- if w.nEntries%w.restartInterval == 0 {
- w.restarts = append(w.restarts, uint32(w.buf.Len()))
- } else {
- nShared = sharedPrefixLen(w.prevKey, key)
- }
- n := binary.PutUvarint(w.scratch[0:], uint64(nShared))
- n += binary.PutUvarint(w.scratch[n:], uint64(len(key)-nShared))
- n += binary.PutUvarint(w.scratch[n:], uint64(len(value)))
- w.buf.Write(w.scratch[:n])
- w.buf.Write(key[nShared:])
- w.buf.Write(value)
- w.prevKey = append(w.prevKey[:0], key...)
- w.nEntries++
-}
-
-func (w *blockWriter) finish() {
- // Write restarts entry.
- if w.nEntries == 0 {
- // Must have at least one restart entry.
- w.restarts = append(w.restarts, 0)
- }
- w.restarts = append(w.restarts, uint32(len(w.restarts)))
- for _, x := range w.restarts {
- buf4 := w.buf.Alloc(4)
- binary.LittleEndian.PutUint32(buf4, x)
- }
-}
-
-func (w *blockWriter) reset() {
- w.buf.Reset()
- w.nEntries = 0
- w.restarts = w.restarts[:0]
-}
-
-func (w *blockWriter) bytesLen() int {
- restartsLen := len(w.restarts)
- if restartsLen == 0 {
- restartsLen = 1
- }
- return w.buf.Len() + 4*restartsLen + 4
-}
-
-type filterWriter struct {
- generator filter.FilterGenerator
- buf util.Buffer
- nKeys int
- offsets []uint32
-}
-
-func (w *filterWriter) add(key []byte) {
- if w.generator == nil {
- return
- }
- w.generator.Add(key)
- w.nKeys++
-}
-
-func (w *filterWriter) flush(offset uint64) {
- if w.generator == nil {
- return
- }
- for x := int(offset / filterBase); x > len(w.offsets); {
- w.generate()
- }
-}
-
-func (w *filterWriter) finish() {
- if w.generator == nil {
- return
- }
- // Generate last keys.
-
- if w.nKeys > 0 {
- w.generate()
- }
- w.offsets = append(w.offsets, uint32(w.buf.Len()))
- for _, x := range w.offsets {
- buf4 := w.buf.Alloc(4)
- binary.LittleEndian.PutUint32(buf4, x)
- }
- w.buf.WriteByte(filterBaseLg)
-}
-
-func (w *filterWriter) generate() {
- // Record offset.
- w.offsets = append(w.offsets, uint32(w.buf.Len()))
- // Generate filters.
- if w.nKeys > 0 {
- w.generator.Generate(&w.buf)
- w.nKeys = 0
- }
-}
-
-// Writer is a table writer.
-type Writer struct {
- writer io.Writer
- err error
- // Options
- cmp comparer.Comparer
- filter filter.Filter
- compression opt.Compression
- blockSize int
-
- dataBlock blockWriter
- indexBlock blockWriter
- filterBlock filterWriter
- pendingBH blockHandle
- offset uint64
- nEntries int
- // Scratch allocated enough for 5 uvarint. Block writer should not use
- // first 20-bytes since it will be used to encode block handle, which
- // then passed to the block writer itself.
- scratch [50]byte
- comparerScratch []byte
- compressionScratch []byte
-}
-
-func (w *Writer) writeBlock(buf *util.Buffer, compression opt.Compression) (bh blockHandle, err error) {
- // Compress the buffer if necessary.
- var b []byte
- if compression == opt.SnappyCompression {
- // Allocate scratch enough for compression and block trailer.
- if n := snappy.MaxEncodedLen(buf.Len()) + blockTrailerLen; len(w.compressionScratch) < n {
- w.compressionScratch = make([]byte, n)
- }
- compressed := snappy.Encode(w.compressionScratch, buf.Bytes())
- n := len(compressed)
- b = compressed[:n+blockTrailerLen]
- b[n] = blockTypeSnappyCompression
- } else {
- tmp := buf.Alloc(blockTrailerLen)
- tmp[0] = blockTypeNoCompression
- b = buf.Bytes()
- }
-
- // Calculate the checksum.
- n := len(b) - 4
- checksum := util.NewCRC(b[:n]).Value()
- binary.LittleEndian.PutUint32(b[n:], checksum)
-
- // Write the buffer to the file.
- _, err = w.writer.Write(b)
- if err != nil {
- return
- }
- bh = blockHandle{w.offset, uint64(len(b) - blockTrailerLen)}
- w.offset += uint64(len(b))
- return
-}
-
-func (w *Writer) flushPendingBH(key []byte) {
- if w.pendingBH.length == 0 {
- return
- }
- var separator []byte
- if len(key) == 0 {
- separator = w.cmp.Successor(w.comparerScratch[:0], w.dataBlock.prevKey)
- } else {
- separator = w.cmp.Separator(w.comparerScratch[:0], w.dataBlock.prevKey, key)
- }
- if separator == nil {
- separator = w.dataBlock.prevKey
- } else {
- w.comparerScratch = separator
- }
- n := encodeBlockHandle(w.scratch[:20], w.pendingBH)
- // Append the block handle to the index block.
- w.indexBlock.append(separator, w.scratch[:n])
- // Reset prev key of the data block.
- w.dataBlock.prevKey = w.dataBlock.prevKey[:0]
- // Clear pending block handle.
- w.pendingBH = blockHandle{}
-}
-
-func (w *Writer) finishBlock() error {
- w.dataBlock.finish()
- bh, err := w.writeBlock(&w.dataBlock.buf, w.compression)
- if err != nil {
- return err
- }
- w.pendingBH = bh
- // Reset the data block.
- w.dataBlock.reset()
- // Flush the filter block.
- w.filterBlock.flush(w.offset)
- return nil
-}
-
-// Append appends key/value pair to the table. The keys passed must
-// be in increasing order.
-//
-// It is safe to modify the contents of the arguments after Append returns.
-func (w *Writer) Append(key, value []byte) error {
- if w.err != nil {
- return w.err
- }
- if w.nEntries > 0 && w.cmp.Compare(w.dataBlock.prevKey, key) >= 0 {
- w.err = fmt.Errorf("leveldb/table: Writer: keys are not in increasing order: %q, %q", w.dataBlock.prevKey, key)
- return w.err
- }
-
- w.flushPendingBH(key)
- // Append key/value pair to the data block.
- w.dataBlock.append(key, value)
- // Add key to the filter block.
- w.filterBlock.add(key)
-
- // Finish the data block if block size target reached.
- if w.dataBlock.bytesLen() >= w.blockSize {
- if err := w.finishBlock(); err != nil {
- w.err = err
- return w.err
- }
- }
- w.nEntries++
- return nil
-}
-
-// BlocksLen returns number of blocks written so far.
-func (w *Writer) BlocksLen() int {
- n := w.indexBlock.nEntries
- if w.pendingBH.length > 0 {
- // Includes the pending block.
- n++
- }
- return n
-}
-
-// EntriesLen returns number of entries added so far.
-func (w *Writer) EntriesLen() int {
- return w.nEntries
-}
-
-// BytesLen returns number of bytes written so far.
-func (w *Writer) BytesLen() int {
- return int(w.offset)
-}
-
-// Close will finalize the table. Calling Append is not possible
-// after Close, but calling BlocksLen, EntriesLen and BytesLen
-// is still possible.
-func (w *Writer) Close() error {
- if w.err != nil {
- return w.err
- }
-
- // Write the last data block. Or empty data block if there
- // aren't any data blocks at all.
- if w.dataBlock.nEntries > 0 || w.nEntries == 0 {
- if err := w.finishBlock(); err != nil {
- w.err = err
- return w.err
- }
- }
- w.flushPendingBH(nil)
-
- // Write the filter block.
- var filterBH blockHandle
- w.filterBlock.finish()
- if buf := &w.filterBlock.buf; buf.Len() > 0 {
- filterBH, w.err = w.writeBlock(buf, opt.NoCompression)
- if w.err != nil {
- return w.err
- }
- }
-
- // Write the metaindex block.
- if filterBH.length > 0 {
- key := []byte("filter." + w.filter.Name())
- n := encodeBlockHandle(w.scratch[:20], filterBH)
- w.dataBlock.append(key, w.scratch[:n])
- }
- w.dataBlock.finish()
- metaindexBH, err := w.writeBlock(&w.dataBlock.buf, w.compression)
- if err != nil {
- w.err = err
- return w.err
- }
-
- // Write the index block.
- w.indexBlock.finish()
- indexBH, err := w.writeBlock(&w.indexBlock.buf, w.compression)
- if err != nil {
- w.err = err
- return w.err
- }
-
- // Write the table footer.
- footer := w.scratch[:footerLen]
- for i := range footer {
- footer[i] = 0
- }
- n := encodeBlockHandle(footer, metaindexBH)
- encodeBlockHandle(footer[n:], indexBH)
- copy(footer[footerLen-len(magic):], magic)
- if _, err := w.writer.Write(footer); err != nil {
- w.err = err
- return w.err
- }
- w.offset += footerLen
-
- w.err = errors.New("leveldb/table: writer is closed")
- return nil
-}
-
-// NewWriter creates a new initialized table writer for the file.
-//
-// Table writer is not safe for concurrent use.
-func NewWriter(f io.Writer, o *opt.Options) *Writer {
- w := &Writer{
- writer: f,
- cmp: o.GetComparer(),
- filter: o.GetFilter(),
- compression: o.GetCompression(),
- blockSize: o.GetBlockSize(),
- comparerScratch: make([]byte, 0),
- }
- // data block
- w.dataBlock.restartInterval = o.GetBlockRestartInterval()
- // The first 20-bytes are used for encoding block handle.
- w.dataBlock.scratch = w.scratch[20:]
- // index block
- w.indexBlock.restartInterval = 1
- w.indexBlock.scratch = w.scratch[20:]
- // filter block
- if w.filter != nil {
- w.filterBlock.generator = w.filter.NewGenerator()
- w.filterBlock.flush(0)
- }
- return w
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util.go b/vendor/github.com/syndtr/goleveldb/leveldb/util.go
deleted file mode 100644
index 0e2b519e..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util.go
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "fmt"
- "sort"
-
- "github.com/syndtr/goleveldb/leveldb/storage"
-)
-
-func shorten(str string) string {
- if len(str) <= 8 {
- return str
- }
- return str[:3] + ".." + str[len(str)-3:]
-}
-
-var bunits = [...]string{"", "Ki", "Mi", "Gi", "Ti"}
-
-func shortenb(bytes int) string {
- i := 0
- for ; bytes > 1024 && i < 4; i++ {
- bytes /= 1024
- }
- return fmt.Sprintf("%d%sB", bytes, bunits[i])
-}
-
-func sshortenb(bytes int) string {
- if bytes == 0 {
- return "~"
- }
- sign := "+"
- if bytes < 0 {
- sign = "-"
- bytes *= -1
- }
- i := 0
- for ; bytes > 1024 && i < 4; i++ {
- bytes /= 1024
- }
- return fmt.Sprintf("%s%d%sB", sign, bytes, bunits[i])
-}
-
-func sint(x int) string {
- if x == 0 {
- return "~"
- }
- sign := "+"
- if x < 0 {
- sign = "-"
- x *= -1
- }
- return fmt.Sprintf("%s%d", sign, x)
-}
-
-func minInt(a, b int) int {
- if a < b {
- return a
- }
- return b
-}
-
-func maxInt(a, b int) int {
- if a > b {
- return a
- }
- return b
-}
-
-type fdSorter []storage.FileDesc
-
-func (p fdSorter) Len() int {
- return len(p)
-}
-
-func (p fdSorter) Less(i, j int) bool {
- return p[i].Num < p[j].Num
-}
-
-func (p fdSorter) Swap(i, j int) {
- p[i], p[j] = p[j], p[i]
-}
-
-func sortFds(fds []storage.FileDesc) {
- sort.Sort(fdSorter(fds))
-}
-
-func ensureBuffer(b []byte, n int) []byte {
- if cap(b) < n {
- return make([]byte, n)
- }
- return b[:n]
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util/buffer.go b/vendor/github.com/syndtr/goleveldb/leveldb/util/buffer.go
deleted file mode 100644
index 21de2425..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util/buffer.go
+++ /dev/null
@@ -1,293 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package util
-
-// This a copy of Go std bytes.Buffer with some modification
-// and some features stripped.
-
-import (
- "bytes"
- "io"
-)
-
-// A Buffer is a variable-sized buffer of bytes with Read and Write methods.
-// The zero value for Buffer is an empty buffer ready to use.
-type Buffer struct {
- buf []byte // contents are the bytes buf[off : len(buf)]
- off int // read at &buf[off], write at &buf[len(buf)]
- bootstrap [64]byte // memory to hold first slice; helps small buffers (Printf) avoid allocation.
-}
-
-// Bytes returns a slice of the contents of the unread portion of the buffer;
-// len(b.Bytes()) == b.Len(). If the caller changes the contents of the
-// returned slice, the contents of the buffer will change provided there
-// are no intervening method calls on the Buffer.
-func (b *Buffer) Bytes() []byte { return b.buf[b.off:] }
-
-// String returns the contents of the unread portion of the buffer
-// as a string. If the Buffer is a nil pointer, it returns "".
-func (b *Buffer) String() string {
- if b == nil {
- // Special case, useful in debugging.
- return ""
- }
- return string(b.buf[b.off:])
-}
-
-// Len returns the number of bytes of the unread portion of the buffer;
-// b.Len() == len(b.Bytes()).
-func (b *Buffer) Len() int { return len(b.buf) - b.off }
-
-// Truncate discards all but the first n unread bytes from the buffer.
-// It panics if n is negative or greater than the length of the buffer.
-func (b *Buffer) Truncate(n int) {
- switch {
- case n < 0 || n > b.Len():
- panic("leveldb/util.Buffer: truncation out of range")
- case n == 0:
- // Reuse buffer space.
- b.off = 0
- }
- b.buf = b.buf[0 : b.off+n]
-}
-
-// Reset resets the buffer so it has no content.
-// b.Reset() is the same as b.Truncate(0).
-func (b *Buffer) Reset() { b.Truncate(0) }
-
-// grow grows the buffer to guarantee space for n more bytes.
-// It returns the index where bytes should be written.
-// If the buffer can't grow it will panic with bytes.ErrTooLarge.
-func (b *Buffer) grow(n int) int {
- m := b.Len()
- // If buffer is empty, reset to recover space.
- if m == 0 && b.off != 0 {
- b.Truncate(0)
- }
- if len(b.buf)+n > cap(b.buf) {
- var buf []byte
- if b.buf == nil && n <= len(b.bootstrap) {
- buf = b.bootstrap[0:]
- } else if m+n <= cap(b.buf)/2 {
- // We can slide things down instead of allocating a new
- // slice. We only need m+n <= cap(b.buf) to slide, but
- // we instead let capacity get twice as large so we
- // don't spend all our time copying.
- copy(b.buf[:], b.buf[b.off:])
- buf = b.buf[:m]
- } else {
- // not enough space anywhere
- buf = makeSlice(2*cap(b.buf) + n)
- copy(buf, b.buf[b.off:])
- }
- b.buf = buf
- b.off = 0
- }
- b.buf = b.buf[0 : b.off+m+n]
- return b.off + m
-}
-
-// Alloc allocs n bytes of slice from the buffer, growing the buffer as
-// needed. If n is negative, Alloc will panic.
-// If the buffer can't grow it will panic with bytes.ErrTooLarge.
-func (b *Buffer) Alloc(n int) []byte {
- if n < 0 {
- panic("leveldb/util.Buffer.Alloc: negative count")
- }
- m := b.grow(n)
- return b.buf[m:]
-}
-
-// Grow grows the buffer's capacity, if necessary, to guarantee space for
-// another n bytes. After Grow(n), at least n bytes can be written to the
-// buffer without another allocation.
-// If n is negative, Grow will panic.
-// If the buffer can't grow it will panic with bytes.ErrTooLarge.
-func (b *Buffer) Grow(n int) {
- if n < 0 {
- panic("leveldb/util.Buffer.Grow: negative count")
- }
- m := b.grow(n)
- b.buf = b.buf[0:m]
-}
-
-// Write appends the contents of p to the buffer, growing the buffer as
-// needed. The return value n is the length of p; err is always nil. If the
-// buffer becomes too large, Write will panic with bytes.ErrTooLarge.
-func (b *Buffer) Write(p []byte) (n int, err error) {
- m := b.grow(len(p))
- return copy(b.buf[m:], p), nil
-}
-
-// MinRead is the minimum slice size passed to a Read call by
-// Buffer.ReadFrom. As long as the Buffer has at least MinRead bytes beyond
-// what is required to hold the contents of r, ReadFrom will not grow the
-// underlying buffer.
-const MinRead = 512
-
-// ReadFrom reads data from r until EOF and appends it to the buffer, growing
-// the buffer as needed. The return value n is the number of bytes read. Any
-// error except io.EOF encountered during the read is also returned. If the
-// buffer becomes too large, ReadFrom will panic with bytes.ErrTooLarge.
-func (b *Buffer) ReadFrom(r io.Reader) (n int64, err error) {
- // If buffer is empty, reset to recover space.
- if b.off >= len(b.buf) {
- b.Truncate(0)
- }
- for {
- if free := cap(b.buf) - len(b.buf); free < MinRead {
- // not enough space at end
- newBuf := b.buf
- if b.off+free < MinRead {
- // not enough space using beginning of buffer;
- // double buffer capacity
- newBuf = makeSlice(2*cap(b.buf) + MinRead)
- }
- copy(newBuf, b.buf[b.off:])
- b.buf = newBuf[:len(b.buf)-b.off]
- b.off = 0
- }
- m, e := r.Read(b.buf[len(b.buf):cap(b.buf)])
- b.buf = b.buf[0 : len(b.buf)+m]
- n += int64(m)
- if e == io.EOF {
- break
- }
- if e != nil {
- return n, e
- }
- }
- return n, nil // err is EOF, so return nil explicitly
-}
-
-// makeSlice allocates a slice of size n. If the allocation fails, it panics
-// with bytes.ErrTooLarge.
-func makeSlice(n int) []byte {
- // If the make fails, give a known error.
- defer func() {
- if recover() != nil {
- panic(bytes.ErrTooLarge)
- }
- }()
- return make([]byte, n)
-}
-
-// WriteTo writes data to w until the buffer is drained or an error occurs.
-// The return value n is the number of bytes written; it always fits into an
-// int, but it is int64 to match the io.WriterTo interface. Any error
-// encountered during the write is also returned.
-func (b *Buffer) WriteTo(w io.Writer) (n int64, err error) {
- if b.off < len(b.buf) {
- nBytes := b.Len()
- m, e := w.Write(b.buf[b.off:])
- if m > nBytes {
- panic("leveldb/util.Buffer.WriteTo: invalid Write count")
- }
- b.off += m
- n = int64(m)
- if e != nil {
- return n, e
- }
- // all bytes should have been written, by definition of
- // Write method in io.Writer
- if m != nBytes {
- return n, io.ErrShortWrite
- }
- }
- // Buffer is now empty; reset.
- b.Truncate(0)
- return
-}
-
-// WriteByte appends the byte c to the buffer, growing the buffer as needed.
-// The returned error is always nil, but is included to match bufio.Writer's
-// WriteByte. If the buffer becomes too large, WriteByte will panic with
-// bytes.ErrTooLarge.
-func (b *Buffer) WriteByte(c byte) error {
- m := b.grow(1)
- b.buf[m] = c
- return nil
-}
-
-// Read reads the next len(p) bytes from the buffer or until the buffer
-// is drained. The return value n is the number of bytes read. If the
-// buffer has no data to return, err is io.EOF (unless len(p) is zero);
-// otherwise it is nil.
-func (b *Buffer) Read(p []byte) (n int, err error) {
- if b.off >= len(b.buf) {
- // Buffer is empty, reset to recover space.
- b.Truncate(0)
- if len(p) == 0 {
- return
- }
- return 0, io.EOF
- }
- n = copy(p, b.buf[b.off:])
- b.off += n
- return
-}
-
-// Next returns a slice containing the next n bytes from the buffer,
-// advancing the buffer as if the bytes had been returned by Read.
-// If there are fewer than n bytes in the buffer, Next returns the entire buffer.
-// The slice is only valid until the next call to a read or write method.
-func (b *Buffer) Next(n int) []byte {
- m := b.Len()
- if n > m {
- n = m
- }
- data := b.buf[b.off : b.off+n]
- b.off += n
- return data
-}
-
-// ReadByte reads and returns the next byte from the buffer.
-// If no byte is available, it returns error io.EOF.
-func (b *Buffer) ReadByte() (c byte, err error) {
- if b.off >= len(b.buf) {
- // Buffer is empty, reset to recover space.
- b.Truncate(0)
- return 0, io.EOF
- }
- c = b.buf[b.off]
- b.off++
- return c, nil
-}
-
-// ReadBytes reads until the first occurrence of delim in the input,
-// returning a slice containing the data up to and including the delimiter.
-// If ReadBytes encounters an error before finding a delimiter,
-// it returns the data read before the error and the error itself (often io.EOF).
-// ReadBytes returns err != nil if and only if the returned data does not end in
-// delim.
-func (b *Buffer) ReadBytes(delim byte) (line []byte, err error) {
- slice, err := b.readSlice(delim)
- // return a copy of slice. The buffer's backing array may
- // be overwritten by later calls.
- line = append(line, slice...)
- return
-}
-
-// readSlice is like ReadBytes but returns a reference to internal buffer data.
-func (b *Buffer) readSlice(delim byte) (line []byte, err error) {
- i := bytes.IndexByte(b.buf[b.off:], delim)
- end := b.off + i + 1
- if i < 0 {
- end = len(b.buf)
- err = io.EOF
- }
- line = b.buf[b.off:end]
- b.off = end
- return line, err
-}
-
-// NewBuffer creates and initializes a new Buffer using buf as its initial
-// contents. It is intended to prepare a Buffer to read existing data. It
-// can also be used to size the internal buffer for writing. To do that,
-// buf should have the desired capacity but a length of zero.
-//
-// In most cases, new(Buffer) (or just declaring a Buffer variable) is
-// sufficient to initialize a Buffer.
-func NewBuffer(buf []byte) *Buffer { return &Buffer{buf: buf} }
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go b/vendor/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go
deleted file mode 100644
index 2f3db974..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go
+++ /dev/null
@@ -1,239 +0,0 @@
-// Copyright (c) 2014, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package util
-
-import (
- "fmt"
- "sync"
- "sync/atomic"
- "time"
-)
-
-type buffer struct {
- b []byte
- miss int
-}
-
-// BufferPool is a 'buffer pool'.
-type BufferPool struct {
- pool [6]chan []byte
- size [5]uint32
- sizeMiss [5]uint32
- sizeHalf [5]uint32
- baseline [4]int
- baseline0 int
-
- mu sync.RWMutex
- closed bool
- closeC chan struct{}
-
- get uint32
- put uint32
- half uint32
- less uint32
- equal uint32
- greater uint32
- miss uint32
-}
-
-func (p *BufferPool) poolNum(n int) int {
- if n <= p.baseline0 && n > p.baseline0/2 {
- return 0
- }
- for i, x := range p.baseline {
- if n <= x {
- return i + 1
- }
- }
- return len(p.baseline) + 1
-}
-
-// Get returns buffer with length of n.
-func (p *BufferPool) Get(n int) []byte {
- if p == nil {
- return make([]byte, n)
- }
-
- p.mu.RLock()
- defer p.mu.RUnlock()
-
- if p.closed {
- return make([]byte, n)
- }
-
- atomic.AddUint32(&p.get, 1)
-
- poolNum := p.poolNum(n)
- pool := p.pool[poolNum]
- if poolNum == 0 {
- // Fast path.
- select {
- case b := <-pool:
- switch {
- case cap(b) > n:
- if cap(b)-n >= n {
- atomic.AddUint32(&p.half, 1)
- select {
- case pool <- b:
- default:
- }
- return make([]byte, n)
- } else {
- atomic.AddUint32(&p.less, 1)
- return b[:n]
- }
- case cap(b) == n:
- atomic.AddUint32(&p.equal, 1)
- return b[:n]
- default:
- atomic.AddUint32(&p.greater, 1)
- }
- default:
- atomic.AddUint32(&p.miss, 1)
- }
-
- return make([]byte, n, p.baseline0)
- } else {
- sizePtr := &p.size[poolNum-1]
-
- select {
- case b := <-pool:
- switch {
- case cap(b) > n:
- if cap(b)-n >= n {
- atomic.AddUint32(&p.half, 1)
- sizeHalfPtr := &p.sizeHalf[poolNum-1]
- if atomic.AddUint32(sizeHalfPtr, 1) == 20 {
- atomic.StoreUint32(sizePtr, uint32(cap(b)/2))
- atomic.StoreUint32(sizeHalfPtr, 0)
- } else {
- select {
- case pool <- b:
- default:
- }
- }
- return make([]byte, n)
- } else {
- atomic.AddUint32(&p.less, 1)
- return b[:n]
- }
- case cap(b) == n:
- atomic.AddUint32(&p.equal, 1)
- return b[:n]
- default:
- atomic.AddUint32(&p.greater, 1)
- if uint32(cap(b)) >= atomic.LoadUint32(sizePtr) {
- select {
- case pool <- b:
- default:
- }
- }
- }
- default:
- atomic.AddUint32(&p.miss, 1)
- }
-
- if size := atomic.LoadUint32(sizePtr); uint32(n) > size {
- if size == 0 {
- atomic.CompareAndSwapUint32(sizePtr, 0, uint32(n))
- } else {
- sizeMissPtr := &p.sizeMiss[poolNum-1]
- if atomic.AddUint32(sizeMissPtr, 1) == 20 {
- atomic.StoreUint32(sizePtr, uint32(n))
- atomic.StoreUint32(sizeMissPtr, 0)
- }
- }
- return make([]byte, n)
- } else {
- return make([]byte, n, size)
- }
- }
-}
-
-// Put adds given buffer to the pool.
-func (p *BufferPool) Put(b []byte) {
- if p == nil {
- return
- }
-
- p.mu.RLock()
- defer p.mu.RUnlock()
-
- if p.closed {
- return
- }
-
- atomic.AddUint32(&p.put, 1)
-
- pool := p.pool[p.poolNum(cap(b))]
- select {
- case pool <- b:
- default:
- }
-
-}
-
-func (p *BufferPool) Close() {
- if p == nil {
- return
- }
-
- p.mu.Lock()
- if !p.closed {
- p.closed = true
- p.closeC <- struct{}{}
- }
- p.mu.Unlock()
-}
-
-func (p *BufferPool) String() string {
- if p == nil {
- return ""
- }
-
- return fmt.Sprintf("BufferPool{B·%d Z·%v Zm·%v Zh·%v G·%d P·%d H·%d <·%d =·%d >·%d M·%d}",
- p.baseline0, p.size, p.sizeMiss, p.sizeHalf, p.get, p.put, p.half, p.less, p.equal, p.greater, p.miss)
-}
-
-func (p *BufferPool) drain() {
- ticker := time.NewTicker(2 * time.Second)
- defer ticker.Stop()
- for {
- select {
- case <-ticker.C:
- for _, ch := range p.pool {
- select {
- case <-ch:
- default:
- }
- }
- case <-p.closeC:
- close(p.closeC)
- for _, ch := range p.pool {
- close(ch)
- }
- return
- }
- }
-}
-
-// NewBufferPool creates a new initialized 'buffer pool'.
-func NewBufferPool(baseline int) *BufferPool {
- if baseline <= 0 {
- panic("baseline can't be <= 0")
- }
- p := &BufferPool{
- baseline0: baseline,
- baseline: [...]int{baseline / 4, baseline / 2, baseline * 2, baseline * 4},
- closeC: make(chan struct{}, 1),
- }
- for i, cap := range []int{2, 2, 4, 4, 2, 1} {
- p.pool[i] = make(chan []byte, cap)
- }
- go p.drain()
- return p
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util/crc32.go b/vendor/github.com/syndtr/goleveldb/leveldb/util/crc32.go
deleted file mode 100644
index 631c9d61..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util/crc32.go
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright 2011 The LevelDB-Go Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package util
-
-import (
- "hash/crc32"
-)
-
-var table = crc32.MakeTable(crc32.Castagnoli)
-
-// CRC is a CRC-32 checksum computed using Castagnoli's polynomial.
-type CRC uint32
-
-// NewCRC creates a new crc based on the given bytes.
-func NewCRC(b []byte) CRC {
- return CRC(0).Update(b)
-}
-
-// Update updates the crc with the given bytes.
-func (c CRC) Update(b []byte) CRC {
- return CRC(crc32.Update(uint32(c), table, b))
-}
-
-// Value returns a masked crc.
-func (c CRC) Value() uint32 {
- return uint32(c>>15|c<<17) + 0xa282ead8
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util/hash.go b/vendor/github.com/syndtr/goleveldb/leveldb/util/hash.go
deleted file mode 100644
index 7f3fa4e2..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util/hash.go
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package util
-
-import (
- "encoding/binary"
-)
-
-// Hash return hash of the given data.
-func Hash(data []byte, seed uint32) uint32 {
- // Similar to murmur hash
- const (
- m = uint32(0xc6a4a793)
- r = uint32(24)
- )
- var (
- h = seed ^ (uint32(len(data)) * m)
- i int
- )
-
- for n := len(data) - len(data)%4; i < n; i += 4 {
- h += binary.LittleEndian.Uint32(data[i:])
- h *= m
- h ^= (h >> 16)
- }
-
- switch len(data) - i {
- default:
- panic("not reached")
- case 3:
- h += uint32(data[i+2]) << 16
- fallthrough
- case 2:
- h += uint32(data[i+1]) << 8
- fallthrough
- case 1:
- h += uint32(data[i])
- h *= m
- h ^= (h >> r)
- case 0:
- }
-
- return h
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util/range.go b/vendor/github.com/syndtr/goleveldb/leveldb/util/range.go
deleted file mode 100644
index 85159583..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util/range.go
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright (c) 2014, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package util
-
-// Range is a key range.
-type Range struct {
- // Start of the key range, include in the range.
- Start []byte
-
- // Limit of the key range, not include in the range.
- Limit []byte
-}
-
-// BytesPrefix returns key range that satisfy the given prefix.
-// This only applicable for the standard 'bytes comparer'.
-func BytesPrefix(prefix []byte) *Range {
- var limit []byte
- for i := len(prefix) - 1; i >= 0; i-- {
- c := prefix[i]
- if c < 0xff {
- limit = make([]byte, i+1)
- copy(limit, prefix)
- limit[i] = c + 1
- break
- }
- }
- return &Range{prefix, limit}
-}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/util/util.go b/vendor/github.com/syndtr/goleveldb/leveldb/util/util.go
deleted file mode 100644
index 80614afc..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/util/util.go
+++ /dev/null
@@ -1,73 +0,0 @@
-// Copyright (c) 2013, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Package util provides utilities used throughout leveldb.
-package util
-
-import (
- "errors"
-)
-
-var (
- ErrReleased = errors.New("leveldb: resource already relesed")
- ErrHasReleaser = errors.New("leveldb: releaser already defined")
-)
-
-// Releaser is the interface that wraps the basic Release method.
-type Releaser interface {
- // Release releases associated resources. Release should always success
- // and can be called multiple times without causing error.
- Release()
-}
-
-// ReleaseSetter is the interface that wraps the basic SetReleaser method.
-type ReleaseSetter interface {
- // SetReleaser associates the given releaser to the resources. The
- // releaser will be called once coresponding resources released.
- // Calling SetReleaser with nil will clear the releaser.
- //
- // This will panic if a releaser already present or coresponding
- // resource is already released. Releaser should be cleared first
- // before assigned a new one.
- SetReleaser(releaser Releaser)
-}
-
-// BasicReleaser provides basic implementation of Releaser and ReleaseSetter.
-type BasicReleaser struct {
- releaser Releaser
- released bool
-}
-
-// Released returns whether Release method already called.
-func (r *BasicReleaser) Released() bool {
- return r.released
-}
-
-// Release implements Releaser.Release.
-func (r *BasicReleaser) Release() {
- if !r.released {
- if r.releaser != nil {
- r.releaser.Release()
- r.releaser = nil
- }
- r.released = true
- }
-}
-
-// SetReleaser implements ReleaseSetter.SetReleaser.
-func (r *BasicReleaser) SetReleaser(releaser Releaser) {
- if r.released {
- panic(ErrReleased)
- }
- if r.releaser != nil && releaser != nil {
- panic(ErrHasReleaser)
- }
- r.releaser = releaser
-}
-
-type NoopReleaser struct{}
-
-func (NoopReleaser) Release() {}
diff --git a/vendor/github.com/syndtr/goleveldb/leveldb/version.go b/vendor/github.com/syndtr/goleveldb/leveldb/version.go
deleted file mode 100644
index 73f272af..00000000
--- a/vendor/github.com/syndtr/goleveldb/leveldb/version.go
+++ /dev/null
@@ -1,528 +0,0 @@
-// Copyright (c) 2012, Suryandaru Triandana
-// All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package leveldb
-
-import (
- "fmt"
- "sync/atomic"
- "unsafe"
-
- "github.com/syndtr/goleveldb/leveldb/iterator"
- "github.com/syndtr/goleveldb/leveldb/opt"
- "github.com/syndtr/goleveldb/leveldb/util"
-)
-
-type tSet struct {
- level int
- table *tFile
-}
-
-type version struct {
- s *session
-
- levels []tFiles
-
- // Level that should be compacted next and its compaction score.
- // Score < 1 means compaction is not strictly needed. These fields
- // are initialized by computeCompaction()
- cLevel int
- cScore float64
-
- cSeek unsafe.Pointer
-
- closing bool
- ref int
- released bool
-}
-
-func newVersion(s *session) *version {
- return &version{s: s}
-}
-
-func (v *version) incref() {
- if v.released {
- panic("already released")
- }
-
- v.ref++
- if v.ref == 1 {
- // Incr file ref.
- for _, tt := range v.levels {
- for _, t := range tt {
- v.s.addFileRef(t.fd, 1)
- }
- }
- }
-}
-
-func (v *version) releaseNB() {
- v.ref--
- if v.ref > 0 {
- return
- } else if v.ref < 0 {
- panic("negative version ref")
- }
-
- for _, tt := range v.levels {
- for _, t := range tt {
- if v.s.addFileRef(t.fd, -1) == 0 {
- v.s.tops.remove(t)
- }
- }
- }
-
- v.released = true
-}
-
-func (v *version) release() {
- v.s.vmu.Lock()
- v.releaseNB()
- v.s.vmu.Unlock()
-}
-
-func (v *version) walkOverlapping(aux tFiles, ikey internalKey, f func(level int, t *tFile) bool, lf func(level int) bool) {
- ukey := ikey.ukey()
-
- // Aux level.
- if aux != nil {
- for _, t := range aux {
- if t.overlaps(v.s.icmp, ukey, ukey) {
- if !f(-1, t) {
- return
- }
- }
- }
-
- if lf != nil && !lf(-1) {
- return
- }
- }
-
- // Walk tables level-by-level.
- for level, tables := range v.levels {
- if len(tables) == 0 {
- continue
- }
-
- if level == 0 {
- // Level-0 files may overlap each other. Find all files that
- // overlap ukey.
- for _, t := range tables {
- if t.overlaps(v.s.icmp, ukey, ukey) {
- if !f(level, t) {
- return
- }
- }
- }
- } else {
- if i := tables.searchMax(v.s.icmp, ikey); i < len(tables) {
- t := tables[i]
- if v.s.icmp.uCompare(ukey, t.imin.ukey()) >= 0 {
- if !f(level, t) {
- return
- }
- }
- }
- }
-
- if lf != nil && !lf(level) {
- return
- }
- }
-}
-
-func (v *version) get(aux tFiles, ikey internalKey, ro *opt.ReadOptions, noValue bool) (value []byte, tcomp bool, err error) {
- if v.closing {
- return nil, false, ErrClosed
- }
-
- ukey := ikey.ukey()
-
- var (
- tset *tSet
- tseek bool
-
- // Level-0.
- zfound bool
- zseq uint64
- zkt keyType
- zval []byte
- )
-
- err = ErrNotFound
-
- // Since entries never hop across level, finding key/value
- // in smaller level make later levels irrelevant.
- v.walkOverlapping(aux, ikey, func(level int, t *tFile) bool {
- if level >= 0 && !tseek {
- if tset == nil {
- tset = &tSet{level, t}
- } else {
- tseek = true
- }
- }
-
- var (
- fikey, fval []byte
- ferr error
- )
- if noValue {
- fikey, ferr = v.s.tops.findKey(t, ikey, ro)
- } else {
- fikey, fval, ferr = v.s.tops.find(t, ikey, ro)
- }
-
- switch ferr {
- case nil:
- case ErrNotFound:
- return true
- default:
- err = ferr
- return false
- }
-
- if fukey, fseq, fkt, fkerr := parseInternalKey(fikey); fkerr == nil {
- if v.s.icmp.uCompare(ukey, fukey) == 0 {
- // Level <= 0 may overlaps each-other.
- if level <= 0 {
- if fseq >= zseq {
- zfound = true
- zseq = fseq
- zkt = fkt
- zval = fval
- }
- } else {
- switch fkt {
- case keyTypeVal:
- value = fval
- err = nil
- case keyTypeDel:
- default:
- panic("leveldb: invalid internalKey type")
- }
- return false
- }
- }
- } else {
- err = fkerr
- return false
- }
-
- return true
- }, func(level int) bool {
- if zfound {
- switch zkt {
- case keyTypeVal:
- value = zval
- err = nil
- case keyTypeDel:
- default:
- panic("leveldb: invalid internalKey type")
- }
- return false
- }
-
- return true
- })
-
- if tseek && tset.table.consumeSeek() <= 0 {
- tcomp = atomic.CompareAndSwapPointer(&v.cSeek, nil, unsafe.Pointer(tset))
- }
-
- return
-}
-
-func (v *version) sampleSeek(ikey internalKey) (tcomp bool) {
- var tset *tSet
-
- v.walkOverlapping(nil, ikey, func(level int, t *tFile) bool {
- if tset == nil {
- tset = &tSet{level, t}
- return true
- }
- if tset.table.consumeSeek() <= 0 {
- tcomp = atomic.CompareAndSwapPointer(&v.cSeek, nil, unsafe.Pointer(tset))
- }
- return false
- }, nil)
-
- return
-}
-
-func (v *version) getIterators(slice *util.Range, ro *opt.ReadOptions) (its []iterator.Iterator) {
- strict := opt.GetStrict(v.s.o.Options, ro, opt.StrictReader)
- for level, tables := range v.levels {
- if level == 0 {
- // Merge all level zero files together since they may overlap.
- for _, t := range tables {
- its = append(its, v.s.tops.newIterator(t, slice, ro))
- }
- } else if len(tables) != 0 {
- its = append(its, iterator.NewIndexedIterator(tables.newIndexIterator(v.s.tops, v.s.icmp, slice, ro), strict))
- }
- }
- return
-}
-
-func (v *version) newStaging() *versionStaging {
- return &versionStaging{base: v}
-}
-
-// Spawn a new version based on this version.
-func (v *version) spawn(r *sessionRecord) *version {
- staging := v.newStaging()
- staging.commit(r)
- return staging.finish()
-}
-
-func (v *version) fillRecord(r *sessionRecord) {
- for level, tables := range v.levels {
- for _, t := range tables {
- r.addTableFile(level, t)
- }
- }
-}
-
-func (v *version) tLen(level int) int {
- if level < len(v.levels) {
- return len(v.levels[level])
- }
- return 0
-}
-
-func (v *version) offsetOf(ikey internalKey) (n int64, err error) {
- for level, tables := range v.levels {
- for _, t := range tables {
- if v.s.icmp.Compare(t.imax, ikey) <= 0 {
- // Entire file is before "ikey", so just add the file size
- n += t.size
- } else if v.s.icmp.Compare(t.imin, ikey) > 0 {
- // Entire file is after "ikey", so ignore
- if level > 0 {
- // Files other than level 0 are sorted by meta->min, so
- // no further files in this level will contain data for
- // "ikey".
- break
- }
- } else {
- // "ikey" falls in the range for this table. Add the
- // approximate offset of "ikey" within the table.
- if m, err := v.s.tops.offsetOf(t, ikey); err == nil {
- n += m
- } else {
- return 0, err
- }
- }
- }
- }
-
- return
-}
-
-func (v *version) pickMemdbLevel(umin, umax []byte, maxLevel int) (level int) {
- if maxLevel > 0 {
- if len(v.levels) == 0 {
- return maxLevel
- }
- if !v.levels[0].overlaps(v.s.icmp, umin, umax, true) {
- var overlaps tFiles
- for ; level < maxLevel; level++ {
- if pLevel := level + 1; pLevel >= len(v.levels) {
- return maxLevel
- } else if v.levels[pLevel].overlaps(v.s.icmp, umin, umax, false) {
- break
- }
- if gpLevel := level + 2; gpLevel < len(v.levels) {
- overlaps = v.levels[gpLevel].getOverlaps(overlaps, v.s.icmp, umin, umax, false)
- if overlaps.size() > int64(v.s.o.GetCompactionGPOverlaps(level)) {
- break
- }
- }
- }
- }
- }
- return
-}
-
-func (v *version) computeCompaction() {
- // Precomputed best level for next compaction
- bestLevel := int(-1)
- bestScore := float64(-1)
-
- statFiles := make([]int, len(v.levels))
- statSizes := make([]string, len(v.levels))
- statScore := make([]string, len(v.levels))
- statTotSize := int64(0)
-
- for level, tables := range v.levels {
- var score float64
- size := tables.size()
- if level == 0 {
- // We treat level-0 specially by bounding the number of files
- // instead of number of bytes for two reasons:
- //
- // (1) With larger write-buffer sizes, it is nice not to do too
- // many level-0 compaction.
- //
- // (2) The files in level-0 are merged on every read and
- // therefore we wish to avoid too many files when the individual
- // file size is small (perhaps because of a small write-buffer
- // setting, or very high compression ratios, or lots of
- // overwrites/deletions).
- score = float64(len(tables)) / float64(v.s.o.GetCompactionL0Trigger())
- } else {
- score = float64(size) / float64(v.s.o.GetCompactionTotalSize(level))
- }
-
- if score > bestScore {
- bestLevel = level
- bestScore = score
- }
-
- statFiles[level] = len(tables)
- statSizes[level] = shortenb(int(size))
- statScore[level] = fmt.Sprintf("%.2f", score)
- statTotSize += size
- }
-
- v.cLevel = bestLevel
- v.cScore = bestScore
-
- v.s.logf("version@stat F·%v S·%s%v Sc·%v", statFiles, shortenb(int(statTotSize)), statSizes, statScore)
-}
-
-func (v *version) needCompaction() bool {
- return v.cScore >= 1 || atomic.LoadPointer(&v.cSeek) != nil
-}
-
-type tablesScratch struct {
- added map[int64]atRecord
- deleted map[int64]struct{}
-}
-
-type versionStaging struct {
- base *version
- levels []tablesScratch
-}
-
-func (p *versionStaging) getScratch(level int) *tablesScratch {
- if level >= len(p.levels) {
- newLevels := make([]tablesScratch, level+1)
- copy(newLevels, p.levels)
- p.levels = newLevels
- }
- return &(p.levels[level])
-}
-
-func (p *versionStaging) commit(r *sessionRecord) {
- // Deleted tables.
- for _, r := range r.deletedTables {
- scratch := p.getScratch(r.level)
- if r.level < len(p.base.levels) && len(p.base.levels[r.level]) > 0 {
- if scratch.deleted == nil {
- scratch.deleted = make(map[int64]struct{})
- }
- scratch.deleted[r.num] = struct{}{}
- }
- if scratch.added != nil {
- delete(scratch.added, r.num)
- }
- }
-
- // New tables.
- for _, r := range r.addedTables {
- scratch := p.getScratch(r.level)
- if scratch.added == nil {
- scratch.added = make(map[int64]atRecord)
- }
- scratch.added[r.num] = r
- if scratch.deleted != nil {
- delete(scratch.deleted, r.num)
- }
- }
-}
-
-func (p *versionStaging) finish() *version {
- // Build new version.
- nv := newVersion(p.base.s)
- numLevel := len(p.levels)
- if len(p.base.levels) > numLevel {
- numLevel = len(p.base.levels)
- }
- nv.levels = make([]tFiles, numLevel)
- for level := 0; level < numLevel; level++ {
- var baseTabels tFiles
- if level < len(p.base.levels) {
- baseTabels = p.base.levels[level]
- }
-
- if level < len(p.levels) {
- scratch := p.levels[level]
-
- var nt tFiles
- // Prealloc list if possible.
- if n := len(baseTabels) + len(scratch.added) - len(scratch.deleted); n > 0 {
- nt = make(tFiles, 0, n)
- }
-
- // Base tables.
- for _, t := range baseTabels {
- if _, ok := scratch.deleted[t.fd.Num]; ok {
- continue
- }
- if _, ok := scratch.added[t.fd.Num]; ok {
- continue
- }
- nt = append(nt, t)
- }
-
- // New tables.
- for _, r := range scratch.added {
- nt = append(nt, tableFileFromRecord(r))
- }
-
- if len(nt) != 0 {
- // Sort tables.
- if level == 0 {
- nt.sortByNum()
- } else {
- nt.sortByKey(p.base.s.icmp)
- }
-
- nv.levels[level] = nt
- }
- } else {
- nv.levels[level] = baseTabels
- }
- }
-
- // Trim levels.
- n := len(nv.levels)
- for ; n > 0 && nv.levels[n-1] == nil; n-- {
- }
- nv.levels = nv.levels[:n]
-
- // Compute compaction score for new version.
- nv.computeCompaction()
-
- return nv
-}
-
-type versionReleaser struct {
- v *version
- once bool
-}
-
-func (vr *versionReleaser) Release() {
- v := vr.v
- v.s.vmu.Lock()
- if !vr.once {
- v.releaseNB()
- vr.once = true
- }
- v.s.vmu.Unlock()
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/.gitignore b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/.gitignore
deleted file mode 100644
index bd0df5a1..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/.gitignore
+++ /dev/null
@@ -1,6 +0,0 @@
-.idea
-cover.out
-store
-sync_confirm/claim_service.db
-
-data_packer/stress.prof
\ No newline at end of file
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/.golangci.yml b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/.golangci.yml
deleted file mode 100644
index 623b6d50..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/.golangci.yml
+++ /dev/null
@@ -1,407 +0,0 @@
-# Based on https://gist.github.com/maratori/47a4d00457a92aa426dbd48a18776322,
-# but has been modified significantly.
-
-# This code is licensed under the terms of the MIT license https://opensource.org/license/mit
-# Copyright (c) 2021 Marat Reymers
-
-## Golden config for golangci-lint v1.64.5
-#
-# This is the best config for golangci-lint based on my experience and opinion.
-# It is very strict, but not extremely strict.
-# Feel free to adapt and change it for your needs.
----
-run:
- # Include test files or not.
- # Default: true
- tests: false
-
- # Timeout for analysis, e.g. 30s, 5m.
- # Default: 1m
- timeout: 3m
-
- # The mode used to evaluate relative paths.
- # It's used by exclusions, Go plugins, and some linters.
- # The value can be:
- # - `gomod`: the paths will be relative to the directory of the `go.mod` file.
- # - `gitroot`: the paths will be relative to the git root (the parent directory of `.git`).
- # - `cfg`: the paths will be relative to the configuration file.
- # - `wd` (NOT recommended): the paths will be relative to the place where golangci-lint is run.
- # Default: wd
- relative-path-mode: gomod
-
-# This file contains only configs which differ from defaults.
-# All possible options can be found here https://github.com/golangci/golangci-lint/blob/master/.golangci.reference.yml
-linters-settings:
- cyclop:
- # The maximal code complexity to report.
- # Default: 10
- max-complexity: 30
- # The maximal average package complexity.
- # If it's higher than 0.0 (float) the check is enabled
- # Default: 0.0
- package-average: 10.0
-
- depguard:
- # Rules to apply.
- #
- # Variables:
- # - File Variables
- # Use an exclamation mark `!` to negate a variable.
- # Example: `!$test` matches any file that is not a go test file.
- #
- # `$all` - matches all go files
- # `$test` - matches all go test files
- #
- # - Package Variables
- #
- # `$gostd` - matches all of go's standard library (Pulled from `GOROOT`)
- #
- # Default (applies if no custom rules are defined): Only allow $gostd in all files.
- rules:
- 'deprecated':
- # List of file globs that will match this list of settings to compare against.
- # Default: $all
- files:
- - '$all'
- # List of packages that are not allowed.
- # Entries can be a variable (starting with $), a string prefix, or an exact match (if ending with $).
- # Default: []
- deny:
- - pkg: 'github.com/golang/protobuf'
- desc: 'Use google.golang.org/protobuf instead, see https://developers.google.com/protocol-buffers/docs/reference/go/faq#modules'
- - pkg: 'github.com/satori/go.uuid'
- desc: "Use github.com/google/uuid instead, satori's package is not maintained"
- - pkg: 'github.com/gofrs/uuid$'
- desc: 'Use github.com/gofrs/uuid/v5 or later, it was not a go module before v5'
- 'non-test files':
- files:
- - '!$test'
- deny:
- - pkg: 'math/rand$'
- desc: 'Use math/rand/v2 instead, see https://go.dev/blog/randv2'
- 'non-main files':
- files:
- - '!**/main.go'
- deny:
- - pkg: 'log$'
- desc: 'Use log/slog instead, see https://go.dev/blog/slog'
-
- errcheck:
- # Report about not checking of errors in type assertions: `a := b.(MyStruct)`.
- # Such cases aren't reported by default.
- # Default: false
- check-type-assertions: true
-
- exhaustive:
- # Program elements to check for exhaustiveness.
- # Default: [ switch ]
- check:
- - switch
- - map
-
- exhaustruct:
- # List of regular expressions to exclude struct packages and their names from checks.
- # Regular expressions must match complete canonical struct package/name/structname.
- # Default: []
- exclude:
- # std libs
- - '^net/http.Client$'
- - '^net/http.Cookie$'
- - '^net/http.Request$'
- - '^net/http.Response$'
- - '^net/http.Server$'
- - '^net/http.Transport$'
- - '^net/url.URL$'
- - '^os/exec.Cmd$'
- - '^reflect.StructField$'
- # public libs
- - '^github.com/Shopify/sarama.Config$'
- - '^github.com/Shopify/sarama.ProducerMessage$'
- - '^github.com/mitchellh/mapstructure.DecoderConfig$'
- - '^github.com/prometheus/client_golang/.+Opts$'
- - '^github.com/spf13/cobra.Command$'
- - '^github.com/spf13/cobra.CompletionOptions$'
- - '^github.com/stretchr/testify/mock.Mock$'
- - '^github.com/testcontainers/testcontainers-go.+Request$'
- - '^github.com/testcontainers/testcontainers-go.FromDockerfile$'
- - '^golang.org/x/tools/go/analysis.Analyzer$'
- - '^google.golang.org/protobuf/.+Options$'
- - '^gopkg.in/yaml.v3.Node$'
-
- funlen:
- # Checks the number of lines in a function.
- # If lower than 0, disable the check.
- # Default: 60
- lines: 100
- # Checks the number of statements in a function.
- # If lower than 0, disable the check.
- # Default: 40
- statements: 50
- # Ignore comments when counting lines.
- # Default false
- ignore-comments: true
-
- gochecksumtype:
- # Presence of `default` case in switch statements satisfies exhaustiveness, if all members are not listed.
- # Default: true
- default-signifies-exhaustive: false
-
- gocognit:
- # Minimal code complexity to report.
- # Default: 30 (but we recommend 10-20)
- min-complexity: 20
-
- gocritic:
- # Settings passed to gocritic.
- # The settings key is the name of a supported gocritic checker.
- # The list of supported checkers can be find in https://go-critic.github.io/overview.
- settings:
- captLocal:
- # Whether to restrict checker to params only.
- # Default: true
- paramsOnly: false
- underef:
- # Whether to skip (*x).method() calls where x is a pointer receiver.
- # Default: true
- skipRecvDeref: false
-
- govet:
- # Enable all analyzers.
- # Default: false
- enable-all: true
- # Disable analyzers by name.
- # Run `go tool vet help` to see all analyzers.
- # Default: []
- disable:
- - fieldalignment # too strict
- # Settings per analyzer.
- settings:
- shadow:
- # Whether to be strict about shadowing; can be noisy.
- # Default: false
- strict: true
-
- inamedparam:
- # Skips check for interface methods with only a single parameter.
- # Default: false
- skip-single-param: true
-
- mnd:
- # List of function patterns to exclude from analysis.
- # Values always ignored: `time.Date`,
- # `strconv.FormatInt`, `strconv.FormatUint`, `strconv.FormatFloat`,
- # `strconv.ParseInt`, `strconv.ParseUint`, `strconv.ParseFloat`.
- # Default: []
- ignored-functions:
- - args.Error
- - flag.Arg
- - flag.Duration.*
- - flag.Float.*
- - flag.Int.*
- - flag.Uint.*
- - os.Chmod
- - os.Mkdir.*
- - os.OpenFile
- - os.WriteFile
- - prometheus.ExponentialBuckets.*
- - prometheus.LinearBuckets
-
- nakedret:
- # Make an issue if func has more lines of code than this setting, and it has naked returns.
- # Default: 30
- max-func-lines: 0
-
- nolintlint:
- # Exclude following linters from requiring an explanation.
- # Default: []
- allow-no-explanation: [funlen, gocognit, lll]
- # Enable to require an explanation of nonzero length after each nolint directive.
- # Default: false
- require-explanation: true
- # Enable to require nolint directives to mention the specific linter being suppressed.
- # Default: false
- require-specific: true
-
- perfsprint:
- # Optimizes into strings concatenation.
- # Default: true
- strconcat: false
-
- reassign:
- # Patterns for global variable names that are checked for reassignment.
- # See https://github.com/curioswitch/go-reassign#usage
- # Default: ["EOF", "Err.*"]
- patterns:
- - '.*'
-
- rowserrcheck:
- # database/sql is always checked
- # Default: []
- packages:
- - github.com/jmoiron/sqlx
-
- sloglint:
- # Enforce not using global loggers.
- # Values:
- # - "": disabled
- # - "all": report all global loggers
- # - "default": report only the default slog logger
- # https://github.com/go-simpler/sloglint?tab=readme-ov-file#no-global
- # Default: ""
- no-global: 'all'
- # Enforce using methods that accept a context.
- # Values:
- # - "": disabled
- # - "all": report all contextless calls
- # - "scope": report only if a context exists in the scope of the outermost function
- # https://github.com/go-simpler/sloglint?tab=readme-ov-file#context-only
- # Default: ""
- context: 'scope'
-
- usetesting:
- # Enable/disable `os.TempDir()` detections.
- # Default: false
- os-temp-dir: true
-
-linters:
- disable-all: true
- enable:
- ## enabled by default
- - errcheck # checking for unchecked errors, these unchecked errors can be critical bugs in some cases
- - gosimple # specializes in simplifying a code
- - govet # reports suspicious constructs, such as Printf calls whose arguments do not align with the format string
- - ineffassign # detects when assignments to existing variables are not used
- - staticcheck # is a go vet on steroids, applying a ton of static analysis checks
- - typecheck # like the front-end of a Go compiler, parses and type-checks Go code
- - unused # checks for unused constants, variables, functions and types
- ## disabled by default
- - asasalint # checks for pass []any as any in variadic func(...any)
- - asciicheck # checks that your code does not contain non-ASCII identifiers
- - bidichk # checks for dangerous unicode character sequences
- - bodyclose # checks whether HTTP response body is closed successfully
- - canonicalheader # checks whether net/http.Header uses canonical header
- - copyloopvar # detects places where loop variables are copied
- - cyclop # checks function and package cyclomatic complexity
- - depguard # checks if package imports are in a list of acceptable packages
- - dupl # tool for code clone detection
- - durationcheck # checks for two durations multiplied together
- - errname # checks that sentinel errors are prefixed with the Err and error types are suffixed with the Error
- - errorlint # finds code that will cause problems with the error wrapping scheme introduced in Go 1.13
- - exhaustive # checks exhaustiveness of enum switch statements
- - exptostd # detects functions from golang.org/x/exp/ that can be replaced by std functions
- - fatcontext # detects nested contexts in loops
- - forbidigo # forbids identifiers
- - funlen # tool for detection of long functions
- - gocheckcompilerdirectives # validates go compiler directive comments (//go:)
- - gochecknoglobals # checks that no global variables exist
- - gochecknoinits # checks that no init functions are present in Go code
- - gochecksumtype # checks exhaustiveness on Go "sum types"
- - gocognit # computes and checks the cognitive complexity of functions
- - goconst # finds repeated strings that could be replaced by a constant
- - gocritic # provides diagnostics that check for bugs, performance and style issues
- - gocyclo # computes and checks the cyclomatic complexity of functions
- - godot # checks if comments end in a period
- - goimports # in addition to fixing imports, goimports also formats your code in the same style as gofmt
- - gomoddirectives # manages the use of 'replace', 'retract', and 'excludes' directives in go.mod
- - goprintffuncname # checks that printf-like functions are named with f at the end
- - gosec # inspects source code for security problems
- - gosmopolitan # report certain i18n/l10n anti-patterns in your Go codebase [fast: false, auto-fix: false]
- - iface # checks the incorrect use of interfaces, helping developers avoid interface pollution
- - inamedparam # reports interfaces with unnamed method parameters [fast: true, auto-fix: false]
- - intrange # finds places where for loops could make use of an integer range
- - lll # reports long lines
- - loggercheck # checks key value pairs for common logger libraries (kitlog,klog,logr,zap)
- - makezero # finds slice declarations with non-zero initial length
- - mirror # reports wrong mirror patterns of bytes/strings usage
- - mnd # detects magic numbers
- - musttag # enforces field tags in (un)marshaled structs
- - nakedret # finds naked returns in functions greater than a specified function length
- - nestif # reports deeply nested if statements
- - nilerr # finds the code that returns nil even if it checks that the error is not nil
- - nilnesserr # reports that it checks for err != nil, but it returns a different nil value error (powered by nilness and nilerr)
- - nilnil # checks that there is no simultaneous return of nil error and an invalid value
- - noctx # finds sending http request without context.Context
- - nolintlint # reports ill-formed or insufficient nolint directives
- - nonamedreturns # reports all named returns
- - nosprintfhostport # checks for misuse of Sprintf to construct a host with port in a URL
- - perfsprint # checks that fmt.Sprintf can be replaced with a faster alternative
- - predeclared # finds code that shadows one of Go's predeclared identifiers
- - promlinter # checks Prometheus metrics naming via promlint
- - protogetter # reports direct reads from proto message fields when getters should be used
- - reassign # checks that package variables are not reassigned
- - recvcheck # checks for receiver type consistency
- - revive # fast, configurable, extensible, flexible, and beautiful linter for Go, drop-in replacement of golint
- - rowserrcheck # checks whether Err of rows is checked successfully
- - sloglint # ensure consistent code style when using log/slog
- - spancheck # checks for mistakes with OpenTelemetry/Census spans
- - sqlclosecheck # checks that sql.Rows and sql.Stmt are closed
- - stylecheck # is a replacement for golint
- - tagalign # check that struct tags are well aligned [fast: true, auto-fix: true]
- - testableexamples # checks if examples are testable (have an expected output)
- - testpackage # makes you use a separate _test package
- - tparallel # detects inappropriate usage of t.Parallel() method in your Go test codes
- - unconvert # removes unnecessary type conversions
- - unparam # reports unused function parameters
- - usestdlibvars # detects the possibility to use variables/constants from the Go standard library
- - usetesting # reports uses of functions with replacement inside the testing package
- - wastedassign # finds wasted assignment statements
- - whitespace # detects leading and trailing whitespace
-
- ## you may want to enable
- # - decorder # checks declaration order and count of types, constants, variables and functions
- # - exhaustruct # [highly recommend to enable] checks if all structure fields are initialized
- # - gci # controls golang package import order and makes it always deterministic
- # - ginkgolinter # [if you use ginkgo/gomega] enforces standards of using ginkgo and gomega
- # - godox # detects FIXME, TODO and other comment keywords
- # - goheader # checks is file header matches to pattern
- # - interfacebloat # checks the number of methods inside an interface
- # - ireturn # accept interfaces, return concrete types
- # - prealloc # [premature optimization, but can be used in some cases] finds slice declarations that could potentially be preallocated
- # - testifylint # checks usage of github.com/stretchr/testify. [fast: false, auto-fix: false]
- # - varnamelen # [great idea, but too many false positives] checks that the length of a variable's name matches its scope
- # - wrapcheck # checks that errors returned from external packages are wrapped
- # - zerologlint # detects the wrong usage of zerolog that a user forgets to dispatch zerolog.Event
-
- ## disabled
- # - containedctx # detects struct contained context.Context field
- # - contextcheck # [too many false positives] checks the function whether use a non-inherited context
- # - dogsled # checks assignments with too many blank identifiers (e.g. x, _, _, _, := f())
- # - dupword # [useless without config] checks for duplicate words in the source code
- # - err113 # [too strict] checks the errors handling expressions
- # - errchkjson # [don't see profit + I'm against of omitting errors like in the first example https://github.com/breml/errchkjson] checks types passed to the json encoding functions. Reports unsupported types and optionally reports occasions, where the check for the returned error can be omitted
- # - forcetypeassert # [replaced by errcheck] finds forced type assertions
- # - gofmt # [replaced by goimports] checks whether code was gofmt-ed
- # - gofumpt # [replaced by goimports, gofumports is not available yet] checks whether code was gofumpt-ed
- # - gomodguard # [use more powerful depguard] allow and block lists linter for direct Go module dependencies
- # - grouper # analyzes expression groups
- # - importas # enforces consistent import aliases
- # - maintidx # measures the maintainability index of each function
- # - misspell # [useless] finds commonly misspelled English words in comments
- # - nlreturn # [too strict and mostly code is not more readable] checks for a new line before return and branch statements to increase code clarity
- # - paralleltest # [too many false positives] detects missing usage of t.Parallel() method in your Go test
- # - tagliatelle # checks the struct tags
- # - tenv # [deprecated, replaced by usetesting] detects using os.Setenv instead of t.Setenv since Go1.17
- # - thelper # detects golang test helpers without t.Helper() call and checks the consistency of test helpers
- # - wsl # [too strict and mostly code is not more readable] whitespace linter forces you to use empty lines
-
-issues:
- # Maximum count of issues with the same text.
- # Set to 0 to disable.
- # Default: 3
- max-same-issues: 50
-
- exclude-rules:
- - source: '(noinspection|TODO)'
- linters: [godot]
- - source: '//noinspection'
- linters: [gocritic]
- - path: '_test\\.go'
- linters:
- - bodyclose
- - dupl
- - errcheck
- - funlen
- - goconst
- - gosec
- - noctx
- - wrapcheck
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/Makefile b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/Makefile
deleted file mode 100644
index 02198b49..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/Makefile
+++ /dev/null
@@ -1,44 +0,0 @@
-## test
-test:
- clear
- go fmt ./...
- #go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./... ./data_packer/... ./liveness/... ./sync_confirm/... ./sync_global/... ./sync_types/...
- go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./...
- #go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./data_packer/...
- #go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./liveness/...
- #go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./sync_confirm/...
- #go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./sync_global/...
- #go test -vet=all -race -count 1 -test.shuffle on -coverprofile cover.out -covermode atomic ./sync_types/...
- go tool cover -func=cover.out
-
-## mod
-mod:
- clear
- go mod tidy -compat=1.22
- go mod vendor
- go fmt ./...
-
-## commit
-commit:
- git commit -m "Update version"
- git push origin master
- git tag "v0.0.31"
- git push origin master --tags
-
-## lint
-lint:
- clear
- go fmt ./...
- # wget http://support.aescorp.ru/.golangci.yml
- golangci-lint run
- #golangci-lint run ./data_packer/... ./sync_confirm/... ./sync_global/... ./sync_types/...
- #gocyclo -over 15 ./data_packer/
- #gocyclo -over 15 ./sync_confirm/
- #gocyclo -over 15 ./sync_global/
- #gocyclo -over 15 ./sync_types/
- #gocritic check ./data_packer/... ./sync_confirm/... ./sync_global/... ./sync_types/...
- #staticcheck ./data_packer/... ./sync_confirm/... ./sync_global/... ./sync_types/...
-
-## help
-help:
- @fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/##//'
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/README.md b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/README.md
deleted file mode 100644
index 70530da3..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/README.md
+++ /dev/null
@@ -1,146 +0,0 @@
-# sync_exchange
-Пакет для синхронного обмена данными через шину (NATS).
-
-## Принцип обмена
-Сервис пишет в определённый топик шины, подписывается на другой топик (генерируется исходя из названия сервиса и идентификатора пакета) и ожидает сообщение.
-Слушающий сервис вычитывает топик, после обработки пакета отправляет ответ.
-
-## Команды для формирования пакетов
-### SyncPackageToJSON
-View SyncPackage as JSON string
-
-### SyncPackageFromJSON
-Make SyncPackage from JSON string
-
-### MakeSyncCommand
-Create SyncPackage as command package
-
-### MakeSyncResult
-Create SyncPackage as result package
-
-### MakeSyncError
-Create SyncPackage as error package
-
-## Команды для обмена
-### InitSyncExchange
-Функция инициализации подключения к шине
-
-### DeInitSyncExchange
-Функция деинициализации подключения к шине
-
-### SendMessage
-Отправка сообщения в шину без ожидания ответа
-
-### WaitMessage
-Ожидание сообщения из определённого топика из одной очереди. Аналог direct в rabbit. Сообщения будут доставляться по очереди разным подписчикам.
-Имя очереди будет дефолтное sync_exchange.
-
-### QueueSubscribe
-Ожидание сообщения из определённого топика из указанной очереди. Аналог direct в rabbit. Сообщения будут доставляться по очереди разным подписчикам.
-
-### Subscribe
-Ожидание сообщения из определённого топика. Аналог fanout в rabbit. Сообщения будут доставляться всем подписчикам.
-
-### SendRequest
-Отправка запроса с ожиданием ответа
-
-### SendResponse
-Отправка ответа на запрос
-
-## Пример использования
-```go
-package main
-
-import (
- "fmt"
- "log"
- "gitlab.aescorp.ru/dsp_dev/test_area/test_claim/pkg/sync_exchange"
- "gitlab.aescorp.ru/dsp_dev/test_area/test_claim/pkg/sync_exchange/sync_types"
-)
-
-func main() {
- err := sync_exchange.InitSyncExchange("localhost", "service_name")
- if err != nil {
- log.Fatal(err)
- }
-
- params := make(map[string]string)
- params["something"] = "sometime"
- pack := sync_types.MakeSyncCommand("command_1", params)
- resp, err := sync_exchange.SendRequest("service_new", pack, 10000)
-
- fmt.Println(resp.Body.Result["state"])
-
- err = sync_exchange.DeInitSyncExchange()
- if err != nil {
- log.Fatal(err)
- }
-}
-```
-
-## Формат пакетов
-### Команда MakeSyncCommand
-```json
-{
- "head": {
- "destVer": "1.0",
- "sender": "service_1",
- "netID": "810c8afd-6f88-4670-acf1-248fec76f2eb",
- "created": "2022-08-16 10:00:44.292"
- },
- "body": {
- "command": "new_command",
- "params": {
- "key1": "value1",
- "key2": "value2",
- "key3": "value3"
- },
- "error": {
- "place": "",
- "code": 0,
- "message": ""
- }
- }
-}
-```
-### Команда MakeSyncResult
-```json
-{
- "head": {
- "destVer": "1.0",
- "sender": "service_1",
- "netID": "c10386f7-1601-49e1-b4ca-a3d856b72af9",
- "created": "2022-08-16 10:01:32.888"
- },
- "body": {
- "result": {
- "key1": "value1",
- "key2": "value2",
- "key3": "value3"
- },
- "error": {
- "place": "",
- "code": 0,
- "message": ""
- }
- }
-}
-```
-### Команда MakeSyncError
-```json
-{
- "head": {
- "destVer": "1.0",
- "sender": "service_1",
- "netID": "0b2e1b8e-f187-4b9d-bea8-23f951177933",
- "created": "2022-08-16 09:58:47.206"
- },
- "body": {
- "error": {
- "place": "error place",
- "code": 123,
- "message": "error message"
- }
- }
-}
-```
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/data_packer/data_packer.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/data_packer/data_packer.go
deleted file mode 100644
index 0eefbb65..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/data_packer/data_packer.go
+++ /dev/null
@@ -1,53 +0,0 @@
-// Package data_packer -- компрессор данных движка хранилища
-package data_packer
-
-import (
- "fmt"
- "github.com/klauspost/compress/zstd"
-)
-
-// DataPacker -- архиватор данных движка хранилища
-type DataPacker struct {
- enc *zstd.Encoder
- dec *zstd.Decoder
-}
-
-// NewDataPacker -- возвращает новый *DataPacker
-func NewDataPacker() *DataPacker {
- dp := &DataPacker{}
-
- dp.enc, _ = zstd.NewWriter(nil, zstd.WithEncoderLevel(zstd.SpeedBetterCompression))
- dp.dec, _ = zstd.NewReader(nil)
-
- return dp
-}
-
-func (dp *DataPacker) Close() error {
- var errs []error
-
- if dp.enc != nil {
- if err := dp.enc.Close(); err != nil {
- errs = append(errs, fmt.Errorf("encoder close: %w", err))
- }
- }
-
- if dp.dec != nil {
- dp.dec.Close()
- }
-
- // Возвращаем первую ошибку (если есть)
- if len(errs) > 0 {
- return errs[0]
- }
- return nil
-}
-
-// Pack -- сжимает данные для сохранения
-func (dp *DataPacker) Pack(binIn []byte) (binOut []byte, err error) {
- return dp.enc.EncodeAll(binIn, nil), nil
-}
-
-// Unpack -- разжимает данные для отдачи
-func (dp *DataPacker) Unpack(binIn []byte) ([]byte, error) {
- return dp.dec.DecodeAll(binIn, nil)
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/liveness/liveness.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/liveness/liveness.go
deleted file mode 100644
index 250626cb..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/liveness/liveness.go
+++ /dev/null
@@ -1,34 +0,0 @@
-package liveness
-
-import (
- "fmt"
- "github.com/nats-io/nats.go"
- "log"
- "time"
-)
-
-func RunLiveness(nc *nats.Conn, service string, version string) {
- id, err := nc.GetClientID()
- if err != nil {
- id = 0
- }
-
- const topic = "sync_exchange.liveness"
-
- log.Printf("[INFO] sync_exchange, RunLiveness, client id: %v, topic: %q, service: %q, version: %q", id, topic, service, version)
-
- data := fmt.Sprintf("{%q: %q, %q: %q, %q: %v}",
- "service", service,
- "version", version,
- "client_id", id)
-
- for {
- err := nc.Publish(topic, []byte(data))
- if err != nil {
- log.Printf("[ERROR] RunLiveness, data: %v, message: %v", data, err)
- return
- }
-
- time.Sleep(30 * time.Second)
- }
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm/no_confirm.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm/no_confirm.go
deleted file mode 100644
index ab016e33..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm/no_confirm.go
+++ /dev/null
@@ -1,52 +0,0 @@
-package sync_confirm
-
-type NoConfirmer struct{}
-
-func NewNoConfirmer(path string) (h Confirmer, err error) {
- block.Lock()
- defer block.Unlock()
- if confirmer == nil {
- var sc NoConfirmer
- confirmer = &sc
- }
-
- return confirmer, err
-}
-
-func (s *NoConfirmer) getIsInited() bool {
- block.RLock()
- defer block.RUnlock()
- return confirmer != nil
-}
-
-func (s *NoConfirmer) DeInitConfirm() error {
- block.Lock()
- defer block.Unlock()
-
- if confirmer == nil {
- return nil
- }
-
- confirmer = nil
- return nil
-}
-
-func (s *NoConfirmer) NewConfirmation(netID string, wait bool) error {
- return nil
-}
-
-func (s *NoConfirmer) GetConfirmation(netID string) (*Confirmation, error) {
- return nil, nil
-}
-
-func (s *NoConfirmer) MakeConfirmation(netID string, b bool) error {
- return nil
-}
-
-func (s *NoConfirmer) SentConfirmation(netID string, b bool) error {
- return nil
-}
-
-func (s *NoConfirmer) RecvConfirmation(netID string, b bool) error {
- return nil
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm/sync_confirm.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm/sync_confirm.go
deleted file mode 100644
index 450188ac..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm/sync_confirm.go
+++ /dev/null
@@ -1,207 +0,0 @@
-package sync_confirm
-
-import (
- "encoding/json"
- "errors"
- "fmt"
- "sync"
- "time"
-
- "github.com/syndtr/goleveldb/leveldb"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global"
-)
-
-type Confirmation struct {
- Request string
- Response string
- CreateAt time.Time
- Wait bool
- WaitDuration time.Time
- Make bool
- MakeAt time.Time
- Sent bool
- SentAt time.Time
- Recv bool
- RecvAt time.Time
-}
-
-type Confirmer interface {
- DeInitConfirm() error
- NewConfirmation(netID string, wait bool) error
- GetConfirmation(netID string) (*Confirmation, error)
- MakeConfirmation(netID string, b bool) error
- SentConfirmation(netID string, b bool) error
- RecvConfirmation(netID string, b bool) error
-}
-
-type SyncConfirmer struct {
- db *leveldb.DB
-}
-
-var confirmer Confirmer
-var block sync.RWMutex
-
-func NewSyncConfirmer(path string) (h Confirmer, err error) {
- block.Lock()
- defer block.Unlock()
- if confirmer == nil {
- var sc SyncConfirmer
- _db, err := leveldb.OpenFile(fmt.Sprintf("%s/%s.db", path, sync_global.SyncService()), nil)
- if err != nil {
- return nil, err
- }
- sc.db = _db
- confirmer = &sc
- }
-
- return confirmer, err
-}
-
-func (s *SyncConfirmer) getIsInited() bool {
- block.RLock()
- defer block.RUnlock()
- return confirmer != nil
-}
-
-func (s *SyncConfirmer) DeInitConfirm() error {
- block.Lock()
- defer block.Unlock()
-
- if confirmer == nil {
- return nil
- }
-
- err := s.db.Close()
- if err != nil {
- return fmt.Errorf("DeInitConfirm, Close, error: %v", err)
- }
-
- s.db = nil
- confirmer = nil
-
- return nil
-}
-
-func (s *SyncConfirmer) NewConfirmation(netID string, wait bool) error {
- if !s.getIsInited() {
- return errors.New("NewConfirmation, not inited")
- }
-
- conf := Confirmation{
- CreateAt: time.Now(),
- Wait: wait,
- }
-
- value, err := json.Marshal(conf)
- if err != nil {
- return err
- }
-
- err = s.db.Put([]byte(netID), value, nil)
- if err != nil {
- return err
- }
-
- return nil
-}
-
-func (s *SyncConfirmer) GetConfirmation(netID string) (*Confirmation, error) {
- if !s.getIsInited() {
- return nil, fmt.Errorf("GetConfirmation, not inited")
- }
-
- value, err := s.db.Get([]byte(netID), nil)
- if err != nil {
- return nil, err
- }
-
- conf := Confirmation{}
- err = json.Unmarshal(value, &conf)
- if err != nil {
- return nil, fmt.Errorf("GetConfirmation(): in unmarshall JSON, err=%w", err)
- }
-
- return &conf, nil
-}
-
-func (s *SyncConfirmer) MakeConfirmation(netID string, b bool) error {
- if !s.getIsInited() {
- return fmt.Errorf("MakeConfirmation, not inited")
- }
-
- c, err := s.GetConfirmation(netID)
- if err != nil {
- return err
- }
-
- c.Make = b
- c.MakeAt = time.Now()
-
- value, err := json.Marshal(c)
- if err != nil {
- return err
- }
-
- err = s.db.Put([]byte(netID), value, nil)
- if err != nil {
- return err
- }
-
- return nil
-}
-
-func (s *SyncConfirmer) SentConfirmation(netID string, b bool) error {
- if !s.getIsInited() {
- return fmt.Errorf("SentConfirmation, not inited")
- }
-
- if s.db == nil {
- return fmt.Errorf("db is not inited")
- }
-
- c, err := s.GetConfirmation(netID)
- if err != nil {
- return err
- }
-
- c.Sent = b
- c.SentAt = time.Now()
-
- value, err := json.Marshal(c)
- if err != nil {
- return err
- }
-
- err = s.db.Put([]byte(netID), value, nil)
- if err != nil {
- return err
- }
-
- return nil
-}
-
-func (s *SyncConfirmer) RecvConfirmation(netID string, b bool) error {
- if !s.getIsInited() {
- return fmt.Errorf("RecvConfirmation, not inited")
- }
-
- c, err := s.GetConfirmation(netID)
- if err != nil {
- return err
- }
-
- c.Recv = b
- c.RecvAt = time.Now()
-
- value, err := json.Marshal(c)
- if err != nil {
- return err
- }
-
- err = s.db.Put([]byte(netID), value, nil)
- if err != nil {
- return err
- }
-
- return nil
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_exchange.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_exchange.go
deleted file mode 100644
index 0f960698..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_exchange.go
+++ /dev/null
@@ -1,428 +0,0 @@
-package sync_exchange
-
-import (
- "errors"
- "fmt"
- "github.com/nats-io/nats.go"
- "log"
- "os"
- "strings"
- "sync"
- "time"
-
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/data_packer"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/liveness"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types"
-)
-
-// PRIVATE
-
-var (
- nc *nats.Conn
- packer *data_packer.DataPacker
- block sync.RWMutex
- block1 sync.Mutex
- isInited bool
- confirmer sync_confirm.Confirmer
-)
-
-func GetUseConfirmerEnv() bool {
- val, ok := os.LookupEnv("SYNC_EXCHANGE_USE_CONFIRMER")
- if !ok {
- return false
- }
- return strings.EqualFold("true", val)
-}
-
-func fullTopic(topic string) string {
- return sync_global.SyncRoot + topic + "/"
-}
-
-func setIsInited(b bool) {
- block.Lock()
- defer block.Unlock()
- isInited = b
-}
-
-func getIsInited() bool {
- block.RLock()
- defer block.RUnlock()
- return isInited
-}
-
-// doSendMessage Непосредственно отправка сообщения
-func doSendMessage(topic string, pack sync_types.SyncPackage, wait bool) error {
- // Новое сообщение
- err := confirmer.NewConfirmation(pack.Head.NetID, wait)
- if err != nil {
- // TODO: Лог
- return fmt.Errorf("doSendMessage, Error: %v", err)
- }
-
- // Получаем JSON
- rawData, err := sync_types.SyncPackageToJSON(&pack)
- if err != nil {
- // Создание сообщения неудачно
- err1 := confirmer.MakeConfirmation(pack.Head.NetID, false)
- if err1 != nil {
- return fmt.Errorf("doSendMessage, Error: %v, Error1: %v", err, err1)
- }
- return fmt.Errorf("doSendMessage, Error: %v", err)
- }
- // Пакуем сообщение
- data, err := packer.Pack([]byte(rawData))
- if err != nil {
- // Упаковка сообщения неудачна
- err1 := confirmer.MakeConfirmation(pack.Head.NetID, false)
- if err1 != nil {
- return fmt.Errorf("doSendMessage, Error: %v, Error1: %v", err, err1)
- }
- return fmt.Errorf("doSendMessage, Error: %v", err)
- }
- // Создание сообщения удачно
- err = confirmer.MakeConfirmation(pack.Head.NetID, true)
- if err != nil {
- return fmt.Errorf("doSendMessage, Error: %v", err)
- }
-
- // Отправка сообщения
- err = nc.Publish(topic, data)
- if err != nil {
- // Отправка сообщения неудачна
- err1 := confirmer.SentConfirmation(pack.Head.NetID, false)
- if err1 != nil {
- return fmt.Errorf("doSendMessage, Error: %v, Error1: %v", err, err1)
- }
- return fmt.Errorf("doSendMessage, Error: %v", err)
- }
- // Отправка сообщения удачна
- err = confirmer.SentConfirmation(pack.Head.NetID, true)
- if err != nil {
- return fmt.Errorf("doSendMessage, Error: %v", err)
- }
-
- return nil
-}
-
-// doWaitMessage Ожидание сообщения
-func doWaitMessage(topic string, queue string, callback Callback) error {
- // log.Printf("[INFO] WaitMessage, topic: %s\n", topic)
-
- _, err := nc.QueueSubscribe(topic, queue, func(msg *nats.Msg) {
- _data, _ := packer.Unpack(msg.Data)
- pack, err := sync_types.SyncPackageFromJSON(string(_data))
- pack.Msg = msg
- if err != nil {
- log.Println(err)
- return
- }
-
- go callback(&pack)
- })
-
- if err != nil {
- return fmt.Errorf("doWaitMessage, Error: %v", err)
- }
-
- return nil
-}
-
-// PUBLIC
-
-// Callback Функция возврата для подписки на события шины
-type Callback func(pack *sync_types.SyncPackage)
-
-// InitSyncExchange Функция инициализации подключения к шине
-func InitSyncExchange(url string, serviceName string, version string) error {
- block1.Lock()
- defer block1.Unlock()
-
- log.Printf("[INFO] sync_exchange, InitSyncExchange, url: %v, service: %v, version: %v", url, serviceName, version)
-
- if getIsInited() {
- log.Println("[INFO] sync_exchange, InitSyncExchange, already inited")
- return nil
- }
-
- err := sync_global.SetSyncService(serviceName)
- if err != nil {
- return fmt.Errorf("InitSyncExchange, SetSyncService, error: %v", err)
- }
-
- _packer := data_packer.NewDataPacker()
- packer = _packer
-
- _nc, err := nats.Connect(url, nats.Name(serviceName))
- if err != nil {
- return fmt.Errorf("InitSyncExchange, Connect, error: %v", err)
- }
- nc = _nc
-
- status := nc.Status()
- switch status {
- case nats.DISCONNECTED, nats.CLOSED:
- return fmt.Errorf("InitSyncExchange, NATS connection status: %v", status.String())
- default:
- log.Printf("[INFO] sync_exchange, InitSyncExchange, NATS connection status: %v\n", status.String())
- }
-
- // TODO Вынести путь в параметр функции
- storePath := "./store"
- // TODO Тут обработать не подтверждённые пакеты
-
- if GetUseConfirmerEnv() {
- confirmer, err = sync_confirm.NewSyncConfirmer(storePath)
- } else {
- confirmer, err = sync_confirm.NewNoConfirmer(storePath)
- }
- if err != nil {
- return fmt.Errorf("InitSyncExchange, NewConfirmer, path: %q, error: %v", storePath, err)
- }
-
- setIsInited(true)
-
- go liveness.RunLiveness(nc, serviceName, version)
-
- return nil
-}
-
-// DeInitSyncExchange Функция де-инициализации подключения к шине
-func DeInitSyncExchange() error {
- block1.Lock()
- defer block1.Unlock()
-
- if !getIsInited() {
- return fmt.Errorf("DeInitSyncExchange, not inited")
- }
- defer setIsInited(false)
-
- nc.Close()
-
- err := confirmer.DeInitConfirm()
- if err != nil {
- return fmt.Errorf("DeInitSyncExchange, DeInitConfirm, error: %v", err)
- }
-
- nc = nil
- packer = nil
-
- return nil
-}
-
-// SendMessage Отправка сообщения в шину без ожидания ответа
-func SendMessage(topic string, pack sync_types.SyncPackage) error {
- block1.Lock()
- defer block1.Unlock()
-
- if !getIsInited() {
- return fmt.Errorf("SendMessage, not inited")
- }
-
- err := doSendMessage(topic, pack, false)
- if err != nil {
- return fmt.Errorf("SendMessage, Error: %v", err)
- }
-
- return nil
-}
-
-// WaitMessage Ожидание сообщения из определённого топика
-func WaitMessage(topic string, callback Callback) error {
- if !getIsInited() {
- return fmt.Errorf("WaitMessage, not inited")
- }
-
- _topic := topic
- if !strings.HasPrefix(_topic, sync_global.SyncRoot) {
- _topic = fullTopic(topic)
- }
-
- return doWaitMessage(_topic, sync_global.SyncQueue, callback)
-}
-
-// QueueSubscribe Ожидание сообщения из определённого топика
-func QueueSubscribe(topic string, queue string, callback Callback) error {
- if !getIsInited() {
- return fmt.Errorf("WaitMessage, not inited")
- }
-
- return doWaitMessage(topic, queue, callback)
-}
-
-// Subscribe Ожидание сообщения из определённого топика
-func Subscribe(topic string, callback Callback) error {
- if !getIsInited() {
- return fmt.Errorf("subscribe, not inited")
- }
-
- _, err := nc.Subscribe(topic, func(msg *nats.Msg) {
- _data, _ := packer.Unpack(msg.Data)
- pack, err := sync_types.SyncPackageFromJSON(string(_data))
- pack.Msg = msg
- if err != nil {
- log.Println(err)
- return
- }
- go callback(&pack)
- })
-
- if err != nil {
- return fmt.Errorf("subscribe, Error: %v", err)
- }
-
- return nil
-}
-
-// SendRequest Отправка запроса с ожиданием ответа
-func SendRequest(receiver string, pack sync_types.SyncPackage, timeout int) (result sync_types.SyncPackage, err error) {
- result = sync_types.MakeSyncError("", 0, "")
-
- if !getIsInited() {
- return result, fmt.Errorf("SendRequest, not inited")
- }
-
- // Новое сообщение
- if err = confirmer.NewConfirmation(pack.Head.NetID, true); err != nil {
- log.Printf("[ERROR] SendRequest, NewConfirmation error: %s\n", err.Error())
- }
-
- _topic := fullTopic(receiver)
-
- rawData, err := sync_types.SyncPackageToJSON(&pack)
- if err != nil {
- // Создание сообщения неудачно
- if err1 := confirmer.MakeConfirmation(pack.Head.NetID, false); err1 != nil {
- log.Printf("[ERROR] SendRequest, SyncPackageToJSON error: %s, MakeConfirmation error: %s\n", err.Error(), err1.Error())
- }
- log.Printf("[ERROR] SendRequest, SyncPackageToJSON error: %s\n", err.Error())
- return result, err
- }
-
- // Пакуем сообщение
- data, err := packer.Pack([]byte(rawData))
- if err != nil {
- // Упаковка сообщения неудачна
- if err1 := confirmer.MakeConfirmation(pack.Head.NetID, false); err1 != nil {
- log.Printf("[ERROR] SendRequest, Pack error: %s, MakeConfirmation error: %s\n", err.Error(), err1.Error())
- }
- log.Printf("[ERROR] SendRequest, Pack error: %s\n", err.Error())
- return result, err
- }
-
- // Создание сообщения удачно
- if err = confirmer.MakeConfirmation(pack.Head.NetID, true); err != nil {
- log.Printf("[ERROR] SendRequest ok, MakeConfirmation error: %s\n", err.Error())
- }
-
- if timeout == -1 {
- timeout = 24 * 60 * 60 * 1000
- }
-
- msg, err := nc.Request(_topic, data, time.Duration(timeout)*time.Second)
- if err != nil {
- if err1 := confirmer.SentConfirmation(pack.Head.NetID, false); err1 != nil {
- log.Printf("[ERROR] SendRequest (%v), Request error: %s, SentConfirmation error: %s\n", _topic, err.Error(), err1.Error())
- }
- log.Printf("[ERROR] SendRequest (%v), Request error: %s\n", _topic, err.Error())
- return result, err
- }
-
- // Отправка сообщения удачна
- if err = confirmer.SentConfirmation(pack.Head.NetID, true); err != nil {
- log.Printf("[ERROR] SendRequest, Request ok, SentConfirmation error: %s\n", err.Error())
- }
-
- _data, err := packer.Unpack(msg.Data)
- if err != nil {
- log.Printf("[ERROR] SendRequest, Unpack, error: %s\n", err.Error())
- return result, err
- }
- result, err = sync_types.SyncPackageFromJSON(string(_data))
- if err != nil {
- log.Printf("[ERROR] SendRequest, SyncPackageFromJSON, error: %s\n", err.Error())
- result.Body.Error.Code = 3
- if errors.Is(err, nats.ErrTimeout) {
- result.Body.Error.Code = 4
- }
- return result, err
- }
-
- if err = confirmer.RecvConfirmation(pack.Head.NetID, true); err != nil {
- log.Printf("[ERROR] SendRequest, Request ok, RecvConfirmation error: %s\n", err.Error())
- }
-
- return result, nil
-}
-
-// SendResponse Отправка ответа на запрос
-func SendResponse(packIn *sync_types.SyncPackage, packOut sync_types.SyncPackage) error {
- if !getIsInited() {
- return fmt.Errorf("SendResponse, not inited")
- }
-
- if packOut.Body.Result == nil {
- packOut.Body.Result = make(sync_types.SyncResult)
- }
- packOut.Body.Result["netID"] = packIn.Head.NetID
-
- // Новое сообщение
- if err := confirmer.NewConfirmation(packIn.Head.NetID, true); err != nil {
- log.Printf("[ERROR] SendResponse, NewConfirmation error: %s\n", err.Error())
- }
-
- msg := packIn.Msg
- if msg == nil {
- return fmt.Errorf("SendResponse, Error: packIn.Msg is nil")
- }
-
- rawData, err := sync_types.SyncPackageToJSON(&packOut)
- if err != nil {
- // Создание сообщения неудачно
- if err1 := confirmer.MakeConfirmation(packIn.Head.NetID, false); err1 != nil {
- log.Printf("[ERROR] SendResponse, SyncPackageToJSON error: %s, MakeConfirmation error: %s\n", err.Error(), err1.Error())
- }
- log.Printf("[ERROR] SendResponse SyncPackageToJSON error: %s\n", err.Error())
- return fmt.Errorf("SendResponse, SyncPackageToJSON error: %v", err)
- }
- // Пакуем сообщение
- data, err := packer.Pack([]byte(rawData))
- if err != nil {
- // Упаковка сообщения неудачна
- if err1 := confirmer.MakeConfirmation(packIn.Head.NetID, false); err1 != nil {
- log.Printf("[ERROR] SendResponse Pack error: %s, MakeConfirmation error: %s\n", err.Error(), err1.Error())
- }
- log.Printf("[ERROR] SendResponse, Pack error: %s\n", err.Error())
- return fmt.Errorf("SendResponse, Pack error: %v", err)
- }
-
- err = msg.Respond(data)
- if err != nil {
- if err1 := confirmer.SentConfirmation(packIn.Head.NetID, false); err1 != nil {
- log.Printf("[ERROR] SendResponse, Respond error: %s, SentConfirmation error: %s\n", err.Error(), err1.Error())
- }
- log.Printf("[ERROR] SendResponse, Respond error: %s\n", err.Error())
- return fmt.Errorf("SendResponse, Respond error: %v", err)
- }
-
- // Отправка сообщения удачна
- if err = confirmer.SentConfirmation(packIn.Head.NetID, true); err != nil {
- log.Printf("[ERROR] SendResponse ok, SentConfirmation error: %s\n", err.Error())
- }
-
- return nil
-}
-
-func SendRawMessage(topic string, data []byte) error {
- if !getIsInited() {
- return fmt.Errorf("SendRawMessage, not inited")
- }
-
- // Отправка сообщения
- err := nc.Publish(topic, data)
- if err != nil {
- return fmt.Errorf("SendRawMessage, Error: %v", err)
- }
- return nil
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_exchange_interface.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_exchange_interface.go
deleted file mode 100644
index 6a433407..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_exchange_interface.go
+++ /dev/null
@@ -1,53 +0,0 @@
-package sync_exchange
-
-import (
- "sync"
-
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types"
-)
-
-type ISyncExchange interface {
- InitSyncExchange(url string, serviceName string, version string) error
- DeInitSyncExchange() error
- SendMessage(topic string, pack sync_types.SyncPackage) error
- WaitMessage(topic string, callback Callback) error
- Subscribe(topic string, callback Callback) error
- SendRequest(receiver string, pack sync_types.SyncPackage, timeout int) (result sync_types.SyncPackage, err error)
- SendResponse(packIn *sync_types.SyncPackage, packOut sync_types.SyncPackage) error
-}
-
-type SSyncExhange struct{}
-
-var New = sync.OnceValue(func() ISyncExchange {
- var h = SSyncExhange{}
-
- return &h
-})
-
-func (s *SSyncExhange) InitSyncExchange(url string, serviceName string, version string) error {
- return InitSyncExchange(url, serviceName, version)
-}
-
-func (s *SSyncExhange) DeInitSyncExchange() error {
- return DeInitSyncExchange()
-}
-
-func (s *SSyncExhange) SendMessage(topic string, pack sync_types.SyncPackage) error {
- return SendMessage(topic, pack)
-}
-
-func (s *SSyncExhange) WaitMessage(topic string, callback Callback) error {
- return WaitMessage(topic, callback)
-}
-
-func (s *SSyncExhange) Subscribe(topic string, callback Callback) error {
- return Subscribe(topic, callback)
-}
-
-func (s *SSyncExhange) SendRequest(receiver string, pack sync_types.SyncPackage, timeout int) (result sync_types.SyncPackage, err error) {
- return SendRequest(receiver, pack, timeout)
-}
-
-func (s *SSyncExhange) SendResponse(packIn *sync_types.SyncPackage, packOut sync_types.SyncPackage) error {
- return SendResponse(packIn, packOut)
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global/sync_global.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global/sync_global.go
deleted file mode 100644
index a1fcf97d..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global/sync_global.go
+++ /dev/null
@@ -1,36 +0,0 @@
-package sync_global
-
-import (
- "fmt"
- "strings"
- "sync"
-)
-
-const (
- SyncRoot = "/claim_reqrepl/"
- SyncQueue = "sync_exchange"
- SyncDestVer = "1.0"
-)
-
-var (
- block sync.RWMutex
- syncService = "unknown_service"
-)
-
-// SyncService -- возвращает имя сервиса для сетевого обмена по локальной шине
-func SyncService() string {
- block.RLock()
- defer block.RUnlock()
- return syncService
-}
-
-// SetSyncService -- устанавливает имя сервиса для сетевого обмена по локальной шине
-func SetSyncService(name string) error {
- block.Lock()
- defer block.Unlock()
- if strings.Trim(name, " ") == "" {
- return fmt.Errorf("SetSyncService(): name(%q) is bad", name)
- }
- syncService = name
- return nil
-}
diff --git a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types/sync_types.go b/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types/sync_types.go
deleted file mode 100644
index 927b6ba1..00000000
--- a/vendor/gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types/sync_types.go
+++ /dev/null
@@ -1,157 +0,0 @@
-package sync_types
-
-import (
- "encoding/json"
- "fmt"
- "time"
-
- "github.com/google/uuid"
- "github.com/nats-io/nats.go"
- "gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global"
-)
-
-// SyncPackage Пакет. Содержит заголовок и тело.
-type SyncPackage struct {
- Head SyncHead `json:"head"`
- Body SyncBody `json:"body"`
- Msg *nats.Msg `json:"-"`
-}
-
-// SyncHead Заголовок пакета. Содержит данные для идентификации.
-type SyncHead struct {
- DestVer string `json:"SyncDestVer"`
- Sender string `json:"sender"`
- NetID string `json:"netID"`
- Created string `json:"created"`
-}
-
-// SyncBody Тело пакета. Содержит подобъекты согласно назначению.
-type SyncBody struct {
- Command string `json:"command,omitempty"`
- Params SyncParams `json:"params,omitempty"`
- Result SyncResult `json:"result,omitempty"`
- Error SyncError `json:"error,omitempty"`
- Object SyncObject `json:"object,omitempty"`
-}
-
-// SyncParams Параметры команды.
-type SyncParams map[string]interface{}
-
-// SyncResult Результат выполнения команды.
-type SyncResult map[string]interface{}
-
-// SyncError Структура содержащая ошибку.
-type SyncError struct {
- Place string `json:"place"`
- Code int `json:"code"`
- Message string `json:"message"`
-}
-
-// SyncObject Объектная модель.
-type SyncObject []byte
-
-func makeSyncHead(sender string) SyncHead {
- dt := time.Now().Local().Format("2006-01-02 15:04:05.000")
-
- id := uuid.New().String()
-
- result := SyncHead{sync_global.SyncDestVer, sender, id, dt}
-
- return result
-}
-
-// IsValid Validate SyncPackage header
-func (p *SyncPackage) IsValid() bool {
- _ver := sync_global.SyncDestVer
- return p.Head.DestVer == _ver
-}
-
-// IsCommand Check SyncPackage is command package
-func (p *SyncPackage) IsCommand() bool {
- return p.Body.Command != ""
-}
-
-// IsResult Check SyncPackage is result package
-func (p *SyncPackage) IsResult() bool {
- return len(p.Body.Result) != 0
-}
-
-// IsError Check SyncPackage is error package
-func (p *SyncPackage) IsError() bool {
- return (p.Body.Error.Code != 0) || (p.Body.Error.Message != "")
-}
-
-// SyncPackageToJSON View SyncPackage as JSON string
-func SyncPackageToJSON(p *SyncPackage) (string, error) {
- if p == nil {
- return "", fmt.Errorf("SyncPackage is nil")
- }
-
- result, err := json.Marshal(p)
- if err != nil {
- return "", err
- }
-
- // DEBUG
- // log.Println(string(result))
-
- return string(result), nil
-}
-
-// SyncPackageFromJSON Make SyncPackage from JSON string
-func SyncPackageFromJSON(msg string) (SyncPackage, error) {
- // DEBUG
- // log.Println(string(msg))
-
- result := SyncPackage{}
- err := json.Unmarshal([]byte(msg), &result)
- if err != nil {
- return result, fmt.Errorf("SyncPackageFromJSON(): in unmarshall JSON, err=%w", err)
- }
-
- return result, nil
-}
-
-func NewSyncParams() SyncParams {
- return make(SyncParams)
-}
-
-func NewSyncResult() SyncResult {
- return make(SyncResult)
-}
-
-// MakeSyncCommand Create SyncPackage as command package
-func MakeSyncCommand(command string, params SyncParams) SyncPackage {
- _head := makeSyncHead(sync_global.SyncService())
- _body := SyncBody{Command: command, Params: params}
- _result := SyncPackage{_head, _body, nil}
-
- return _result
-}
-
-// MakeSyncResult Create SyncPackage as result package
-func MakeSyncResult(result SyncResult) SyncPackage {
- _head := makeSyncHead(sync_global.SyncService())
- _body := SyncBody{Result: result}
- _result := SyncPackage{_head, _body, nil}
-
- return _result
-}
-
-// MakeSyncError Create SyncPackage as error package
-func MakeSyncError(place string, code int, message string) SyncPackage {
- _head := makeSyncHead(sync_global.SyncService())
- _body := SyncBody{Error: SyncError{place, code, message}}
- _result := SyncPackage{_head, _body, nil}
-
- return _result
-}
-
-// MakeSyncObject Create SyncPackage as object package
-func MakeSyncObject(object *SyncObject) SyncPackage {
- _head := makeSyncHead(sync_global.SyncService())
- _body := SyncBody{Object: *object}
- _result := SyncPackage{_head, _body, nil}
-
- return _result
-}
diff --git a/vendor/go.mau.fi/util/dbutil/log.go b/vendor/go.mau.fi/util/dbutil/log.go
index 918c79b7..017420f7 100644
--- a/vendor/go.mau.fi/util/dbutil/log.go
+++ b/vendor/go.mau.fi/util/dbutil/log.go
@@ -3,6 +3,7 @@ package dbutil
import (
"context"
"regexp"
+ "runtime"
"strings"
"time"
@@ -92,12 +93,14 @@ func (z zeroLogger) DoUpgrade(from, to int, message string, txn TxnMode) {
var whitespaceRegex = regexp.MustCompile(`\s+`)
+var GlobalSafeQueryLog bool
+
func (z zeroLogger) QueryTiming(ctx context.Context, method, query string, args []any, nrows int, duration time.Duration, err error) {
log := zerolog.Ctx(ctx)
if log.GetLevel() == zerolog.Disabled || log == zerolog.DefaultContextLogger {
log = z.l
}
- if (!z.TraceLogAllQueries || log.GetLevel() != zerolog.TraceLevel) && duration < 1*time.Second {
+ if (!z.TraceLogAllQueries || log.GetLevel() != zerolog.TraceLevel) && !GlobalSafeQueryLog && duration < 1*time.Second {
return
}
if nrows > -1 {
@@ -105,13 +108,32 @@ func (z zeroLogger) QueryTiming(ctx context.Context, method, query string, args
log = &rowLog
}
query = strings.TrimSpace(whitespaceRegex.ReplaceAllLiteralString(query, " "))
- log.Trace().
- Err(err).
- Int64("duration_µs", duration.Microseconds()).
- Str("method", method).
- Str("query", query).
- Interface("query_args", args).
- Msg("Query")
+ callerSkipFrame := z.CallerSkipFrame
+ if GlobalSafeQueryLog || duration > 1*time.Second {
+ for ; callerSkipFrame < 10; callerSkipFrame++ {
+ _, filename, _, _ := runtime.Caller(callerSkipFrame)
+ if !strings.Contains(filename, "/dbutil/") {
+ break
+ }
+ }
+ }
+ if GlobalSafeQueryLog {
+ log.Debug().
+ Err(err).
+ Int64("duration_µs", duration.Microseconds()).
+ Str("method", method).
+ Str("query", query).
+ Caller(callerSkipFrame).
+ Msg("Query")
+ } else {
+ log.Trace().
+ Err(err).
+ Int64("duration_µs", duration.Microseconds()).
+ Str("method", method).
+ Str("query", query).
+ Interface("query_args", args).
+ Msg("Query")
+ }
if duration >= 1*time.Second {
evt := log.Warn().
Float64("duration_seconds", duration.Seconds()).
@@ -119,7 +141,7 @@ func (z zeroLogger) QueryTiming(ctx context.Context, method, query string, args
Str("method", method).
Str("query", query)
if z.Caller {
- evt = evt.Caller(z.CallerSkipFrame)
+ evt = evt.Caller(callerSkipFrame)
}
evt.Msg("Query took long")
}
diff --git a/vendor/go.mau.fi/util/dbutil/transaction.go b/vendor/go.mau.fi/util/dbutil/transaction.go
index d010ea5e..7abd329a 100644
--- a/vendor/go.mau.fi/util/dbutil/transaction.go
+++ b/vendor/go.mau.fi/util/dbutil/transaction.go
@@ -120,7 +120,11 @@ func (db *Database) DoTxn(ctx context.Context, opts *TxnOptions, fn func(ctx con
log.Trace().Err(err).Msg("Failed to begin transaction")
return exerrors.NewDualError(ErrTxnBegin, err)
}
- log.Trace().Msg("Transaction started")
+ logLevel := zerolog.TraceLevel
+ if GlobalSafeQueryLog {
+ logLevel = zerolog.DebugLevel
+ }
+ log.WithLevel(logLevel).Msg("Transaction started")
tx.noTotalLog = true
ctx = log.WithContext(ctx)
ctx = context.WithValue(ctx, db.txnCtxKey, tx)
@@ -131,16 +135,16 @@ func (db *Database) DoTxn(ctx context.Context, opts *TxnOptions, fn func(ctx con
if rollbackErr != nil {
log.Warn().Err(rollbackErr).Msg("Rollback after transaction error failed")
} else {
- log.Trace().Msg("Rollback successful")
+ log.WithLevel(logLevel).Msg("Rollback successful")
}
return err
}
err = tx.Commit()
if err != nil {
- log.Trace().Err(err).Msg("Commit failed")
+ log.WithLevel(logLevel).Err(err).Msg("Commit failed")
return exerrors.NewDualError(ErrTxnCommit, err)
}
- log.Trace().Msg("Commit successful")
+ log.WithLevel(logLevel).Msg("Commit successful")
return nil
}
diff --git a/vendor/go.mau.fi/util/exmaps/clone.go b/vendor/go.mau.fi/util/exmaps/clone.go
new file mode 100644
index 00000000..4ae98815
--- /dev/null
+++ b/vendor/go.mau.fi/util/exmaps/clone.go
@@ -0,0 +1,19 @@
+// Copyright (c) 2025 Tulir Asokan
+//
+// This Source Code Form is subject to the terms of the Mozilla Public
+// License, v. 2.0. If a copy of the MPL was not distributed with this
+// file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+package exmaps
+
+import (
+ "maps"
+)
+
+// NonNilClone returns a copy of the given map, or an empty map if the input is nil.
+func NonNilClone[Key comparable, Value any](m map[Key]Value) map[Key]Value {
+ if m == nil {
+ return make(map[Key]Value)
+ }
+ return maps.Clone(m)
+}
diff --git a/vendor/go.mau.fi/util/exmaps/set.go b/vendor/go.mau.fi/util/exmaps/set.go
new file mode 100644
index 00000000..45af2307
--- /dev/null
+++ b/vendor/go.mau.fi/util/exmaps/set.go
@@ -0,0 +1,89 @@
+// Copyright (c) 2025 Tulir Asokan
+//
+// This Source Code Form is subject to the terms of the Mozilla Public
+// License, v. 2.0. If a copy of the MPL was not distributed with this
+// file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+package exmaps
+
+import (
+ "iter"
+)
+
+// AbstractSet is an interface implemented by [Set] and [exsync.Set]
+type AbstractSet[T comparable] interface {
+ Add(item T) bool
+ Has(item T) bool
+ Pop(item T) bool
+ Remove(item T)
+ Size() int
+ AsList() []T
+ Iter() iter.Seq[T]
+}
+
+type empty = struct{}
+
+var emptyVal = empty{}
+
+// Set is a generic set type based on a map. It is not thread-safe, use [exsync.Set] for a thread-safe variant.
+type Set[T comparable] map[T]empty
+
+var _ AbstractSet[int] = (Set[int])(nil)
+
+func NewSetWithItems[T comparable](items []T) Set[T] {
+ s := make(Set[T], len(items))
+ for _, item := range items {
+ s[item] = emptyVal
+ }
+ return s
+}
+
+func (s Set[T]) Size() int {
+ return len(s)
+}
+
+func (s Set[T]) Add(item T) bool {
+ _, exists := s[item]
+ if !exists {
+ s[item] = emptyVal
+ return true
+ }
+ return false
+}
+
+func (s Set[T]) Remove(item T) {
+ delete(s, item)
+}
+
+func (s Set[T]) Pop(item T) bool {
+ _, exists := s[item]
+ if exists {
+ delete(s, item)
+ }
+ return exists
+}
+
+func (s Set[T]) Has(item T) bool {
+ _, exists := s[item]
+ return exists
+}
+
+func (s Set[T]) AsList() []T {
+ result := make([]T, len(s))
+ i := 0
+ for item := range s {
+ result[i] = item
+ i++
+ }
+ return result
+}
+
+func (s Set[T]) Iter() iter.Seq[T] {
+ return func(yield func(T) bool) {
+ for item := range s {
+ if !yield(item) {
+ return
+ }
+ }
+ }
+}
diff --git a/vendor/go.mau.fi/util/exslices/delete.go b/vendor/go.mau.fi/util/exslices/delete.go
new file mode 100644
index 00000000..877226b6
--- /dev/null
+++ b/vendor/go.mau.fi/util/exslices/delete.go
@@ -0,0 +1,38 @@
+// Copyright (c) 2025 Tulir Asokan
+//
+// This Source Code Form is subject to the terms of the Mozilla Public
+// License, v. 2.0. If a copy of the MPL was not distributed with this
+// file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+package exslices
+
+import (
+ "slices"
+)
+
+// FastDeleteIndex deletes the item at the given index without preserving slice order.
+// This is faster than normal deletion, as it doesn't need to copy all elements after the deleted index.
+func FastDeleteIndex[T any](s []T, index int) []T {
+ s[index] = s[len(s)-1]
+ clear(s[len(s)-1:])
+ return s[:len(s)-1]
+}
+
+// FastDeleteItem finds the first index of the given item in the slice and deletes it without preserving slice order.
+// This is faster than normal deletion, as it doesn't need to copy all elements after the deleted index.
+func FastDeleteItem[T comparable](s []T, item T) []T {
+ index := slices.Index(s, item)
+ if index < 0 {
+ return s
+ }
+ return FastDeleteIndex(s, index)
+}
+
+// DeleteItem finds the first index of the given item in the slice and deletes it.
+func DeleteItem[T comparable](s []T, item T) []T {
+ index := slices.Index(s, item)
+ if index < 0 {
+ return s
+ }
+ return slices.Delete(s, index, index+1)
+}
diff --git a/vendor/go.mau.fi/util/exslices/stack.go b/vendor/go.mau.fi/util/exslices/stack.go
new file mode 100644
index 00000000..ac0754c6
--- /dev/null
+++ b/vendor/go.mau.fi/util/exslices/stack.go
@@ -0,0 +1,80 @@
+// Copyright (c) 2024 Tulir Asokan
+//
+// This Source Code Form is subject to the terms of the Mozilla Public
+// License, v. 2.0. If a copy of the MPL was not distributed with this
+// file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+package exslices
+
+import (
+ "iter"
+)
+
+type Stack[T comparable] []T
+
+func (s *Stack[T]) Push(v ...T) {
+ *s = append(*s, v...)
+}
+
+// Peek returns the top item from the stack without removing it.
+func (s *Stack[T]) Peek() (v T, ok bool) {
+ return s.PeekN(1)
+}
+
+// PeekN returns the nth item from the top of the stack (1-based).
+func (s *Stack[T]) PeekN(n int) (v T, ok bool) {
+ if len(*s) < n {
+ return
+ }
+ v = (*s)[len(*s)-n]
+ ok = true
+ return
+}
+
+// Pop removes and returns the top item from the stack.
+func (s *Stack[T]) Pop() (v T, ok bool) {
+ v, ok = s.Peek()
+ if ok {
+ *s = (*s)[:len(*s)-1]
+ }
+ return
+}
+
+func (s *Stack[T]) PeekValue() T {
+ v, _ := s.Peek()
+ return v
+}
+
+func (s *Stack[T]) PopValue() T {
+ v, _ := s.Pop()
+ return v
+}
+
+// Index returns the highest index of the given value in the stack, or -1 if not found.
+func (s *Stack[T]) Index(val T) int {
+ for i := len(*s) - 1; i >= 0; i-- {
+ if (*s)[i] == val {
+ return i
+ }
+ }
+ return -1
+}
+
+// Has returns whether the given value is in the stack.
+func (s *Stack[T]) Has(val T) bool {
+ return s.Index(val) != -1
+}
+
+func (s *Stack[T]) PopIter() iter.Seq[T] {
+ return func(yield func(T) bool) {
+ for {
+ v, ok := s.Pop()
+ if !ok {
+ return
+ }
+ if !yield(v) {
+ return
+ }
+ }
+ }
+}
diff --git a/vendor/go.mau.fi/util/exstrings/stringutil.go b/vendor/go.mau.fi/util/exstrings/stringutil.go
index 4fe1ba40..110f1c61 100644
--- a/vendor/go.mau.fi/util/exstrings/stringutil.go
+++ b/vendor/go.mau.fi/util/exstrings/stringutil.go
@@ -9,6 +9,7 @@ package exstrings
import (
"crypto/sha256"
"crypto/subtle"
+ "slices"
"strings"
"unsafe"
)
@@ -102,3 +103,20 @@ func LongestSequenceOfFunc(a string, fn func(b rune) int) int {
}
return maxCount
}
+
+func LongestCommonPrefix(in []string) string {
+ if len(in) == 0 {
+ return ""
+ } else if len(in) == 1 {
+ return in[0]
+ }
+
+ minStr := slices.Min(in)
+ maxStr := slices.Max(in)
+ for i := 0; i < len(minStr) && i < len(maxStr); i++ {
+ if minStr[i] != maxStr[i] {
+ return minStr[:i]
+ }
+ }
+ return minStr
+}
diff --git a/vendor/go.mau.fi/util/exsync/syncmap.go b/vendor/go.mau.fi/util/exsync/syncmap.go
index 477cd0a9..b2013f2a 100644
--- a/vendor/go.mau.fi/util/exsync/syncmap.go
+++ b/vendor/go.mau.fi/util/exsync/syncmap.go
@@ -71,6 +71,17 @@ func (sm *Map[Key, Value]) Get(key Key) (value Value, ok bool) {
return
}
+// GetDefault gets a value in the map, or the given default value if there's no such key.
+func (sm *Map[Key, Value]) GetDefault(key Key, def Value) Value {
+ sm.lock.RLock()
+ value, ok := sm.data[key]
+ sm.lock.RUnlock()
+ if ok {
+ return value
+ }
+ return def
+}
+
// GetOrSet gets a value in the map if the key already exists, otherwise inserts the given value and returns it.
//
// The boolean return parameter is true if the key already exists, and false if the given value was inserted.
diff --git a/vendor/go.mau.fi/util/exsync/syncset.go b/vendor/go.mau.fi/util/exsync/syncset.go
index 906a1452..b6ff07a3 100644
--- a/vendor/go.mau.fi/util/exsync/syncset.go
+++ b/vendor/go.mau.fi/util/exsync/syncset.go
@@ -9,6 +9,8 @@ package exsync
import (
"iter"
"sync"
+
+ "go.mau.fi/util/exmaps"
)
type empty struct{}
@@ -21,6 +23,8 @@ type Set[T comparable] struct {
l sync.RWMutex
}
+var _ exmaps.AbstractSet[int] = (*Set[int])(nil)
+
// NewSet constructs a Set with an empty map.
func NewSet[T comparable]() *Set[T] {
return NewSetWithMap[T](make(map[T]empty))
diff --git a/vendor/go.mau.fi/whatsmeow/appstate.go b/vendor/go.mau.fi/whatsmeow/appstate.go
index eff43ea4..57c87d39 100644
--- a/vendor/go.mau.fi/whatsmeow/appstate.go
+++ b/vendor/go.mau.fi/whatsmeow/appstate.go
@@ -427,3 +427,19 @@ func (cli *Client) sendAppState(ctx context.Context, patch appstate.PatchInfo, w
return nil
}
+
+func (cli *Client) MarkNotDirty(ctx context.Context, cleanType string, ts time.Time) error {
+ _, err := cli.sendIQ(ctx, infoQuery{
+ Namespace: "urn:xmpp:whatsapp:dirty",
+ Type: iqSet,
+ To: types.ServerJID,
+ Content: []waBinary.Node{{
+ Tag: "clean",
+ Attrs: waBinary.Attrs{
+ "type": cleanType,
+ "timestamp": ts.Unix(),
+ },
+ }},
+ })
+ return err
+}
diff --git a/vendor/go.mau.fi/whatsmeow/appstate/keys.go b/vendor/go.mau.fi/whatsmeow/appstate/keys.go
index dd750ffc..ba785dc8 100644
--- a/vendor/go.mau.fi/whatsmeow/appstate/keys.go
+++ b/vendor/go.mau.fi/whatsmeow/appstate/keys.go
@@ -126,13 +126,13 @@ func (proc *Processor) GetMissingKeyIDs(ctx context.Context, pl *PatchList) [][]
}
}
if pl.Snapshot != nil {
- checkMissing(pl.Snapshot.GetKeyId().GetId())
+ checkMissing(pl.Snapshot.GetKeyID().GetID())
for _, record := range pl.Snapshot.GetRecords() {
- checkMissing(record.GetKeyId().GetId())
+ checkMissing(record.GetKeyID().GetID())
}
}
for _, patch := range pl.Patches {
- checkMissing(patch.GetKeyId().GetId())
+ checkMissing(patch.GetKeyID().GetID())
}
return missingKeys
}
diff --git a/vendor/go.mau.fi/whatsmeow/binary/proto/legacy.go b/vendor/go.mau.fi/whatsmeow/binary/proto/legacy.go
index 7c43018c..cf9177ee 100644
--- a/vendor/go.mau.fi/whatsmeow/binary/proto/legacy.go
+++ b/vendor/go.mau.fi/whatsmeow/binary/proto/legacy.go
@@ -276,7 +276,6 @@ type (
StickerAction = waSyncAction.StickerAction
StatusPrivacyAction = waSyncAction.StatusPrivacyAction
StarAction = waSyncAction.StarAction
- SecurityNotificationSetting = waSyncAction.SecurityNotificationSetting
RemoveRecentStickerAction = waSyncAction.RemoveRecentStickerAction
RecentEmojiWeightsAction = waSyncAction.RecentEmojiWeightsAction
QuickReplyAction = waSyncAction.QuickReplyAction
diff --git a/vendor/go.mau.fi/whatsmeow/connectionevents.go b/vendor/go.mau.fi/whatsmeow/connectionevents.go
index 79926a13..6d6b66fb 100644
--- a/vendor/go.mau.fi/whatsmeow/connectionevents.go
+++ b/vendor/go.mau.fi/whatsmeow/connectionevents.go
@@ -88,6 +88,13 @@ func (cli *Client) handleIB(ctx context.Context, node *waBinary.Node) {
cli.dispatchEvent(&events.OfflineSyncCompleted{
Count: ag.Int("count"),
})
+ case "dirty":
+ //ts := ag.UnixTime("timestamp")
+ //typ := ag.String("type") // account_sync
+ //go func() {
+ // err := cli.MarkNotDirty(ctx, typ, ts)
+ // zerolog.Ctx(ctx).Debug().Err(err).Msg("Marked dirty item as clean")
+ //}()
}
}
}
@@ -179,7 +186,7 @@ func (cli *Client) handleConnectSuccess(ctx context.Context, node *waBinary.Node
} else {
cli.Log.Debugf("Database has %d prekeys, server says we have %d", dbCount, serverCount)
if serverCount < MinPreKeyCount || dbCount < MinPreKeyCount {
- cli.uploadPreKeys(ctx)
+ cli.uploadPreKeys(ctx, dbCount == 0 && serverCount == 0)
sc, _ := cli.getServerPreKeyCount(ctx)
cli.Log.Debugf("Prekey count after upload: %d", sc)
}
diff --git a/vendor/go.mau.fi/whatsmeow/internals.go b/vendor/go.mau.fi/whatsmeow/internals.go
index b7b75238..0c2801a0 100644
--- a/vendor/go.mau.fi/whatsmeow/internals.go
+++ b/vendor/go.mau.fi/whatsmeow/internals.go
@@ -483,8 +483,8 @@ func (int *DangerousInternalClient) GetServerPreKeyCount(ctx context.Context) (i
return int.c.getServerPreKeyCount(ctx)
}
-func (int *DangerousInternalClient) UploadPreKeys(ctx context.Context) {
- int.c.uploadPreKeys(ctx)
+func (int *DangerousInternalClient) UploadPreKeys(ctx context.Context, initialUpload bool) {
+ int.c.uploadPreKeys(ctx, initialUpload)
}
func (int *DangerousInternalClient) FetchPreKeysNoError(ctx context.Context, retryDevices []types.JID) map[types.JID]*prekey.Bundle {
diff --git a/vendor/go.mau.fi/whatsmeow/message.go b/vendor/go.mau.fi/whatsmeow/message.go
index 3991395f..7040c66b 100644
--- a/vendor/go.mau.fi/whatsmeow/message.go
+++ b/vendor/go.mau.fi/whatsmeow/message.go
@@ -689,37 +689,41 @@ func (cli *Client) handleHistorySyncNotificationLoop() {
// You only need to call this manually if you set [Client.ManualHistorySyncDownload] to true.
// By default, whatsmeow will call this automatically and dispatch an [events.HistorySync] with the parsed data.
func (cli *Client) DownloadHistorySync(ctx context.Context, notif *waE2E.HistorySyncNotification, synchronousStorage bool) (*waHistorySync.HistorySync, error) {
- var historySync waHistorySync.HistorySync
- if data, err := cli.Download(ctx, notif); err != nil {
+ var data []byte
+ var err error
+ if notif.InitialHistBootstrapInlinePayload != nil {
+ data = notif.InitialHistBootstrapInlinePayload
+ } else if data, err = cli.Download(ctx, notif); err != nil {
return nil, fmt.Errorf("failed to download: %w", err)
- } else if reader, err := zlib.NewReader(bytes.NewReader(data)); err != nil {
+ }
+ var historySync waHistorySync.HistorySync
+ if reader, err := zlib.NewReader(bytes.NewReader(data)); err != nil {
return nil, fmt.Errorf("failed to prepare to decompress: %w", err)
} else if rawData, err := io.ReadAll(reader); err != nil {
return nil, fmt.Errorf("failed to decompress: %w", err)
} else if err = proto.Unmarshal(rawData, &historySync); err != nil {
return nil, fmt.Errorf("failed to unmarshal: %w", err)
- } else {
- cli.Log.Debugf("Received history sync (type %s, chunk %d, progress %d)", historySync.GetSyncType(), historySync.GetChunkOrder(), historySync.GetProgress())
- doStorage := func(ctx context.Context) {
- if historySync.GetSyncType() == waHistorySync.HistorySync_PUSH_NAME {
- cli.handleHistoricalPushNames(ctx, historySync.GetPushnames())
- } else if len(historySync.GetConversations()) > 0 {
- cli.storeHistoricalMessageSecrets(ctx, historySync.GetConversations())
- }
- if len(historySync.GetPhoneNumberToLidMappings()) > 0 {
- cli.storeHistoricalPNLIDMappings(ctx, historySync.GetPhoneNumberToLidMappings())
- }
- if historySync.GlobalSettings != nil {
- cli.storeGlobalSettings(ctx, historySync.GlobalSettings)
- }
- }
- if synchronousStorage {
- doStorage(ctx)
- } else {
- go doStorage(context.WithoutCancel(ctx))
- }
- return &historySync, nil
}
+ cli.Log.Debugf("Received history sync (type %s, chunk %d, progress %d)", historySync.GetSyncType(), historySync.GetChunkOrder(), historySync.GetProgress())
+ doStorage := func(ctx context.Context) {
+ if historySync.GetSyncType() == waHistorySync.HistorySync_PUSH_NAME {
+ cli.handleHistoricalPushNames(ctx, historySync.GetPushnames())
+ } else if len(historySync.GetConversations()) > 0 {
+ cli.storeHistoricalMessageSecrets(ctx, historySync.GetConversations())
+ }
+ if len(historySync.GetPhoneNumberToLidMappings()) > 0 {
+ cli.storeHistoricalPNLIDMappings(ctx, historySync.GetPhoneNumberToLidMappings())
+ }
+ if historySync.GlobalSettings != nil {
+ cli.storeGlobalSettings(ctx, historySync.GlobalSettings)
+ }
+ }
+ if synchronousStorage {
+ doStorage(ctx)
+ } else {
+ go doStorage(context.WithoutCancel(ctx))
+ }
+ return &historySync, nil
}
func (cli *Client) handleAppStateSyncKeyShare(ctx context.Context, keys *waE2E.AppStateSyncKeyShare) {
@@ -1024,8 +1028,7 @@ func (cli *Client) handleDecryptedMessage(ctx context.Context, info *types.Messa
}
func (cli *Client) sendProtocolMessageReceipt(ctx context.Context, id types.MessageID, msgType types.ReceiptType) {
- clientID := cli.Store.ID
- if len(id) == 0 || clientID == nil {
+ if len(id) == 0 {
return
}
err := cli.sendNode(ctx, waBinary.Node{
@@ -1033,7 +1036,7 @@ func (cli *Client) sendProtocolMessageReceipt(ctx context.Context, id types.Mess
Attrs: waBinary.Attrs{
"id": string(id),
"type": string(msgType),
- "to": types.NewJID(clientID.User, types.LegacyUserServer),
+ "to": cli.getOwnID().ToNonAD(),
},
Content: nil,
})
diff --git a/vendor/go.mau.fi/whatsmeow/notification.go b/vendor/go.mau.fi/whatsmeow/notification.go
index b12025f9..c9c752c2 100644
--- a/vendor/go.mau.fi/whatsmeow/notification.go
+++ b/vendor/go.mau.fi/whatsmeow/notification.go
@@ -34,7 +34,7 @@ func (cli *Client) handleEncryptNotification(ctx context.Context, node *waBinary
}
cli.Log.Infof("Got prekey count from server: %s", node.XMLString())
if otksLeft < MinPreKeyCount {
- cli.uploadPreKeys(ctx)
+ cli.uploadPreKeys(ctx, false)
}
} else if _, ok := node.GetOptionalChildByTag("identity"); ok {
cli.Log.Debugf("Got identity change for %s: %s, deleting all identities/sessions for that number", from, node.XMLString())
diff --git a/vendor/go.mau.fi/whatsmeow/prekeys.go b/vendor/go.mau.fi/whatsmeow/prekeys.go
index 00a36a38..77c011cd 100644
--- a/vendor/go.mau.fi/whatsmeow/prekeys.go
+++ b/vendor/go.mau.fi/whatsmeow/prekeys.go
@@ -47,7 +47,7 @@ func (cli *Client) getServerPreKeyCount(ctx context.Context) (int, error) {
return val, ag.Error()
}
-func (cli *Client) uploadPreKeys(ctx context.Context) {
+func (cli *Client) uploadPreKeys(ctx context.Context, initialUpload bool) {
cli.uploadPreKeysLock.Lock()
defer cli.uploadPreKeysLock.Unlock()
if cli.lastPreKeyUpload.Add(10 * time.Minute).After(time.Now()) {
@@ -59,7 +59,11 @@ func (cli *Client) uploadPreKeys(ctx context.Context) {
}
var registrationIDBytes [4]byte
binary.BigEndian.PutUint32(registrationIDBytes[:], cli.Store.RegistrationID)
- preKeys, err := cli.Store.PreKeys.GetOrGenPreKeys(ctx, WantedPreKeyCount)
+ wantedCount := WantedPreKeyCount
+ if initialUpload {
+ wantedCount = 812
+ }
+ preKeys, err := cli.Store.PreKeys.GetOrGenPreKeys(ctx, uint32(wantedCount))
if err != nil {
cli.Log.Errorf("Failed to get prekeys to upload: %v", err)
return
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.pb.go
index 86df4ef9..46b2e8d2 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.pb.go
@@ -64,6 +64,8 @@ const (
BotMetricsEntryPoint_MESSAGE_QUICK_ACTION_GROUP_CHAT BotMetricsEntryPoint = 34
BotMetricsEntryPoint_ATTACHMENT_TRAY_1_ON_1_CHAT BotMetricsEntryPoint = 35
BotMetricsEntryPoint_ATTACHMENT_TRAY_GROUP_CHAT BotMetricsEntryPoint = 36
+ BotMetricsEntryPoint_ASK_META_AI_MEDIA_VIEWER_1ON1 BotMetricsEntryPoint = 37
+ BotMetricsEntryPoint_ASK_META_AI_MEDIA_VIEWER_GROUP BotMetricsEntryPoint = 38
)
// Enum value maps for BotMetricsEntryPoint.
@@ -106,6 +108,8 @@ var (
34: "MESSAGE_QUICK_ACTION_GROUP_CHAT",
35: "ATTACHMENT_TRAY_1_ON_1_CHAT",
36: "ATTACHMENT_TRAY_GROUP_CHAT",
+ 37: "ASK_META_AI_MEDIA_VIEWER_1ON1",
+ 38: "ASK_META_AI_MEDIA_VIEWER_GROUP",
}
BotMetricsEntryPoint_value = map[string]int32{
"UNDEFINED_ENTRY_POINT": 0,
@@ -145,6 +149,8 @@ var (
"MESSAGE_QUICK_ACTION_GROUP_CHAT": 34,
"ATTACHMENT_TRAY_1_ON_1_CHAT": 35,
"ATTACHMENT_TRAY_GROUP_CHAT": 36,
+ "ASK_META_AI_MEDIA_VIEWER_1ON1": 37,
+ "ASK_META_AI_MEDIA_VIEWER_GROUP": 38,
}
)
@@ -457,6 +463,62 @@ func (AIRichResponseSubMessageType) EnumDescriptor() ([]byte, []int) {
return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{4}
}
+type SessionTransparencyType int32
+
+const (
+ SessionTransparencyType_UNKNOWN_TYPE SessionTransparencyType = 0
+ SessionTransparencyType_NY_AI_SAFETY_DISCLAIMER SessionTransparencyType = 1
+)
+
+// Enum value maps for SessionTransparencyType.
+var (
+ SessionTransparencyType_name = map[int32]string{
+ 0: "UNKNOWN_TYPE",
+ 1: "NY_AI_SAFETY_DISCLAIMER",
+ }
+ SessionTransparencyType_value = map[string]int32{
+ "UNKNOWN_TYPE": 0,
+ "NY_AI_SAFETY_DISCLAIMER": 1,
+ }
+)
+
+func (x SessionTransparencyType) Enum() *SessionTransparencyType {
+ p := new(SessionTransparencyType)
+ *p = x
+ return p
+}
+
+func (x SessionTransparencyType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SessionTransparencyType) Descriptor() protoreflect.EnumDescriptor {
+ return file_waAICommon_WAAICommon_proto_enumTypes[5].Descriptor()
+}
+
+func (SessionTransparencyType) Type() protoreflect.EnumType {
+ return &file_waAICommon_WAAICommon_proto_enumTypes[5]
+}
+
+func (x SessionTransparencyType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *SessionTransparencyType) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = SessionTransparencyType(num)
+ return nil
+}
+
+// Deprecated: Use SessionTransparencyType.Descriptor instead.
+func (SessionTransparencyType) EnumDescriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{5}
+}
+
type BotPluginMetadata_PluginType int32
const (
@@ -490,11 +552,11 @@ func (x BotPluginMetadata_PluginType) String() string {
}
func (BotPluginMetadata_PluginType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[5].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[6].Descriptor()
}
func (BotPluginMetadata_PluginType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[5]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[6]
}
func (x BotPluginMetadata_PluginType) Number() protoreflect.EnumNumber {
@@ -552,11 +614,11 @@ func (x BotPluginMetadata_SearchProvider) String() string {
}
func (BotPluginMetadata_SearchProvider) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[6].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[7].Descriptor()
}
func (BotPluginMetadata_SearchProvider) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[6]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[7]
}
func (x BotPluginMetadata_SearchProvider) Number() protoreflect.EnumNumber {
@@ -605,11 +667,11 @@ func (x BotLinkedAccount_BotLinkedAccountType) String() string {
}
func (BotLinkedAccount_BotLinkedAccountType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[7].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[8].Descriptor()
}
func (BotLinkedAccount_BotLinkedAccountType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[7]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[8]
}
func (x BotLinkedAccount_BotLinkedAccountType) Number() protoreflect.EnumNumber {
@@ -661,11 +723,11 @@ func (x BotSignatureVerificationUseCaseProof_BotSignatureUseCase) String() strin
}
func (BotSignatureVerificationUseCaseProof_BotSignatureUseCase) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[8].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[9].Descriptor()
}
func (BotSignatureVerificationUseCaseProof_BotSignatureUseCase) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[8]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[9]
}
func (x BotSignatureVerificationUseCaseProof_BotSignatureUseCase) Number() protoreflect.EnumNumber {
@@ -720,11 +782,11 @@ func (x BotPromotionMessageMetadata_BotPromotionType) String() string {
}
func (BotPromotionMessageMetadata_BotPromotionType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[9].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[10].Descriptor()
}
func (BotPromotionMessageMetadata_BotPromotionType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[9]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[10]
}
func (x BotPromotionMessageMetadata_BotPromotionType) Number() protoreflect.EnumNumber {
@@ -779,11 +841,11 @@ func (x BotMediaMetadata_OrientationType) String() string {
}
func (BotMediaMetadata_OrientationType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[10].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[11].Descriptor()
}
func (BotMediaMetadata_OrientationType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[10]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[11]
}
func (x BotMediaMetadata_OrientationType) Number() protoreflect.EnumNumber {
@@ -844,11 +906,11 @@ func (x BotReminderMetadata_ReminderFrequency) String() string {
}
func (BotReminderMetadata_ReminderFrequency) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[11].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[12].Descriptor()
}
func (BotReminderMetadata_ReminderFrequency) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[11]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[12]
}
func (x BotReminderMetadata_ReminderFrequency) Number() protoreflect.EnumNumber {
@@ -906,11 +968,11 @@ func (x BotReminderMetadata_ReminderAction) String() string {
}
func (BotReminderMetadata_ReminderAction) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[12].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[13].Descriptor()
}
func (BotReminderMetadata_ReminderAction) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[12]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[13]
}
func (x BotReminderMetadata_ReminderAction) Number() protoreflect.EnumNumber {
@@ -965,11 +1027,11 @@ func (x BotModelMetadata_PremiumModelStatus) String() string {
}
func (BotModelMetadata_PremiumModelStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[13].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[14].Descriptor()
}
func (BotModelMetadata_PremiumModelStatus) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[13]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[14]
}
func (x BotModelMetadata_PremiumModelStatus) Number() protoreflect.EnumNumber {
@@ -1024,11 +1086,11 @@ func (x BotModelMetadata_ModelType) String() string {
}
func (BotModelMetadata_ModelType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[14].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[15].Descriptor()
}
func (BotModelMetadata_ModelType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[14]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[15]
}
func (x BotModelMetadata_ModelType) Number() protoreflect.EnumNumber {
@@ -1086,11 +1148,11 @@ func (x BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotSearchSourceProv
}
func (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotSearchSourceProvider) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[15].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[16].Descriptor()
}
func (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotSearchSourceProvider) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[15]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[16]
}
func (x BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotSearchSourceProvider) Number() protoreflect.EnumNumber {
@@ -1148,11 +1210,11 @@ func (x BotProgressIndicatorMetadata_BotPlanningStepMetadata_PlanningStepStatus)
}
func (BotProgressIndicatorMetadata_BotPlanningStepMetadata_PlanningStepStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[16].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[17].Descriptor()
}
func (BotProgressIndicatorMetadata_BotPlanningStepMetadata_PlanningStepStatus) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[16]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[17]
}
func (x BotProgressIndicatorMetadata_BotPlanningStepMetadata_PlanningStepStatus) Number() protoreflect.EnumNumber {
@@ -1210,11 +1272,11 @@ func (x BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSo
}
func (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata_BotPlanningSearchSourceProvider) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[17].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[18].Descriptor()
}
func (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata_BotPlanningSearchSourceProvider) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[17]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[18]
}
func (x BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata_BotPlanningSearchSourceProvider) Number() protoreflect.EnumNumber {
@@ -1285,6 +1347,10 @@ const (
BotCapabilityMetadata_RICH_RESPONSE_UR_INLINE_REELS_ENABLED BotCapabilityMetadata_BotCapabilityType = 43
BotCapabilityMetadata_RICH_RESPONSE_UR_MEDIA_GRID_ENABLED BotCapabilityMetadata_BotCapabilityType = 44
BotCapabilityMetadata_RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER BotCapabilityMetadata_BotCapabilityType = 45
+ BotCapabilityMetadata_RICH_RESPONSE_IN_APP_SURVEY BotCapabilityMetadata_BotCapabilityType = 46
+ BotCapabilityMetadata_AI_RESPONSE_MODEL_BRANDING BotCapabilityMetadata_BotCapabilityType = 47
+ BotCapabilityMetadata_SESSION_TRANSPARENCY_SYSTEM_MESSAGE BotCapabilityMetadata_BotCapabilityType = 48
+ BotCapabilityMetadata_RICH_RESPONSE_UR_REASONING BotCapabilityMetadata_BotCapabilityType = 49
)
// Enum value maps for BotCapabilityMetadata_BotCapabilityType.
@@ -1336,6 +1402,10 @@ var (
43: "RICH_RESPONSE_UR_INLINE_REELS_ENABLED",
44: "RICH_RESPONSE_UR_MEDIA_GRID_ENABLED",
45: "RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER",
+ 46: "RICH_RESPONSE_IN_APP_SURVEY",
+ 47: "AI_RESPONSE_MODEL_BRANDING",
+ 48: "SESSION_TRANSPARENCY_SYSTEM_MESSAGE",
+ 49: "RICH_RESPONSE_UR_REASONING",
}
BotCapabilityMetadata_BotCapabilityType_value = map[string]int32{
"UNKNOWN": 0,
@@ -1384,6 +1454,10 @@ var (
"RICH_RESPONSE_UR_INLINE_REELS_ENABLED": 43,
"RICH_RESPONSE_UR_MEDIA_GRID_ENABLED": 44,
"RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER": 45,
+ "RICH_RESPONSE_IN_APP_SURVEY": 46,
+ "AI_RESPONSE_MODEL_BRANDING": 47,
+ "SESSION_TRANSPARENCY_SYSTEM_MESSAGE": 48,
+ "RICH_RESPONSE_UR_REASONING": 49,
}
)
@@ -1398,11 +1472,11 @@ func (x BotCapabilityMetadata_BotCapabilityType) String() string {
}
func (BotCapabilityMetadata_BotCapabilityType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[18].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[19].Descriptor()
}
func (BotCapabilityMetadata_BotCapabilityType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[18]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[19]
}
func (x BotCapabilityMetadata_BotCapabilityType) Number() protoreflect.EnumNumber {
@@ -1454,11 +1528,11 @@ func (x BotModeSelectionMetadata_BotUserSelectionMode) String() string {
}
func (BotModeSelectionMetadata_BotUserSelectionMode) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[19].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[20].Descriptor()
}
func (BotModeSelectionMetadata_BotUserSelectionMode) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[19]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[20]
}
func (x BotModeSelectionMetadata_BotUserSelectionMode) Number() protoreflect.EnumNumber {
@@ -1510,11 +1584,11 @@ func (x BotQuotaMetadata_BotFeatureQuotaMetadata_BotFeatureType) String() string
}
func (BotQuotaMetadata_BotFeatureQuotaMetadata_BotFeatureType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[20].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[21].Descriptor()
}
func (BotQuotaMetadata_BotFeatureQuotaMetadata_BotFeatureType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[20]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[21]
}
func (x BotQuotaMetadata_BotFeatureQuotaMetadata_BotFeatureType) Number() protoreflect.EnumNumber {
@@ -1575,11 +1649,11 @@ func (x BotImagineMetadata_ImagineType) String() string {
}
func (BotImagineMetadata_ImagineType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[21].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[22].Descriptor()
}
func (BotImagineMetadata_ImagineType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[21]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[22]
}
func (x BotImagineMetadata_ImagineType) Number() protoreflect.EnumNumber {
@@ -1631,11 +1705,11 @@ func (x BotAgeCollectionMetadata_AgeCollectionType) String() string {
}
func (BotAgeCollectionMetadata_AgeCollectionType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[22].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[23].Descriptor()
}
func (BotAgeCollectionMetadata_AgeCollectionType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[22]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[23]
}
func (x BotAgeCollectionMetadata_AgeCollectionType) Number() protoreflect.EnumNumber {
@@ -1696,11 +1770,11 @@ func (x BotSourcesMetadata_BotSourceItem_SourceProvider) String() string {
}
func (BotSourcesMetadata_BotSourceItem_SourceProvider) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[23].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[24].Descriptor()
}
func (BotSourcesMetadata_BotSourceItem_SourceProvider) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[23]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[24]
}
func (x BotSourcesMetadata_BotSourceItem_SourceProvider) Number() protoreflect.EnumNumber {
@@ -1749,11 +1823,11 @@ func (x BotMessageOrigin_BotMessageOriginType) String() string {
}
func (BotMessageOrigin_BotMessageOriginType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[24].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[25].Descriptor()
}
func (BotMessageOrigin_BotMessageOriginType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[24]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[25]
}
func (x BotMessageOrigin_BotMessageOriginType) Number() protoreflect.EnumNumber {
@@ -1808,11 +1882,11 @@ func (x AIThreadInfo_AIThreadClientInfo_AIThreadType) String() string {
}
func (AIThreadInfo_AIThreadClientInfo_AIThreadType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[25].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[26].Descriptor()
}
func (AIThreadInfo_AIThreadClientInfo_AIThreadType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[25]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[26]
}
func (x AIThreadInfo_AIThreadClientInfo_AIThreadType) Number() protoreflect.EnumNumber {
@@ -1864,11 +1938,11 @@ func (x BotFeedbackMessage_ReportKind) String() string {
}
func (BotFeedbackMessage_ReportKind) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[26].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[27].Descriptor()
}
func (BotFeedbackMessage_ReportKind) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[26]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[27]
}
func (x BotFeedbackMessage_ReportKind) Number() protoreflect.EnumNumber {
@@ -1917,11 +1991,11 @@ func (x BotFeedbackMessage_BotFeedbackKindMultiplePositive) String() string {
}
func (BotFeedbackMessage_BotFeedbackKindMultiplePositive) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[27].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[28].Descriptor()
}
func (BotFeedbackMessage_BotFeedbackKindMultiplePositive) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[27]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[28]
}
func (x BotFeedbackMessage_BotFeedbackKindMultiplePositive) Number() protoreflect.EnumNumber {
@@ -1994,11 +2068,11 @@ func (x BotFeedbackMessage_BotFeedbackKindMultipleNegative) String() string {
}
func (BotFeedbackMessage_BotFeedbackKindMultipleNegative) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[28].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[29].Descriptor()
}
func (BotFeedbackMessage_BotFeedbackKindMultipleNegative) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[28]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[29]
}
func (x BotFeedbackMessage_BotFeedbackKindMultipleNegative) Number() protoreflect.EnumNumber {
@@ -2089,11 +2163,11 @@ func (x BotFeedbackMessage_BotFeedbackKind) String() string {
}
func (BotFeedbackMessage_BotFeedbackKind) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[29].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[30].Descriptor()
}
func (BotFeedbackMessage_BotFeedbackKind) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[29]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[30]
}
func (x BotFeedbackMessage_BotFeedbackKind) Number() protoreflect.EnumNumber {
@@ -2148,11 +2222,11 @@ func (x AIRichResponseInlineImageMetadata_AIRichResponseImageAlignment) String()
}
func (AIRichResponseInlineImageMetadata_AIRichResponseImageAlignment) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[30].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[31].Descriptor()
}
func (AIRichResponseInlineImageMetadata_AIRichResponseImageAlignment) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[30]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[31]
}
func (x AIRichResponseInlineImageMetadata_AIRichResponseImageAlignment) Number() protoreflect.EnumNumber {
@@ -2216,11 +2290,11 @@ func (x AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType) String() str
}
func (AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[31].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[32].Descriptor()
}
func (AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[31]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[32]
}
func (x AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType) Number() protoreflect.EnumNumber {
@@ -2275,11 +2349,11 @@ func (x AIRichResponseDynamicMetadata_AIRichResponseDynamicMetadataType) String(
}
func (AIRichResponseDynamicMetadata_AIRichResponseDynamicMetadataType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[32].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[33].Descriptor()
}
func (AIRichResponseDynamicMetadata_AIRichResponseDynamicMetadataType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[32]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[33]
}
func (x AIRichResponseDynamicMetadata_AIRichResponseDynamicMetadataType) Number() protoreflect.EnumNumber {
@@ -2331,11 +2405,11 @@ func (x AIRichResponseContentItemsMetadata_ContentType) String() string {
}
func (AIRichResponseContentItemsMetadata_ContentType) Descriptor() protoreflect.EnumDescriptor {
- return file_waAICommon_WAAICommon_proto_enumTypes[33].Descriptor()
+ return file_waAICommon_WAAICommon_proto_enumTypes[34].Descriptor()
}
func (AIRichResponseContentItemsMetadata_ContentType) Type() protoreflect.EnumType {
- return &file_waAICommon_WAAICommon_proto_enumTypes[33]
+ return &file_waAICommon_WAAICommon_proto_enumTypes[34]
}
func (x AIRichResponseContentItemsMetadata_ContentType) Number() protoreflect.EnumNumber {
@@ -2357,6 +2431,124 @@ func (AIRichResponseContentItemsMetadata_ContentType) EnumDescriptor() ([]byte,
return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{20, 0}
}
+type BotDocumentMessageMetadata_DocumentPluginType int32
+
+const (
+ BotDocumentMessageMetadata_TEXT_EXTRACTION BotDocumentMessageMetadata_DocumentPluginType = 0
+ BotDocumentMessageMetadata_OCR_AND_IMAGES BotDocumentMessageMetadata_DocumentPluginType = 1
+)
+
+// Enum value maps for BotDocumentMessageMetadata_DocumentPluginType.
+var (
+ BotDocumentMessageMetadata_DocumentPluginType_name = map[int32]string{
+ 0: "TEXT_EXTRACTION",
+ 1: "OCR_AND_IMAGES",
+ }
+ BotDocumentMessageMetadata_DocumentPluginType_value = map[string]int32{
+ "TEXT_EXTRACTION": 0,
+ "OCR_AND_IMAGES": 1,
+ }
+)
+
+func (x BotDocumentMessageMetadata_DocumentPluginType) Enum() *BotDocumentMessageMetadata_DocumentPluginType {
+ p := new(BotDocumentMessageMetadata_DocumentPluginType)
+ *p = x
+ return p
+}
+
+func (x BotDocumentMessageMetadata_DocumentPluginType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (BotDocumentMessageMetadata_DocumentPluginType) Descriptor() protoreflect.EnumDescriptor {
+ return file_waAICommon_WAAICommon_proto_enumTypes[35].Descriptor()
+}
+
+func (BotDocumentMessageMetadata_DocumentPluginType) Type() protoreflect.EnumType {
+ return &file_waAICommon_WAAICommon_proto_enumTypes[35]
+}
+
+func (x BotDocumentMessageMetadata_DocumentPluginType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *BotDocumentMessageMetadata_DocumentPluginType) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = BotDocumentMessageMetadata_DocumentPluginType(num)
+ return nil
+}
+
+// Deprecated: Use BotDocumentMessageMetadata_DocumentPluginType.Descriptor instead.
+func (BotDocumentMessageMetadata_DocumentPluginType) EnumDescriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{21, 0}
+}
+
+type AIHomeState_AIHomeOption_AIHomeActionType int32
+
+const (
+ AIHomeState_AIHomeOption_PROMPT AIHomeState_AIHomeOption_AIHomeActionType = 0
+ AIHomeState_AIHomeOption_CREATE_IMAGE AIHomeState_AIHomeOption_AIHomeActionType = 1
+ AIHomeState_AIHomeOption_ANIMATE_PHOTO AIHomeState_AIHomeOption_AIHomeActionType = 2
+ AIHomeState_AIHomeOption_ANALYZE_FILE AIHomeState_AIHomeOption_AIHomeActionType = 3
+)
+
+// Enum value maps for AIHomeState_AIHomeOption_AIHomeActionType.
+var (
+ AIHomeState_AIHomeOption_AIHomeActionType_name = map[int32]string{
+ 0: "PROMPT",
+ 1: "CREATE_IMAGE",
+ 2: "ANIMATE_PHOTO",
+ 3: "ANALYZE_FILE",
+ }
+ AIHomeState_AIHomeOption_AIHomeActionType_value = map[string]int32{
+ "PROMPT": 0,
+ "CREATE_IMAGE": 1,
+ "ANIMATE_PHOTO": 2,
+ "ANALYZE_FILE": 3,
+ }
+)
+
+func (x AIHomeState_AIHomeOption_AIHomeActionType) Enum() *AIHomeState_AIHomeOption_AIHomeActionType {
+ p := new(AIHomeState_AIHomeOption_AIHomeActionType)
+ *p = x
+ return p
+}
+
+func (x AIHomeState_AIHomeOption_AIHomeActionType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AIHomeState_AIHomeOption_AIHomeActionType) Descriptor() protoreflect.EnumDescriptor {
+ return file_waAICommon_WAAICommon_proto_enumTypes[36].Descriptor()
+}
+
+func (AIHomeState_AIHomeOption_AIHomeActionType) Type() protoreflect.EnumType {
+ return &file_waAICommon_WAAICommon_proto_enumTypes[36]
+}
+
+func (x AIHomeState_AIHomeOption_AIHomeActionType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *AIHomeState_AIHomeOption_AIHomeActionType) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = AIHomeState_AIHomeOption_AIHomeActionType(num)
+ return nil
+}
+
+// Deprecated: Use AIHomeState_AIHomeOption_AIHomeActionType.Descriptor instead.
+func (AIHomeState_AIHomeOption_AIHomeActionType) EnumDescriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{22, 0, 0}
+}
+
type BotPluginMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
Provider *BotPluginMetadata_SearchProvider `protobuf:"varint,1,opt,name=provider,enum=WAAICommon.BotPluginMetadata_SearchProvider" json:"provider,omitempty"`
@@ -2825,6 +3017,7 @@ type BotModelMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
ModelType *BotModelMetadata_ModelType `protobuf:"varint,1,opt,name=modelType,enum=WAAICommon.BotModelMetadata_ModelType" json:"modelType,omitempty"`
PremiumModelStatus *BotModelMetadata_PremiumModelStatus `protobuf:"varint,2,opt,name=premiumModelStatus,enum=WAAICommon.BotModelMetadata_PremiumModelStatus" json:"premiumModelStatus,omitempty"`
+ ModelNameOverride *string `protobuf:"bytes,3,opt,name=modelNameOverride" json:"modelNameOverride,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -2873,6 +3066,13 @@ func (x *BotModelMetadata) GetPremiumModelStatus() BotModelMetadata_PremiumModel
return BotModelMetadata_UNKNOWN_STATUS
}
+func (x *BotModelMetadata) GetModelNameOverride() string {
+ if x != nil && x.ModelNameOverride != nil {
+ return *x.ModelNameOverride
+ }
+ return ""
+}
+
type BotProgressIndicatorMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
ProgressDescription *string `protobuf:"bytes,1,opt,name=progressDescription" json:"progressDescription,omitempty"`
@@ -3633,6 +3833,110 @@ func (x *AIRichResponseContentItemsMetadata) GetContentType() AIRichResponseCont
return AIRichResponseContentItemsMetadata_DEFAULT
}
+type BotDocumentMessageMetadata struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ PluginType *BotDocumentMessageMetadata_DocumentPluginType `protobuf:"varint,1,opt,name=pluginType,enum=WAAICommon.BotDocumentMessageMetadata_DocumentPluginType" json:"pluginType,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotDocumentMessageMetadata) Reset() {
+ *x = BotDocumentMessageMetadata{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotDocumentMessageMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotDocumentMessageMetadata) ProtoMessage() {}
+
+func (x *BotDocumentMessageMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[21]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotDocumentMessageMetadata.ProtoReflect.Descriptor instead.
+func (*BotDocumentMessageMetadata) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *BotDocumentMessageMetadata) GetPluginType() BotDocumentMessageMetadata_DocumentPluginType {
+ if x != nil && x.PluginType != nil {
+ return *x.PluginType
+ }
+ return BotDocumentMessageMetadata_TEXT_EXTRACTION
+}
+
+type AIHomeState struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ LastFetchTime *int64 `protobuf:"varint,1,opt,name=lastFetchTime" json:"lastFetchTime,omitempty"`
+ CapabilityOptions []*AIHomeState_AIHomeOption `protobuf:"bytes,2,rep,name=capabilityOptions" json:"capabilityOptions,omitempty"`
+ ConversationOptions []*AIHomeState_AIHomeOption `protobuf:"bytes,3,rep,name=conversationOptions" json:"conversationOptions,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AIHomeState) Reset() {
+ *x = AIHomeState{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AIHomeState) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AIHomeState) ProtoMessage() {}
+
+func (x *AIHomeState) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[22]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AIHomeState.ProtoReflect.Descriptor instead.
+func (*AIHomeState) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *AIHomeState) GetLastFetchTime() int64 {
+ if x != nil && x.LastFetchTime != nil {
+ return *x.LastFetchTime
+ }
+ return 0
+}
+
+func (x *AIHomeState) GetCapabilityOptions() []*AIHomeState_AIHomeOption {
+ if x != nil {
+ return x.CapabilityOptions
+ }
+ return nil
+}
+
+func (x *AIHomeState) GetConversationOptions() []*AIHomeState_AIHomeOption {
+ if x != nil {
+ return x.ConversationOptions
+ }
+ return nil
+}
+
type BotAvatarMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
Sentiment *uint32 `protobuf:"varint,1,opt,name=sentiment" json:"sentiment,omitempty"`
@@ -3646,7 +3950,7 @@ type BotAvatarMetadata struct {
func (x *BotAvatarMetadata) Reset() {
*x = BotAvatarMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[21]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3658,7 +3962,7 @@ func (x *BotAvatarMetadata) String() string {
func (*BotAvatarMetadata) ProtoMessage() {}
func (x *BotAvatarMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[21]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[23]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3671,7 +3975,7 @@ func (x *BotAvatarMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotAvatarMetadata.ProtoReflect.Descriptor instead.
func (*BotAvatarMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{21}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{23}
}
func (x *BotAvatarMetadata) GetSentiment() uint32 {
@@ -3721,7 +4025,7 @@ type BotSuggestedPromptMetadata struct {
func (x *BotSuggestedPromptMetadata) Reset() {
*x = BotSuggestedPromptMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[22]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3733,7 +4037,7 @@ func (x *BotSuggestedPromptMetadata) String() string {
func (*BotSuggestedPromptMetadata) ProtoMessage() {}
func (x *BotSuggestedPromptMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[22]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[24]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3746,7 +4050,7 @@ func (x *BotSuggestedPromptMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotSuggestedPromptMetadata.ProtoReflect.Descriptor instead.
func (*BotSuggestedPromptMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{22}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{24}
}
func (x *BotSuggestedPromptMetadata) GetSuggestedPrompts() []string {
@@ -3786,7 +4090,7 @@ type BotPromptSuggestions struct {
func (x *BotPromptSuggestions) Reset() {
*x = BotPromptSuggestions{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[23]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3798,7 +4102,7 @@ func (x *BotPromptSuggestions) String() string {
func (*BotPromptSuggestions) ProtoMessage() {}
func (x *BotPromptSuggestions) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[23]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[25]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3811,7 +4115,7 @@ func (x *BotPromptSuggestions) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotPromptSuggestions.ProtoReflect.Descriptor instead.
func (*BotPromptSuggestions) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{23}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{25}
}
func (x *BotPromptSuggestions) GetSuggestions() []*BotPromptSuggestion {
@@ -3831,7 +4135,7 @@ type BotPromptSuggestion struct {
func (x *BotPromptSuggestion) Reset() {
*x = BotPromptSuggestion{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[24]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3843,7 +4147,7 @@ func (x *BotPromptSuggestion) String() string {
func (*BotPromptSuggestion) ProtoMessage() {}
func (x *BotPromptSuggestion) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[24]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[26]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3856,7 +4160,7 @@ func (x *BotPromptSuggestion) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotPromptSuggestion.ProtoReflect.Descriptor instead.
func (*BotPromptSuggestion) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{24}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{26}
}
func (x *BotPromptSuggestion) GetPrompt() string {
@@ -3884,7 +4188,7 @@ type BotLinkedAccountsMetadata struct {
func (x *BotLinkedAccountsMetadata) Reset() {
*x = BotLinkedAccountsMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[25]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3896,7 +4200,7 @@ func (x *BotLinkedAccountsMetadata) String() string {
func (*BotLinkedAccountsMetadata) ProtoMessage() {}
func (x *BotLinkedAccountsMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[25]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[27]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3909,7 +4213,7 @@ func (x *BotLinkedAccountsMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotLinkedAccountsMetadata.ProtoReflect.Descriptor instead.
func (*BotLinkedAccountsMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{25}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{27}
}
func (x *BotLinkedAccountsMetadata) GetAccounts() []*BotLinkedAccount {
@@ -3944,7 +4248,7 @@ type BotMemoryMetadata struct {
func (x *BotMemoryMetadata) Reset() {
*x = BotMemoryMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[26]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3956,7 +4260,7 @@ func (x *BotMemoryMetadata) String() string {
func (*BotMemoryMetadata) ProtoMessage() {}
func (x *BotMemoryMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[26]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[28]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3969,7 +4273,7 @@ func (x *BotMemoryMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMemoryMetadata.ProtoReflect.Descriptor instead.
func (*BotMemoryMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{26}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{28}
}
func (x *BotMemoryMetadata) GetAddedFacts() []*BotMemoryFact {
@@ -4003,7 +4307,7 @@ type BotMemoryFact struct {
func (x *BotMemoryFact) Reset() {
*x = BotMemoryFact{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[27]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4015,7 +4319,7 @@ func (x *BotMemoryFact) String() string {
func (*BotMemoryFact) ProtoMessage() {}
func (x *BotMemoryFact) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[27]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[29]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4028,7 +4332,7 @@ func (x *BotMemoryFact) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMemoryFact.ProtoReflect.Descriptor instead.
func (*BotMemoryFact) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{27}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{29}
}
func (x *BotMemoryFact) GetFact() string {
@@ -4054,7 +4358,7 @@ type BotSignatureVerificationMetadata struct {
func (x *BotSignatureVerificationMetadata) Reset() {
*x = BotSignatureVerificationMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[28]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4066,7 +4370,7 @@ func (x *BotSignatureVerificationMetadata) String() string {
func (*BotSignatureVerificationMetadata) ProtoMessage() {}
func (x *BotSignatureVerificationMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[28]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[30]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4079,7 +4383,7 @@ func (x *BotSignatureVerificationMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotSignatureVerificationMetadata.ProtoReflect.Descriptor instead.
func (*BotSignatureVerificationMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{28}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{30}
}
func (x *BotSignatureVerificationMetadata) GetProofs() []*BotSignatureVerificationUseCaseProof {
@@ -4098,7 +4402,7 @@ type BotRenderingMetadata struct {
func (x *BotRenderingMetadata) Reset() {
*x = BotRenderingMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[29]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4110,7 +4414,7 @@ func (x *BotRenderingMetadata) String() string {
func (*BotRenderingMetadata) ProtoMessage() {}
func (x *BotRenderingMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[29]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[31]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4123,7 +4427,7 @@ func (x *BotRenderingMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotRenderingMetadata.ProtoReflect.Descriptor instead.
func (*BotRenderingMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{29}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{31}
}
func (x *BotRenderingMetadata) GetKeywords() []*BotRenderingMetadata_Keyword {
@@ -4144,7 +4448,7 @@ type BotMetricsMetadata struct {
func (x *BotMetricsMetadata) Reset() {
*x = BotMetricsMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[30]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4156,7 +4460,7 @@ func (x *BotMetricsMetadata) String() string {
func (*BotMetricsMetadata) ProtoMessage() {}
func (x *BotMetricsMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[30]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[32]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4169,7 +4473,7 @@ func (x *BotMetricsMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMetricsMetadata.ProtoReflect.Descriptor instead.
func (*BotMetricsMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{30}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{32}
}
func (x *BotMetricsMetadata) GetDestinationID() string {
@@ -4203,7 +4507,7 @@ type BotSessionMetadata struct {
func (x *BotSessionMetadata) Reset() {
*x = BotSessionMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[31]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4215,7 +4519,7 @@ func (x *BotSessionMetadata) String() string {
func (*BotSessionMetadata) ProtoMessage() {}
func (x *BotSessionMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[31]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[33]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4228,7 +4532,7 @@ func (x *BotSessionMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotSessionMetadata.ProtoReflect.Descriptor instead.
func (*BotSessionMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{31}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{33}
}
func (x *BotSessionMetadata) GetSessionID() string {
@@ -4254,7 +4558,7 @@ type BotMemuMetadata struct {
func (x *BotMemuMetadata) Reset() {
*x = BotMemuMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[32]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4266,7 +4570,7 @@ func (x *BotMemuMetadata) String() string {
func (*BotMemuMetadata) ProtoMessage() {}
func (x *BotMemuMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[32]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[34]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4279,7 +4583,7 @@ func (x *BotMemuMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMemuMetadata.ProtoReflect.Descriptor instead.
func (*BotMemuMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{32}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{34}
}
func (x *BotMemuMetadata) GetFaceImages() []*BotMediaMetadata {
@@ -4308,13 +4612,14 @@ type InThreadSurveyMetadata struct {
PrivacyStatementFull *string `protobuf:"bytes,15,opt,name=privacyStatementFull" json:"privacyStatementFull,omitempty"`
PrivacyStatementParts []*InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart `protobuf:"bytes,16,rep,name=privacyStatementParts" json:"privacyStatementParts,omitempty"`
FeedbackToastText *string `protobuf:"bytes,17,opt,name=feedbackToastText" json:"feedbackToastText,omitempty"`
+ StartQuestionIndex *int32 `protobuf:"varint,18,opt,name=startQuestionIndex" json:"startQuestionIndex,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *InThreadSurveyMetadata) Reset() {
*x = InThreadSurveyMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[33]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4326,7 +4631,7 @@ func (x *InThreadSurveyMetadata) String() string {
func (*InThreadSurveyMetadata) ProtoMessage() {}
func (x *InThreadSurveyMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[33]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[35]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4339,7 +4644,7 @@ func (x *InThreadSurveyMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use InThreadSurveyMetadata.ProtoReflect.Descriptor instead.
func (*InThreadSurveyMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{33}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35}
}
func (x *InThreadSurveyMetadata) GetTessaSessionID() string {
@@ -4461,6 +4766,13 @@ func (x *InThreadSurveyMetadata) GetFeedbackToastText() string {
return ""
}
+func (x *InThreadSurveyMetadata) GetStartQuestionIndex() int32 {
+ if x != nil && x.StartQuestionIndex != nil {
+ return *x.StartQuestionIndex
+ }
+ return 0
+}
+
type BotMessageOriginMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
Origins []*BotMessageOrigin `protobuf:"bytes,1,rep,name=origins" json:"origins,omitempty"`
@@ -4470,7 +4782,7 @@ type BotMessageOriginMetadata struct {
func (x *BotMessageOriginMetadata) Reset() {
*x = BotMessageOriginMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[34]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4482,7 +4794,7 @@ func (x *BotMessageOriginMetadata) String() string {
func (*BotMessageOriginMetadata) ProtoMessage() {}
func (x *BotMessageOriginMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[34]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[36]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4495,7 +4807,7 @@ func (x *BotMessageOriginMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMessageOriginMetadata.ProtoReflect.Descriptor instead.
func (*BotMessageOriginMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{34}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{36}
}
func (x *BotMessageOriginMetadata) GetOrigins() []*BotMessageOrigin {
@@ -4515,7 +4827,7 @@ type BotUnifiedResponseMutation struct {
func (x *BotUnifiedResponseMutation) Reset() {
*x = BotUnifiedResponseMutation{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[35]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4527,7 +4839,7 @@ func (x *BotUnifiedResponseMutation) String() string {
func (*BotUnifiedResponseMutation) ProtoMessage() {}
func (x *BotUnifiedResponseMutation) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[35]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[37]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4540,7 +4852,7 @@ func (x *BotUnifiedResponseMutation) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotUnifiedResponseMutation.ProtoReflect.Descriptor instead.
func (*BotUnifiedResponseMutation) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{37}
}
func (x *BotUnifiedResponseMutation) GetSbsMetadata() *BotUnifiedResponseMutation_SideBySideMetadata {
@@ -4590,6 +4902,9 @@ type BotMetadata struct {
BotMessageOriginMetadata *BotMessageOriginMetadata `protobuf:"bytes,29,opt,name=botMessageOriginMetadata" json:"botMessageOriginMetadata,omitempty"`
InThreadSurveyMetadata *InThreadSurveyMetadata `protobuf:"bytes,30,opt,name=inThreadSurveyMetadata" json:"inThreadSurveyMetadata,omitempty"`
BotThreadInfo *AIThreadInfo `protobuf:"bytes,31,opt,name=botThreadInfo" json:"botThreadInfo,omitempty"`
+ RegenerateMetadata *AIRegenerateMetadata `protobuf:"bytes,32,opt,name=regenerateMetadata" json:"regenerateMetadata,omitempty"`
+ SessionTransparencyMetadata *SessionTransparencyMetadata `protobuf:"bytes,33,opt,name=sessionTransparencyMetadata" json:"sessionTransparencyMetadata,omitempty"`
+ BotDocumentMessageMetadata *BotDocumentMessageMetadata `protobuf:"bytes,34,opt,name=botDocumentMessageMetadata" json:"botDocumentMessageMetadata,omitempty"`
InternalMetadata []byte `protobuf:"bytes,999,opt,name=internalMetadata" json:"internalMetadata,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
@@ -4597,7 +4912,7 @@ type BotMetadata struct {
func (x *BotMetadata) Reset() {
*x = BotMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[36]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4609,7 +4924,7 @@ func (x *BotMetadata) String() string {
func (*BotMetadata) ProtoMessage() {}
func (x *BotMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[36]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[38]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4622,7 +4937,7 @@ func (x *BotMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMetadata.ProtoReflect.Descriptor instead.
func (*BotMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{36}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{38}
}
func (x *BotMetadata) GetAvatarMetadata() *BotAvatarMetadata {
@@ -4842,6 +5157,27 @@ func (x *BotMetadata) GetBotThreadInfo() *AIThreadInfo {
return nil
}
+func (x *BotMetadata) GetRegenerateMetadata() *AIRegenerateMetadata {
+ if x != nil {
+ return x.RegenerateMetadata
+ }
+ return nil
+}
+
+func (x *BotMetadata) GetSessionTransparencyMetadata() *SessionTransparencyMetadata {
+ if x != nil {
+ return x.SessionTransparencyMetadata
+ }
+ return nil
+}
+
+func (x *BotMetadata) GetBotDocumentMessageMetadata() *BotDocumentMessageMetadata {
+ if x != nil {
+ return x.BotDocumentMessageMetadata
+ }
+ return nil
+}
+
func (x *BotMetadata) GetInternalMetadata() []byte {
if x != nil {
return x.InternalMetadata
@@ -4860,7 +5196,7 @@ type ForwardedAIBotMessageInfo struct {
func (x *ForwardedAIBotMessageInfo) Reset() {
*x = ForwardedAIBotMessageInfo{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[37]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4872,7 +5208,7 @@ func (x *ForwardedAIBotMessageInfo) String() string {
func (*ForwardedAIBotMessageInfo) ProtoMessage() {}
func (x *ForwardedAIBotMessageInfo) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[37]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[39]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4885,7 +5221,7 @@ func (x *ForwardedAIBotMessageInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use ForwardedAIBotMessageInfo.ProtoReflect.Descriptor instead.
func (*ForwardedAIBotMessageInfo) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{37}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{39}
}
func (x *ForwardedAIBotMessageInfo) GetBotName() string {
@@ -4919,7 +5255,7 @@ type BotMessageSharingInfo struct {
func (x *BotMessageSharingInfo) Reset() {
*x = BotMessageSharingInfo{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[38]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4931,7 +5267,7 @@ func (x *BotMessageSharingInfo) String() string {
func (*BotMessageSharingInfo) ProtoMessage() {}
func (x *BotMessageSharingInfo) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[38]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[40]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4944,7 +5280,7 @@ func (x *BotMessageSharingInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotMessageSharingInfo.ProtoReflect.Descriptor instead.
func (*BotMessageSharingInfo) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{38}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{40}
}
func (x *BotMessageSharingInfo) GetBotEntryPointOrigin() BotMetricsEntryPoint {
@@ -4972,7 +5308,7 @@ type AIRichResponseImageURL struct {
func (x *AIRichResponseImageURL) Reset() {
*x = AIRichResponseImageURL{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[39]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4984,7 +5320,7 @@ func (x *AIRichResponseImageURL) String() string {
func (*AIRichResponseImageURL) ProtoMessage() {}
func (x *AIRichResponseImageURL) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[39]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[41]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4997,7 +5333,7 @@ func (x *AIRichResponseImageURL) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseImageURL.ProtoReflect.Descriptor instead.
func (*AIRichResponseImageURL) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{39}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{41}
}
func (x *AIRichResponseImageURL) GetImagePreviewURL() string {
@@ -5031,7 +5367,7 @@ type AIRichResponseGridImageMetadata struct {
func (x *AIRichResponseGridImageMetadata) Reset() {
*x = AIRichResponseGridImageMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[40]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5043,7 +5379,7 @@ func (x *AIRichResponseGridImageMetadata) String() string {
func (*AIRichResponseGridImageMetadata) ProtoMessage() {}
func (x *AIRichResponseGridImageMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[40]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[42]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5056,7 +5392,7 @@ func (x *AIRichResponseGridImageMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseGridImageMetadata.ProtoReflect.Descriptor instead.
func (*AIRichResponseGridImageMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{40}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{42}
}
func (x *AIRichResponseGridImageMetadata) GetGridImageURL() *AIRichResponseImageURL {
@@ -5083,7 +5419,7 @@ type AIRichResponseTableMetadata struct {
func (x *AIRichResponseTableMetadata) Reset() {
*x = AIRichResponseTableMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[41]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5095,7 +5431,7 @@ func (x *AIRichResponseTableMetadata) String() string {
func (*AIRichResponseTableMetadata) ProtoMessage() {}
func (x *AIRichResponseTableMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[41]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[43]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5108,7 +5444,7 @@ func (x *AIRichResponseTableMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseTableMetadata.ProtoReflect.Descriptor instead.
func (*AIRichResponseTableMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{41}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{43}
}
func (x *AIRichResponseTableMetadata) GetRows() []*AIRichResponseTableMetadata_AIRichResponseTableRow {
@@ -5134,7 +5470,7 @@ type AIRichResponseUnifiedResponse struct {
func (x *AIRichResponseUnifiedResponse) Reset() {
*x = AIRichResponseUnifiedResponse{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[42]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5146,7 +5482,7 @@ func (x *AIRichResponseUnifiedResponse) String() string {
func (*AIRichResponseUnifiedResponse) ProtoMessage() {}
func (x *AIRichResponseUnifiedResponse) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[42]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[44]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5159,7 +5495,7 @@ func (x *AIRichResponseUnifiedResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseUnifiedResponse.ProtoReflect.Descriptor instead.
func (*AIRichResponseUnifiedResponse) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{42}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{44}
}
func (x *AIRichResponseUnifiedResponse) GetData() []byte {
@@ -5179,7 +5515,7 @@ type AIRichResponseLatexMetadata struct {
func (x *AIRichResponseLatexMetadata) Reset() {
*x = AIRichResponseLatexMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[43]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5191,7 +5527,7 @@ func (x *AIRichResponseLatexMetadata) String() string {
func (*AIRichResponseLatexMetadata) ProtoMessage() {}
func (x *AIRichResponseLatexMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[43]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[45]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5204,7 +5540,7 @@ func (x *AIRichResponseLatexMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseLatexMetadata.ProtoReflect.Descriptor instead.
func (*AIRichResponseLatexMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{43}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{45}
}
func (x *AIRichResponseLatexMetadata) GetText() string {
@@ -5235,7 +5571,7 @@ type AIRichResponseMapMetadata struct {
func (x *AIRichResponseMapMetadata) Reset() {
*x = AIRichResponseMapMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[44]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5247,7 +5583,7 @@ func (x *AIRichResponseMapMetadata) String() string {
func (*AIRichResponseMapMetadata) ProtoMessage() {}
func (x *AIRichResponseMapMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[44]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[46]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5260,7 +5596,7 @@ func (x *AIRichResponseMapMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseMapMetadata.ProtoReflect.Descriptor instead.
func (*AIRichResponseMapMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{44}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{46}
}
func (x *AIRichResponseMapMetadata) GetCenterLatitude() float64 {
@@ -5323,7 +5659,7 @@ type AIRichResponseSubMessage struct {
func (x *AIRichResponseSubMessage) Reset() {
*x = AIRichResponseSubMessage{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[45]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5335,7 +5671,7 @@ func (x *AIRichResponseSubMessage) String() string {
func (*AIRichResponseSubMessage) ProtoMessage() {}
func (x *AIRichResponseSubMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[45]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[47]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5348,7 +5684,7 @@ func (x *AIRichResponseSubMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use AIRichResponseSubMessage.ProtoReflect.Descriptor instead.
func (*AIRichResponseSubMessage) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{45}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{47}
}
func (x *AIRichResponseSubMessage) GetMessageType() AIRichResponseSubMessageType {
@@ -5421,6 +5757,118 @@ func (x *AIRichResponseSubMessage) GetContentItemsMetadata() *AIRichResponseCont
return nil
}
+type AIRegenerateMetadata struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ MessageKey *waCommon.MessageKey `protobuf:"bytes,1,opt,name=messageKey" json:"messageKey,omitempty"`
+ ResponseTimestampMS *int64 `protobuf:"varint,2,opt,name=responseTimestampMS" json:"responseTimestampMS,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AIRegenerateMetadata) Reset() {
+ *x = AIRegenerateMetadata{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[48]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AIRegenerateMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AIRegenerateMetadata) ProtoMessage() {}
+
+func (x *AIRegenerateMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[48]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AIRegenerateMetadata.ProtoReflect.Descriptor instead.
+func (*AIRegenerateMetadata) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{48}
+}
+
+func (x *AIRegenerateMetadata) GetMessageKey() *waCommon.MessageKey {
+ if x != nil {
+ return x.MessageKey
+ }
+ return nil
+}
+
+func (x *AIRegenerateMetadata) GetResponseTimestampMS() int64 {
+ if x != nil && x.ResponseTimestampMS != nil {
+ return *x.ResponseTimestampMS
+ }
+ return 0
+}
+
+type SessionTransparencyMetadata struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ DisclaimerText *string `protobuf:"bytes,1,opt,name=disclaimerText" json:"disclaimerText,omitempty"`
+ HcaID *string `protobuf:"bytes,2,opt,name=hcaID" json:"hcaID,omitempty"`
+ SessionTransparencyType *SessionTransparencyType `protobuf:"varint,3,opt,name=sessionTransparencyType,enum=WAAICommon.SessionTransparencyType" json:"sessionTransparencyType,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *SessionTransparencyMetadata) Reset() {
+ *x = SessionTransparencyMetadata{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[49]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *SessionTransparencyMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SessionTransparencyMetadata) ProtoMessage() {}
+
+func (x *SessionTransparencyMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[49]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SessionTransparencyMetadata.ProtoReflect.Descriptor instead.
+func (*SessionTransparencyMetadata) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{49}
+}
+
+func (x *SessionTransparencyMetadata) GetDisclaimerText() string {
+ if x != nil && x.DisclaimerText != nil {
+ return *x.DisclaimerText
+ }
+ return ""
+}
+
+func (x *SessionTransparencyMetadata) GetHcaID() string {
+ if x != nil && x.HcaID != nil {
+ return *x.HcaID
+ }
+ return ""
+}
+
+func (x *SessionTransparencyMetadata) GetSessionTransparencyType() SessionTransparencyType {
+ if x != nil && x.SessionTransparencyType != nil {
+ return *x.SessionTransparencyType
+ }
+ return SessionTransparencyType_UNKNOWN_TYPE
+}
+
type BotProgressIndicatorMetadata_BotPlanningStepMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
StatusTitle *string `protobuf:"bytes,1,opt,name=statusTitle" json:"statusTitle,omitempty"`
@@ -5436,7 +5884,7 @@ type BotProgressIndicatorMetadata_BotPlanningStepMetadata struct {
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata) Reset() {
*x = BotProgressIndicatorMetadata_BotPlanningStepMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[46]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5448,7 +5896,7 @@ func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata) String() string {
func (*BotProgressIndicatorMetadata_BotPlanningStepMetadata) ProtoMessage() {}
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[46]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[50]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5524,7 +5972,7 @@ type BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourc
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata) Reset() {
*x = BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[47]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5537,7 +5985,7 @@ func (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSou
}
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[47]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[51]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5585,7 +6033,7 @@ type BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSection
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSectionMetadata) Reset() {
*x = BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSectionMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[48]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5598,7 +6046,7 @@ func (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSecti
}
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSectionMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[48]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[52]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5647,7 +6095,7 @@ type BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourc
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourceMetadata) Reset() {
*x = BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourceMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[49]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5660,7 +6108,7 @@ func (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSou
}
func (x *BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourceMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[49]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[53]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5715,7 +6163,7 @@ type BotQuotaMetadata_BotFeatureQuotaMetadata struct {
func (x *BotQuotaMetadata_BotFeatureQuotaMetadata) Reset() {
*x = BotQuotaMetadata_BotFeatureQuotaMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[50]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[54]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5727,7 +6175,7 @@ func (x *BotQuotaMetadata_BotFeatureQuotaMetadata) String() string {
func (*BotQuotaMetadata_BotFeatureQuotaMetadata) ProtoMessage() {}
func (x *BotQuotaMetadata_BotFeatureQuotaMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[50]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[54]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5779,7 +6227,7 @@ type BotSourcesMetadata_BotSourceItem struct {
func (x *BotSourcesMetadata_BotSourceItem) Reset() {
*x = BotSourcesMetadata_BotSourceItem{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[51]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5791,7 +6239,7 @@ func (x *BotSourcesMetadata_BotSourceItem) String() string {
func (*BotSourcesMetadata_BotSourceItem) ProtoMessage() {}
func (x *BotSourcesMetadata_BotSourceItem) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[51]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[55]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5865,7 +6313,7 @@ type AIThreadInfo_AIThreadClientInfo struct {
func (x *AIThreadInfo_AIThreadClientInfo) Reset() {
*x = AIThreadInfo_AIThreadClientInfo{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[52]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5877,7 +6325,7 @@ func (x *AIThreadInfo_AIThreadClientInfo) String() string {
func (*AIThreadInfo_AIThreadClientInfo) ProtoMessage() {}
func (x *AIThreadInfo_AIThreadClientInfo) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[52]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[56]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5909,7 +6357,7 @@ type AIThreadInfo_AIThreadServerInfo struct {
func (x *AIThreadInfo_AIThreadServerInfo) Reset() {
*x = AIThreadInfo_AIThreadServerInfo{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[53]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5921,7 +6369,7 @@ func (x *AIThreadInfo_AIThreadServerInfo) String() string {
func (*AIThreadInfo_AIThreadServerInfo) ProtoMessage() {}
func (x *AIThreadInfo_AIThreadServerInfo) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[53]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[57]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5945,22 +6393,23 @@ func (x *AIThreadInfo_AIThreadServerInfo) GetTitle() string {
}
type BotFeedbackMessage_SideBySideSurveyMetadata struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- SelectedRequestID *string `protobuf:"bytes,1,opt,name=selectedRequestID" json:"selectedRequestID,omitempty"`
- SurveyID *uint32 `protobuf:"varint,2,opt,name=surveyID" json:"surveyID,omitempty"`
- SimonSessionFbid *string `protobuf:"bytes,3,opt,name=simonSessionFbid" json:"simonSessionFbid,omitempty"`
- ResponseOtid *string `protobuf:"bytes,4,opt,name=responseOtid" json:"responseOtid,omitempty"`
- ResponseTimestampMSString *string `protobuf:"bytes,5,opt,name=responseTimestampMSString" json:"responseTimestampMSString,omitempty"`
- IsSelectedResponsePrimary *bool `protobuf:"varint,6,opt,name=isSelectedResponsePrimary" json:"isSelectedResponsePrimary,omitempty"`
- MessageIDToEdit *string `protobuf:"bytes,7,opt,name=messageIDToEdit" json:"messageIDToEdit,omitempty"`
- AnalyticsData *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData `protobuf:"bytes,8,opt,name=analyticsData" json:"analyticsData,omitempty"`
+ state protoimpl.MessageState `protogen:"open.v1"`
+ SelectedRequestID *string `protobuf:"bytes,1,opt,name=selectedRequestID" json:"selectedRequestID,omitempty"`
+ SurveyID *uint32 `protobuf:"varint,2,opt,name=surveyID" json:"surveyID,omitempty"`
+ SimonSessionFbid *string `protobuf:"bytes,3,opt,name=simonSessionFbid" json:"simonSessionFbid,omitempty"`
+ ResponseOtid *string `protobuf:"bytes,4,opt,name=responseOtid" json:"responseOtid,omitempty"`
+ ResponseTimestampMSString *string `protobuf:"bytes,5,opt,name=responseTimestampMSString" json:"responseTimestampMSString,omitempty"`
+ IsSelectedResponsePrimary *bool `protobuf:"varint,6,opt,name=isSelectedResponsePrimary" json:"isSelectedResponsePrimary,omitempty"`
+ MessageIDToEdit *string `protobuf:"bytes,7,opt,name=messageIDToEdit" json:"messageIDToEdit,omitempty"`
+ AnalyticsData *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData `protobuf:"bytes,8,opt,name=analyticsData" json:"analyticsData,omitempty"`
+ MetaAiAnalyticsData *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData `protobuf:"bytes,9,opt,name=metaAiAnalyticsData" json:"metaAiAnalyticsData,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *BotFeedbackMessage_SideBySideSurveyMetadata) Reset() {
*x = BotFeedbackMessage_SideBySideSurveyMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[54]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5972,7 +6421,7 @@ func (x *BotFeedbackMessage_SideBySideSurveyMetadata) String() string {
func (*BotFeedbackMessage_SideBySideSurveyMetadata) ProtoMessage() {}
func (x *BotFeedbackMessage_SideBySideSurveyMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[54]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[58]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6044,17 +6493,134 @@ func (x *BotFeedbackMessage_SideBySideSurveyMetadata) GetAnalyticsData() *BotFee
return nil
}
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata) GetMetaAiAnalyticsData() *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData {
+ if x != nil {
+ return x.MetaAiAnalyticsData
+ }
+ return nil
+}
+
+type BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ SurveyID *uint32 `protobuf:"varint,1,opt,name=surveyID" json:"surveyID,omitempty"`
+ PrimaryResponseID *string `protobuf:"bytes,2,opt,name=primaryResponseID" json:"primaryResponseID,omitempty"`
+ TestArmName *string `protobuf:"bytes,3,opt,name=testArmName" json:"testArmName,omitempty"`
+ TimestampMSString *string `protobuf:"bytes,4,opt,name=timestampMSString" json:"timestampMSString,omitempty"`
+ CtaImpressionEvent *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData `protobuf:"bytes,5,opt,name=ctaImpressionEvent" json:"ctaImpressionEvent,omitempty"`
+ CtaClickEvent *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData `protobuf:"bytes,6,opt,name=ctaClickEvent" json:"ctaClickEvent,omitempty"`
+ CardImpressionEvent *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData `protobuf:"bytes,7,opt,name=cardImpressionEvent" json:"cardImpressionEvent,omitempty"`
+ ResponseEvent *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData `protobuf:"bytes,8,opt,name=responseEvent" json:"responseEvent,omitempty"`
+ AbandonEvent *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData `protobuf:"bytes,9,opt,name=abandonEvent" json:"abandonEvent,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) Reset() {
+ *x = BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[59]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) ProtoMessage() {
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[59]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData.ProtoReflect.Descriptor instead.
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0}
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetSurveyID() uint32 {
+ if x != nil && x.SurveyID != nil {
+ return *x.SurveyID
+ }
+ return 0
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetPrimaryResponseID() string {
+ if x != nil && x.PrimaryResponseID != nil {
+ return *x.PrimaryResponseID
+ }
+ return ""
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetTestArmName() string {
+ if x != nil && x.TestArmName != nil {
+ return *x.TestArmName
+ }
+ return ""
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetTimestampMSString() string {
+ if x != nil && x.TimestampMSString != nil {
+ return *x.TimestampMSString
+ }
+ return ""
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetCtaImpressionEvent() *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData {
+ if x != nil {
+ return x.CtaImpressionEvent
+ }
+ return nil
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetCtaClickEvent() *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData {
+ if x != nil {
+ return x.CtaClickEvent
+ }
+ return nil
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetCardImpressionEvent() *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData {
+ if x != nil {
+ return x.CardImpressionEvent
+ }
+ return nil
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetResponseEvent() *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData {
+ if x != nil {
+ return x.ResponseEvent
+ }
+ return nil
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData) GetAbandonEvent() *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData {
+ if x != nil {
+ return x.AbandonEvent
+ }
+ return nil
+}
+
type BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData struct {
state protoimpl.MessageState `protogen:"open.v1"`
TessaEvent *string `protobuf:"bytes,1,opt,name=tessaEvent" json:"tessaEvent,omitempty"`
TessaSessionFbid *string `protobuf:"bytes,2,opt,name=tessaSessionFbid" json:"tessaSessionFbid,omitempty"`
+ SimonSessionFbid *string `protobuf:"bytes,3,opt,name=simonSessionFbid" json:"simonSessionFbid,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData) Reset() {
*x = BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[55]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6066,7 +6632,7 @@ func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsDa
func (*BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData) ProtoMessage() {}
func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[55]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[60]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6079,7 +6645,7 @@ func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsDa
// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData.ProtoReflect.Descriptor instead.
func (*BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 1}
}
func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData) GetTessaEvent() string {
@@ -6096,6 +6662,246 @@ func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsDa
return ""
}
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData) GetSimonSessionFbid() string {
+ if x != nil && x.SimonSessionFbid != nil {
+ return *x.SimonSessionFbid
+ }
+ return ""
+}
+
+type BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ AbandonDwellTimeMSString *string `protobuf:"bytes,1,opt,name=abandonDwellTimeMSString" json:"abandonDwellTimeMSString,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData) Reset() {
+ *x = BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[61]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData) ProtoMessage() {
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[61]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData.ProtoReflect.Descriptor instead.
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0, 0}
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData) GetAbandonDwellTimeMSString() string {
+ if x != nil && x.AbandonDwellTimeMSString != nil {
+ return *x.AbandonDwellTimeMSString
+ }
+ return ""
+}
+
+type BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ ResponseDwellTimeMSString *string `protobuf:"bytes,1,opt,name=responseDwellTimeMSString" json:"responseDwellTimeMSString,omitempty"`
+ SelectedResponseID *string `protobuf:"bytes,2,opt,name=selectedResponseID" json:"selectedResponseID,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) Reset() {
+ *x = BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[62]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) ProtoMessage() {
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[62]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData.ProtoReflect.Descriptor instead.
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0, 1}
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) GetResponseDwellTimeMSString() string {
+ if x != nil && x.ResponseDwellTimeMSString != nil {
+ return *x.ResponseDwellTimeMSString
+ }
+ return ""
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData) GetSelectedResponseID() string {
+ if x != nil && x.SelectedResponseID != nil {
+ return *x.SelectedResponseID
+ }
+ return ""
+}
+
+type BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData) Reset() {
+ *x = BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[63]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData) ProtoMessage() {
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[63]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData.ProtoReflect.Descriptor instead.
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0, 2}
+}
+
+type BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ IsSurveyExpired *bool `protobuf:"varint,1,opt,name=isSurveyExpired" json:"isSurveyExpired,omitempty"`
+ ClickDwellTimeMSString *string `protobuf:"bytes,2,opt,name=clickDwellTimeMSString" json:"clickDwellTimeMSString,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) Reset() {
+ *x = BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[64]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) ProtoMessage() {
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[64]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData.ProtoReflect.Descriptor instead.
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0, 3}
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) GetIsSurveyExpired() bool {
+ if x != nil && x.IsSurveyExpired != nil {
+ return *x.IsSurveyExpired
+ }
+ return false
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData) GetClickDwellTimeMSString() string {
+ if x != nil && x.ClickDwellTimeMSString != nil {
+ return *x.ClickDwellTimeMSString
+ }
+ return ""
+}
+
+type BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ IsSurveyExpired *bool `protobuf:"varint,1,opt,name=isSurveyExpired" json:"isSurveyExpired,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData) Reset() {
+ *x = BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[65]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData) ProtoMessage() {
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[65]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData.ProtoReflect.Descriptor instead.
+func (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{16, 0, 0, 4}
+}
+
+func (x *BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData) GetIsSurveyExpired() bool {
+ if x != nil && x.IsSurveyExpired != nil {
+ return *x.IsSurveyExpired
+ }
+ return false
+}
+
type AIRichResponseCodeMetadata_AIRichResponseCodeBlock struct {
state protoimpl.MessageState `protogen:"open.v1"`
HighlightType *AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType `protobuf:"varint,1,opt,name=highlightType,enum=WAAICommon.AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType" json:"highlightType,omitempty"`
@@ -6106,7 +6912,7 @@ type AIRichResponseCodeMetadata_AIRichResponseCodeBlock struct {
func (x *AIRichResponseCodeMetadata_AIRichResponseCodeBlock) Reset() {
*x = AIRichResponseCodeMetadata_AIRichResponseCodeBlock{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[56]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6118,7 +6924,7 @@ func (x *AIRichResponseCodeMetadata_AIRichResponseCodeBlock) String() string {
func (*AIRichResponseCodeMetadata_AIRichResponseCodeBlock) ProtoMessage() {}
func (x *AIRichResponseCodeMetadata_AIRichResponseCodeBlock) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[56]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[66]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6160,7 +6966,7 @@ type AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata struct
func (x *AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata) Reset() {
*x = AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[57]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6172,7 +6978,7 @@ func (x *AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata) S
func (*AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata) ProtoMessage() {}
func (x *AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[57]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[67]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6227,7 +7033,7 @@ type AIRichResponseContentItemsMetadata_AIRichResponseReelItem struct {
func (x *AIRichResponseContentItemsMetadata_AIRichResponseReelItem) Reset() {
*x = AIRichResponseContentItemsMetadata_AIRichResponseReelItem{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[58]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6239,7 +7045,7 @@ func (x *AIRichResponseContentItemsMetadata_AIRichResponseReelItem) String() str
func (*AIRichResponseContentItemsMetadata_AIRichResponseReelItem) ProtoMessage() {}
func (x *AIRichResponseContentItemsMetadata_AIRichResponseReelItem) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[58]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[68]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6283,6 +7089,98 @@ func (x *AIRichResponseContentItemsMetadata_AIRichResponseReelItem) GetVideoURL(
return ""
}
+type AIHomeState_AIHomeOption struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Type *AIHomeState_AIHomeOption_AIHomeActionType `protobuf:"varint,1,opt,name=type,enum=WAAICommon.AIHomeState_AIHomeOption_AIHomeActionType" json:"type,omitempty"`
+ Title *string `protobuf:"bytes,2,opt,name=title" json:"title,omitempty"`
+ PromptText *string `protobuf:"bytes,3,opt,name=promptText" json:"promptText,omitempty"`
+ SessionID *string `protobuf:"bytes,4,opt,name=sessionID" json:"sessionID,omitempty"`
+ ImageWdsIdentifier *string `protobuf:"bytes,5,opt,name=imageWdsIdentifier" json:"imageWdsIdentifier,omitempty"`
+ ImageTintColor *string `protobuf:"bytes,6,opt,name=imageTintColor" json:"imageTintColor,omitempty"`
+ ImageBackgroundColor *string `protobuf:"bytes,7,opt,name=imageBackgroundColor" json:"imageBackgroundColor,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AIHomeState_AIHomeOption) Reset() {
+ *x = AIHomeState_AIHomeOption{}
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[69]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AIHomeState_AIHomeOption) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AIHomeState_AIHomeOption) ProtoMessage() {}
+
+func (x *AIHomeState_AIHomeOption) ProtoReflect() protoreflect.Message {
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[69]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AIHomeState_AIHomeOption.ProtoReflect.Descriptor instead.
+func (*AIHomeState_AIHomeOption) Descriptor() ([]byte, []int) {
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{22, 0}
+}
+
+func (x *AIHomeState_AIHomeOption) GetType() AIHomeState_AIHomeOption_AIHomeActionType {
+ if x != nil && x.Type != nil {
+ return *x.Type
+ }
+ return AIHomeState_AIHomeOption_PROMPT
+}
+
+func (x *AIHomeState_AIHomeOption) GetTitle() string {
+ if x != nil && x.Title != nil {
+ return *x.Title
+ }
+ return ""
+}
+
+func (x *AIHomeState_AIHomeOption) GetPromptText() string {
+ if x != nil && x.PromptText != nil {
+ return *x.PromptText
+ }
+ return ""
+}
+
+func (x *AIHomeState_AIHomeOption) GetSessionID() string {
+ if x != nil && x.SessionID != nil {
+ return *x.SessionID
+ }
+ return ""
+}
+
+func (x *AIHomeState_AIHomeOption) GetImageWdsIdentifier() string {
+ if x != nil && x.ImageWdsIdentifier != nil {
+ return *x.ImageWdsIdentifier
+ }
+ return ""
+}
+
+func (x *AIHomeState_AIHomeOption) GetImageTintColor() string {
+ if x != nil && x.ImageTintColor != nil {
+ return *x.ImageTintColor
+ }
+ return ""
+}
+
+func (x *AIHomeState_AIHomeOption) GetImageBackgroundColor() string {
+ if x != nil && x.ImageBackgroundColor != nil {
+ return *x.ImageBackgroundColor
+ }
+ return ""
+}
+
type BotRenderingMetadata_Keyword struct {
state protoimpl.MessageState `protogen:"open.v1"`
Value *string `protobuf:"bytes,1,opt,name=value" json:"value,omitempty"`
@@ -6293,7 +7191,7 @@ type BotRenderingMetadata_Keyword struct {
func (x *BotRenderingMetadata_Keyword) Reset() {
*x = BotRenderingMetadata_Keyword{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[59]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[70]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6305,7 +7203,7 @@ func (x *BotRenderingMetadata_Keyword) String() string {
func (*BotRenderingMetadata_Keyword) ProtoMessage() {}
func (x *BotRenderingMetadata_Keyword) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[59]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[70]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6318,7 +7216,7 @@ func (x *BotRenderingMetadata_Keyword) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotRenderingMetadata_Keyword.ProtoReflect.Descriptor instead.
func (*BotRenderingMetadata_Keyword) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{29, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{31, 0}
}
func (x *BotRenderingMetadata_Keyword) GetValue() string {
@@ -6345,7 +7243,7 @@ type InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart struct {
func (x *InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) Reset() {
*x = InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[60]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[71]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6357,7 +7255,7 @@ func (x *InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) String() str
func (*InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) ProtoMessage() {}
func (x *InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[60]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[71]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6370,7 +7268,7 @@ func (x *InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) ProtoReflect
// Deprecated: Use InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart.ProtoReflect.Descriptor instead.
func (*InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{33, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35, 0}
}
func (x *InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart) GetText() string {
@@ -6398,7 +7296,7 @@ type InThreadSurveyMetadata_InThreadSurveyOption struct {
func (x *InThreadSurveyMetadata_InThreadSurveyOption) Reset() {
*x = InThreadSurveyMetadata_InThreadSurveyOption{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[61]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[72]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6410,7 +7308,7 @@ func (x *InThreadSurveyMetadata_InThreadSurveyOption) String() string {
func (*InThreadSurveyMetadata_InThreadSurveyOption) ProtoMessage() {}
func (x *InThreadSurveyMetadata_InThreadSurveyOption) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[61]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[72]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6423,7 +7321,7 @@ func (x *InThreadSurveyMetadata_InThreadSurveyOption) ProtoReflect() protoreflec
// Deprecated: Use InThreadSurveyMetadata_InThreadSurveyOption.ProtoReflect.Descriptor instead.
func (*InThreadSurveyMetadata_InThreadSurveyOption) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{33, 1}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35, 1}
}
func (x *InThreadSurveyMetadata_InThreadSurveyOption) GetStringValue() string {
@@ -6458,7 +7356,7 @@ type InThreadSurveyMetadata_InThreadSurveyQuestion struct {
func (x *InThreadSurveyMetadata_InThreadSurveyQuestion) Reset() {
*x = InThreadSurveyMetadata_InThreadSurveyQuestion{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[62]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[73]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6470,7 +7368,7 @@ func (x *InThreadSurveyMetadata_InThreadSurveyQuestion) String() string {
func (*InThreadSurveyMetadata_InThreadSurveyQuestion) ProtoMessage() {}
func (x *InThreadSurveyMetadata_InThreadSurveyQuestion) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[62]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[73]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6483,7 +7381,7 @@ func (x *InThreadSurveyMetadata_InThreadSurveyQuestion) ProtoReflect() protorefl
// Deprecated: Use InThreadSurveyMetadata_InThreadSurveyQuestion.ProtoReflect.Descriptor instead.
func (*InThreadSurveyMetadata_InThreadSurveyQuestion) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{33, 2}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35, 2}
}
func (x *InThreadSurveyMetadata_InThreadSurveyQuestion) GetQuestionText() string {
@@ -6518,7 +7416,7 @@ type BotUnifiedResponseMutation_MediaDetailsMetadata struct {
func (x *BotUnifiedResponseMutation_MediaDetailsMetadata) Reset() {
*x = BotUnifiedResponseMutation_MediaDetailsMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[63]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6530,7 +7428,7 @@ func (x *BotUnifiedResponseMutation_MediaDetailsMetadata) String() string {
func (*BotUnifiedResponseMutation_MediaDetailsMetadata) ProtoMessage() {}
func (x *BotUnifiedResponseMutation_MediaDetailsMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[63]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[74]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6543,7 +7441,7 @@ func (x *BotUnifiedResponseMutation_MediaDetailsMetadata) ProtoReflect() protore
// Deprecated: Use BotUnifiedResponseMutation_MediaDetailsMetadata.ProtoReflect.Descriptor instead.
func (*BotUnifiedResponseMutation_MediaDetailsMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{37, 0}
}
func (x *BotUnifiedResponseMutation_MediaDetailsMetadata) GetID() string {
@@ -6568,15 +7466,16 @@ func (x *BotUnifiedResponseMutation_MediaDetailsMetadata) GetPreviewMedia() *Bot
}
type BotUnifiedResponseMutation_SideBySideMetadata struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- PrimaryResponseID *string `protobuf:"bytes,1,opt,name=primaryResponseID" json:"primaryResponseID,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
+ state protoimpl.MessageState `protogen:"open.v1"`
+ PrimaryResponseID *string `protobuf:"bytes,1,opt,name=primaryResponseID" json:"primaryResponseID,omitempty"`
+ SurveyCtaHasRendered *bool `protobuf:"varint,2,opt,name=surveyCtaHasRendered" json:"surveyCtaHasRendered,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *BotUnifiedResponseMutation_SideBySideMetadata) Reset() {
*x = BotUnifiedResponseMutation_SideBySideMetadata{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[64]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6588,7 +7487,7 @@ func (x *BotUnifiedResponseMutation_SideBySideMetadata) String() string {
func (*BotUnifiedResponseMutation_SideBySideMetadata) ProtoMessage() {}
func (x *BotUnifiedResponseMutation_SideBySideMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[64]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[75]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6601,7 +7500,7 @@ func (x *BotUnifiedResponseMutation_SideBySideMetadata) ProtoReflect() protorefl
// Deprecated: Use BotUnifiedResponseMutation_SideBySideMetadata.ProtoReflect.Descriptor instead.
func (*BotUnifiedResponseMutation_SideBySideMetadata) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{35, 1}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{37, 1}
}
func (x *BotUnifiedResponseMutation_SideBySideMetadata) GetPrimaryResponseID() string {
@@ -6611,6 +7510,13 @@ func (x *BotUnifiedResponseMutation_SideBySideMetadata) GetPrimaryResponseID() s
return ""
}
+func (x *BotUnifiedResponseMutation_SideBySideMetadata) GetSurveyCtaHasRendered() bool {
+ if x != nil && x.SurveyCtaHasRendered != nil {
+ return *x.SurveyCtaHasRendered
+ }
+ return false
+}
+
type AIRichResponseTableMetadata_AIRichResponseTableRow struct {
state protoimpl.MessageState `protogen:"open.v1"`
Items []string `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
@@ -6621,7 +7527,7 @@ type AIRichResponseTableMetadata_AIRichResponseTableRow struct {
func (x *AIRichResponseTableMetadata_AIRichResponseTableRow) Reset() {
*x = AIRichResponseTableMetadata_AIRichResponseTableRow{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[65]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[76]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6633,7 +7539,7 @@ func (x *AIRichResponseTableMetadata_AIRichResponseTableRow) String() string {
func (*AIRichResponseTableMetadata_AIRichResponseTableRow) ProtoMessage() {}
func (x *AIRichResponseTableMetadata_AIRichResponseTableRow) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[65]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[76]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6646,7 +7552,7 @@ func (x *AIRichResponseTableMetadata_AIRichResponseTableRow) ProtoReflect() prot
// Deprecated: Use AIRichResponseTableMetadata_AIRichResponseTableRow.ProtoReflect.Descriptor instead.
func (*AIRichResponseTableMetadata_AIRichResponseTableRow) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{41, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{43, 0}
}
func (x *AIRichResponseTableMetadata_AIRichResponseTableRow) GetItems() []string {
@@ -6680,7 +7586,7 @@ type AIRichResponseLatexMetadata_AIRichResponseLatexExpression struct {
func (x *AIRichResponseLatexMetadata_AIRichResponseLatexExpression) Reset() {
*x = AIRichResponseLatexMetadata_AIRichResponseLatexExpression{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[66]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[77]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6692,7 +7598,7 @@ func (x *AIRichResponseLatexMetadata_AIRichResponseLatexExpression) String() str
func (*AIRichResponseLatexMetadata_AIRichResponseLatexExpression) ProtoMessage() {}
func (x *AIRichResponseLatexMetadata_AIRichResponseLatexExpression) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[66]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[77]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6705,7 +7611,7 @@ func (x *AIRichResponseLatexMetadata_AIRichResponseLatexExpression) ProtoReflect
// Deprecated: Use AIRichResponseLatexMetadata_AIRichResponseLatexExpression.ProtoReflect.Descriptor instead.
func (*AIRichResponseLatexMetadata_AIRichResponseLatexExpression) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{43, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{45, 0}
}
func (x *AIRichResponseLatexMetadata_AIRichResponseLatexExpression) GetLatexExpression() string {
@@ -6784,7 +7690,7 @@ type AIRichResponseMapMetadata_AIRichResponseMapAnnotation struct {
func (x *AIRichResponseMapMetadata_AIRichResponseMapAnnotation) Reset() {
*x = AIRichResponseMapMetadata_AIRichResponseMapAnnotation{}
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[67]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[78]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6796,7 +7702,7 @@ func (x *AIRichResponseMapMetadata_AIRichResponseMapAnnotation) String() string
func (*AIRichResponseMapMetadata_AIRichResponseMapAnnotation) ProtoMessage() {}
func (x *AIRichResponseMapMetadata_AIRichResponseMapAnnotation) ProtoReflect() protoreflect.Message {
- mi := &file_waAICommon_WAAICommon_proto_msgTypes[67]
+ mi := &file_waAICommon_WAAICommon_proto_msgTypes[78]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6809,7 +7715,7 @@ func (x *AIRichResponseMapMetadata_AIRichResponseMapAnnotation) ProtoReflect() p
// Deprecated: Use AIRichResponseMapMetadata_AIRichResponseMapAnnotation.ProtoReflect.Descriptor instead.
func (*AIRichResponseMapMetadata_AIRichResponseMapAnnotation) Descriptor() ([]byte, []int) {
- return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{44, 0}
+ return file_waAICommon_WAAICommon_proto_rawDescGZIP(), []int{46, 0}
}
func (x *AIRichResponseMapMetadata_AIRichResponseMapAnnotation) GetAnnotationNumber() uint32 {
@@ -6939,10 +7845,11 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\n" +
"\x06DELETE\x10\x03\x12\n" +
"\n" +
- "\x06UPDATE\x10\x04\"\xd1\x02\n" +
+ "\x06UPDATE\x10\x04\"\xff\x02\n" +
"\x10BotModelMetadata\x12D\n" +
"\tmodelType\x18\x01 \x01(\x0e2&.WAAICommon.BotModelMetadata.ModelTypeR\tmodelType\x12_\n" +
- "\x12premiumModelStatus\x18\x02 \x01(\x0e2/.WAAICommon.BotModelMetadata.PremiumModelStatusR\x12premiumModelStatus\"O\n" +
+ "\x12premiumModelStatus\x18\x02 \x01(\x0e2/.WAAICommon.BotModelMetadata.PremiumModelStatusR\x12premiumModelStatus\x12,\n" +
+ "\x11modelNameOverride\x18\x03 \x01(\tR\x11modelNameOverride\"O\n" +
"\x12PremiumModelStatus\x12\x12\n" +
"\x0eUNKNOWN_STATUS\x10\x00\x12\r\n" +
"\tAVAILABLE\x10\x01\x12\x16\n" +
@@ -6996,9 +7903,9 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\aUNKNOWN\x10\x00\x12\v\n" +
"\aPLANNED\x10\x01\x12\r\n" +
"\tEXECUTING\x10\x02\x12\f\n" +
- "\bFINISHED\x10\x03\"\xbd\f\n" +
+ "\bFINISHED\x10\x03\"\xc7\r\n" +
"\x15BotCapabilityMetadata\x12W\n" +
- "\fcapabilities\x18\x01 \x03(\x0e23.WAAICommon.BotCapabilityMetadata.BotCapabilityTypeR\fcapabilities\"\xca\v\n" +
+ "\fcapabilities\x18\x01 \x03(\x0e23.WAAICommon.BotCapabilityMetadata.BotCapabilityTypeR\fcapabilities\"\xd4\f\n" +
"\x11BotCapabilityType\x12\v\n" +
"\aUNKNOWN\x10\x00\x12\x16\n" +
"\x12PROGRESS_INDICATOR\x10\x01\x12\x19\n" +
@@ -7047,7 +7954,11 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"&RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS\x10*\x12)\n" +
"%RICH_RESPONSE_UR_INLINE_REELS_ENABLED\x10+\x12'\n" +
"#RICH_RESPONSE_UR_MEDIA_GRID_ENABLED\x10,\x12*\n" +
- "&RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER\x10-\"\xa7\x01\n" +
+ "&RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER\x10-\x12\x1f\n" +
+ "\x1bRICH_RESPONSE_IN_APP_SURVEY\x10.\x12\x1e\n" +
+ "\x1aAI_RESPONSE_MODEL_BRANDING\x10/\x12'\n" +
+ "#SESSION_TRANSPARENCY_SYSTEM_MESSAGE\x100\x12\x1e\n" +
+ "\x1aRICH_RESPONSE_UR_REASONING\x101\"\xa7\x01\n" +
"\x18BotModeSelectionMetadata\x12M\n" +
"\x04mode\x18\x01 \x03(\x0e29.WAAICommon.BotModeSelectionMetadata.BotUserSelectionModeR\x04mode\"<\n" +
"\x14BotUserSelectionMode\x12\x10\n" +
@@ -7114,7 +8025,7 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\aDEFAULT\x10\x01\x12\r\n" +
"\tINCOGNITO\x10\x02\x1a*\n" +
"\x12AIThreadServerInfo\x12\x14\n" +
- "\x05title\x18\x01 \x01(\tR\x05title\"\x8d\x11\n" +
+ "\x05title\x18\x01 \x01(\tR\x05title\"\xe5\x1e\n" +
"\x12BotFeedbackMessage\x124\n" +
"\n" +
"messageKey\x18\x01 \x01(\v2\x14.WACommon.MessageKeyR\n" +
@@ -7126,7 +8037,7 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\n" +
"kindReport\x18\x06 \x01(\x0e2).WAAICommon.BotFeedbackMessage.ReportKindR\n" +
"kindReport\x12s\n" +
- "\x18sideBySideSurveyMetadata\x18\a \x01(\v27.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadataR\x18sideBySideSurveyMetadata\x1a\xc4\x04\n" +
+ "\x18sideBySideSurveyMetadata\x18\a \x01(\v27.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadataR\x18sideBySideSurveyMetadata\x1a\x9c\x12\n" +
"\x18SideBySideSurveyMetadata\x12,\n" +
"\x11selectedRequestID\x18\x01 \x01(\tR\x11selectedRequestID\x12\x1a\n" +
"\bsurveyID\x18\x02 \x01(\rR\bsurveyID\x12*\n" +
@@ -7135,12 +8046,35 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\x19responseTimestampMSString\x18\x05 \x01(\tR\x19responseTimestampMSString\x12<\n" +
"\x19isSelectedResponsePrimary\x18\x06 \x01(\bR\x19isSelectedResponsePrimary\x12(\n" +
"\x0fmessageIDToEdit\x18\a \x01(\tR\x0fmessageIDToEdit\x12{\n" +
- "\ranalyticsData\x18\b \x01(\v2U.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SideBySideSurveyAnalyticsDataR\ranalyticsData\x1ak\n" +
+ "\ranalyticsData\x18\b \x01(\v2U.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SideBySideSurveyAnalyticsDataR\ranalyticsData\x12\x8d\x01\n" +
+ "\x13metaAiAnalyticsData\x18\t \x01(\v2[.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsDataR\x13metaAiAnalyticsData\x1a\x98\f\n" +
+ "#SidebySideSurveyMetaAiAnalyticsData\x12\x1a\n" +
+ "\bsurveyID\x18\x01 \x01(\rR\bsurveyID\x12,\n" +
+ "\x11primaryResponseID\x18\x02 \x01(\tR\x11primaryResponseID\x12 \n" +
+ "\vtestArmName\x18\x03 \x01(\tR\vtestArmName\x12,\n" +
+ "\x11timestampMSString\x18\x04 \x01(\tR\x11timestampMSString\x12\xb3\x01\n" +
+ "\x12ctaImpressionEvent\x18\x05 \x01(\v2\x82\x01.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCTAImpressionEventDataR\x12ctaImpressionEvent\x12\xa3\x01\n" +
+ "\rctaClickEvent\x18\x06 \x01(\v2}.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCTAClickEventDataR\rctaClickEvent\x12\xb6\x01\n" +
+ "\x13cardImpressionEvent\x18\a \x01(\v2\x83\x01.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCardImpressionEventDataR\x13cardImpressionEvent\x12\xa3\x01\n" +
+ "\rresponseEvent\x18\b \x01(\v2}.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyResponseEventDataR\rresponseEvent\x12\xa0\x01\n" +
+ "\fabandonEvent\x18\t \x01(\v2|.WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyAbandonEventDataR\fabandonEvent\x1a^\n" +
+ " SideBySideSurveyAbandonEventData\x12:\n" +
+ "\x18abandonDwellTimeMSString\x18\x01 \x01(\tR\x18abandonDwellTimeMSString\x1a\x91\x01\n" +
+ "!SideBySideSurveyResponseEventData\x12<\n" +
+ "\x19responseDwellTimeMSString\x18\x01 \x01(\tR\x19responseDwellTimeMSString\x12.\n" +
+ "\x12selectedResponseID\x18\x02 \x01(\tR\x12selectedResponseID\x1a)\n" +
+ "'SideBySideSurveyCardImpressionEventData\x1a\x85\x01\n" +
+ "!SideBySideSurveyCTAClickEventData\x12(\n" +
+ "\x0fisSurveyExpired\x18\x01 \x01(\bR\x0fisSurveyExpired\x126\n" +
+ "\x16clickDwellTimeMSString\x18\x02 \x01(\tR\x16clickDwellTimeMSString\x1aR\n" +
+ "&SideBySideSurveyCTAImpressionEventData\x12(\n" +
+ "\x0fisSurveyExpired\x18\x01 \x01(\bR\x0fisSurveyExpired\x1a\x97\x01\n" +
"\x1dSideBySideSurveyAnalyticsData\x12\x1e\n" +
"\n" +
"tessaEvent\x18\x01 \x01(\tR\n" +
"tessaEvent\x12*\n" +
- "\x10tessaSessionFbid\x18\x02 \x01(\tR\x10tessaSessionFbid\"#\n" +
+ "\x10tessaSessionFbid\x18\x02 \x01(\tR\x10tessaSessionFbid\x12*\n" +
+ "\x10simonSessionFbid\x18\x03 \x01(\tR\x10simonSessionFbid\"#\n" +
"\n" +
"ReportKind\x12\b\n" +
"\x04NONE\x10\x00\x12\v\n" +
@@ -7222,7 +8156,34 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\bvideoURL\x18\x04 \x01(\tR\bvideoURL\"(\n" +
"\vContentType\x12\v\n" +
"\aDEFAULT\x10\x00\x12\f\n" +
- "\bCAROUSEL\x10\x01\"\xab\x01\n" +
+ "\bCAROUSEL\x10\x01\"\xb6\x01\n" +
+ "\x1aBotDocumentMessageMetadata\x12Y\n" +
+ "\n" +
+ "pluginType\x18\x01 \x01(\x0e29.WAAICommon.BotDocumentMessageMetadata.DocumentPluginTypeR\n" +
+ "pluginType\"=\n" +
+ "\x12DocumentPluginType\x12\x13\n" +
+ "\x0fTEXT_EXTRACTION\x10\x00\x12\x12\n" +
+ "\x0eOCR_AND_IMAGES\x10\x01\"\xf2\x04\n" +
+ "\vAIHomeState\x12$\n" +
+ "\rlastFetchTime\x18\x01 \x01(\x03R\rlastFetchTime\x12R\n" +
+ "\x11capabilityOptions\x18\x02 \x03(\v2$.WAAICommon.AIHomeState.AIHomeOptionR\x11capabilityOptions\x12V\n" +
+ "\x13conversationOptions\x18\x03 \x03(\v2$.WAAICommon.AIHomeState.AIHomeOptionR\x13conversationOptions\x1a\x90\x03\n" +
+ "\fAIHomeOption\x12I\n" +
+ "\x04type\x18\x01 \x01(\x0e25.WAAICommon.AIHomeState.AIHomeOption.AIHomeActionTypeR\x04type\x12\x14\n" +
+ "\x05title\x18\x02 \x01(\tR\x05title\x12\x1e\n" +
+ "\n" +
+ "promptText\x18\x03 \x01(\tR\n" +
+ "promptText\x12\x1c\n" +
+ "\tsessionID\x18\x04 \x01(\tR\tsessionID\x12.\n" +
+ "\x12imageWdsIdentifier\x18\x05 \x01(\tR\x12imageWdsIdentifier\x12&\n" +
+ "\x0eimageTintColor\x18\x06 \x01(\tR\x0eimageTintColor\x122\n" +
+ "\x14imageBackgroundColor\x18\a \x01(\tR\x14imageBackgroundColor\"U\n" +
+ "\x10AIHomeActionType\x12\n" +
+ "\n" +
+ "\x06PROMPT\x10\x00\x12\x10\n" +
+ "\fCREATE_IMAGE\x10\x01\x12\x11\n" +
+ "\rANIMATE_PHOTO\x10\x02\x12\x10\n" +
+ "\fANALYZE_FILE\x10\x03\"\xab\x01\n" +
"\x11BotAvatarMetadata\x12\x1c\n" +
"\tsentiment\x18\x01 \x01(\rR\tsentiment\x12$\n" +
"\rbehaviorGraph\x18\x02 \x01(\tR\rbehaviorGraph\x12\x16\n" +
@@ -7271,7 +8232,7 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\x0fBotMemuMetadata\x12<\n" +
"\n" +
"faceImages\x18\x01 \x03(\v2\x1c.WAAICommon.BotMediaMetadataR\n" +
- "faceImages\"\x8f\n" +
+ "faceImages\"\xbf\n" +
"\n" +
"\x16InThreadSurveyMetadata\x12&\n" +
"\x0etessaSessionID\x18\x01 \x01(\tR\x0etessaSessionID\x12&\n" +
@@ -7293,7 +8254,8 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\x16surveySubmitButtonText\x18\x0e \x01(\tR\x16surveySubmitButtonText\x122\n" +
"\x14privacyStatementFull\x18\x0f \x01(\tR\x14privacyStatementFull\x12{\n" +
"\x15privacyStatementParts\x18\x10 \x03(\v2E.WAAICommon.InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPartR\x15privacyStatementParts\x12,\n" +
- "\x11feedbackToastText\x18\x11 \x01(\tR\x11feedbackToastText\x1aJ\n" +
+ "\x11feedbackToastText\x18\x11 \x01(\tR\x11feedbackToastText\x12.\n" +
+ "\x12startQuestionIndex\x18\x12 \x01(\x05R\x12startQuestionIndex\x1aJ\n" +
"\"InThreadSurveyPrivacyStatementPart\x12\x12\n" +
"\x04text\x18\x01 \x01(\tR\x04text\x12\x10\n" +
"\x03URL\x18\x02 \x01(\tR\x03URL\x1a\x84\x01\n" +
@@ -7308,16 +8270,17 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"questionID\x12a\n" +
"\x0fquestionOptions\x18\x03 \x03(\v27.WAAICommon.InThreadSurveyMetadata.InThreadSurveyOptionR\x0fquestionOptions\"R\n" +
"\x18BotMessageOriginMetadata\x126\n" +
- "\aorigins\x18\x01 \x03(\v2\x1c.WAAICommon.BotMessageOriginR\aorigins\"\xe3\x03\n" +
+ "\aorigins\x18\x01 \x03(\v2\x1c.WAAICommon.BotMessageOriginR\aorigins\"\x97\x04\n" +
"\x1aBotUnifiedResponseMutation\x12[\n" +
"\vsbsMetadata\x18\x01 \x01(\v29.WAAICommon.BotUnifiedResponseMutation.SideBySideMetadataR\vsbsMetadata\x12w\n" +
"\x18mediaDetailsMetadataList\x18\x02 \x03(\v2;.WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadataR\x18mediaDetailsMetadataList\x1a\xaa\x01\n" +
"\x14MediaDetailsMetadata\x12\x0e\n" +
"\x02ID\x18\x01 \x01(\tR\x02ID\x12@\n" +
"\fhighResMedia\x18\x02 \x01(\v2\x1c.WAAICommon.BotMediaMetadataR\fhighResMedia\x12@\n" +
- "\fpreviewMedia\x18\x03 \x01(\v2\x1c.WAAICommon.BotMediaMetadataR\fpreviewMedia\x1aB\n" +
+ "\fpreviewMedia\x18\x03 \x01(\v2\x1c.WAAICommon.BotMediaMetadataR\fpreviewMedia\x1av\n" +
"\x12SideBySideMetadata\x12,\n" +
- "\x11primaryResponseID\x18\x01 \x01(\tR\x11primaryResponseID\"\xe2\x12\n" +
+ "\x11primaryResponseID\x18\x01 \x01(\tR\x11primaryResponseID\x122\n" +
+ "\x14surveyCtaHasRendered\x18\x02 \x01(\bR\x14surveyCtaHasRendered\"\x87\x15\n" +
"\vBotMetadata\x12E\n" +
"\x0eavatarMetadata\x18\x01 \x01(\v2\x1d.WAAICommon.BotAvatarMetadataR\x0eavatarMetadata\x12\x1c\n" +
"\tpersonaID\x18\x02 \x01(\tR\tpersonaID\x12E\n" +
@@ -7352,7 +8315,10 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\x17unifiedResponseMutation\x18\x1c \x01(\v2&.WAAICommon.BotUnifiedResponseMutationR\x17unifiedResponseMutation\x12`\n" +
"\x18botMessageOriginMetadata\x18\x1d \x01(\v2$.WAAICommon.BotMessageOriginMetadataR\x18botMessageOriginMetadata\x12Z\n" +
"\x16inThreadSurveyMetadata\x18\x1e \x01(\v2\".WAAICommon.InThreadSurveyMetadataR\x16inThreadSurveyMetadata\x12>\n" +
- "\rbotThreadInfo\x18\x1f \x01(\v2\x18.WAAICommon.AIThreadInfoR\rbotThreadInfo\x12+\n" +
+ "\rbotThreadInfo\x18\x1f \x01(\v2\x18.WAAICommon.AIThreadInfoR\rbotThreadInfo\x12P\n" +
+ "\x12regenerateMetadata\x18 \x01(\v2 .WAAICommon.AIRegenerateMetadataR\x12regenerateMetadata\x12i\n" +
+ "\x1bsessionTransparencyMetadata\x18! \x01(\v2'.WAAICommon.SessionTransparencyMetadataR\x1bsessionTransparencyMetadata\x12f\n" +
+ "\x1abotDocumentMessageMetadata\x18\" \x01(\v2&.WAAICommon.BotDocumentMessageMetadataR\x1abotDocumentMessageMetadata\x12+\n" +
"\x10internalMetadata\x18\xe7\a \x01(\fR\x10internalMetadata\"o\n" +
"\x19ForwardedAIBotMessageInfo\x12\x18\n" +
"\abotName\x18\x01 \x01(\tR\abotName\x12\x16\n" +
@@ -7415,7 +8381,16 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\rlatexMetadata\x18\b \x01(\v2'.WAAICommon.AIRichResponseLatexMetadataR\rlatexMetadata\x12G\n" +
"\vmapMetadata\x18\t \x01(\v2%.WAAICommon.AIRichResponseMapMetadataR\vmapMetadata\x12b\n" +
"\x14contentItemsMetadata\x18\n" +
- " \x01(\v2..WAAICommon.AIRichResponseContentItemsMetadataR\x14contentItemsMetadata*\xec\a\n" +
+ " \x01(\v2..WAAICommon.AIRichResponseContentItemsMetadataR\x14contentItemsMetadata\"~\n" +
+ "\x14AIRegenerateMetadata\x124\n" +
+ "\n" +
+ "messageKey\x18\x01 \x01(\v2\x14.WACommon.MessageKeyR\n" +
+ "messageKey\x120\n" +
+ "\x13responseTimestampMS\x18\x02 \x01(\x03R\x13responseTimestampMS\"\xba\x01\n" +
+ "\x1bSessionTransparencyMetadata\x12&\n" +
+ "\x0edisclaimerText\x18\x01 \x01(\tR\x0edisclaimerText\x12\x14\n" +
+ "\x05hcaID\x18\x02 \x01(\tR\x05hcaID\x12]\n" +
+ "\x17sessionTransparencyType\x18\x03 \x01(\x0e2#.WAAICommon.SessionTransparencyTypeR\x17sessionTransparencyType*\xb3\b\n" +
"\x14BotMetricsEntryPoint\x12\x19\n" +
"\x15UNDEFINED_ENTRY_POINT\x10\x00\x12\v\n" +
"\aFAVICON\x10\x01\x12\f\n" +
@@ -7455,7 +8430,9 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
" MESSAGE_QUICK_ACTION_1_ON_1_CHAT\x10!\x12#\n" +
"\x1fMESSAGE_QUICK_ACTION_GROUP_CHAT\x10\"\x12\x1f\n" +
"\x1bATTACHMENT_TRAY_1_ON_1_CHAT\x10#\x12\x1e\n" +
- "\x1aATTACHMENT_TRAY_GROUP_CHAT\x10$*\xa2\x01\n" +
+ "\x1aATTACHMENT_TRAY_GROUP_CHAT\x10$\x12!\n" +
+ "\x1dASK_META_AI_MEDIA_VIEWER_1ON1\x10%\x12\"\n" +
+ "\x1eASK_META_AI_MEDIA_VIEWER_GROUP\x10&*\xa2\x01\n" +
"\x1aBotMetricsThreadEntryPoint\x12\x11\n" +
"\rAI_TAB_THREAD\x10\x01\x12\x12\n" +
"\x0eAI_HOME_THREAD\x10\x02\x12 \n" +
@@ -7485,7 +8462,10 @@ const file_waAICommon_WAAICommon_proto_rawDesc = "" +
"\x18AI_RICH_RESPONSE_DYNAMIC\x10\x06\x12\x18\n" +
"\x14AI_RICH_RESPONSE_MAP\x10\a\x12\x1a\n" +
"\x16AI_RICH_RESPONSE_LATEX\x10\b\x12\"\n" +
- "\x1eAI_RICH_RESPONSE_CONTENT_ITEMS\x10\tB&Z$go.mau.fi/whatsmeow/proto/waAICommon"
+ "\x1eAI_RICH_RESPONSE_CONTENT_ITEMS\x10\t*H\n" +
+ "\x17SessionTransparencyType\x12\x10\n" +
+ "\fUNKNOWN_TYPE\x10\x00\x12\x1b\n" +
+ "\x17NY_AI_SAFETY_DISCLAIMER\x10\x01B&Z$go.mau.fi/whatsmeow/proto/waAICommon"
var (
file_waAICommon_WAAICommon_proto_rawDescOnce sync.Once
@@ -7499,223 +8479,252 @@ func file_waAICommon_WAAICommon_proto_rawDescGZIP() []byte {
return file_waAICommon_WAAICommon_proto_rawDescData
}
-var file_waAICommon_WAAICommon_proto_enumTypes = make([]protoimpl.EnumInfo, 34)
-var file_waAICommon_WAAICommon_proto_msgTypes = make([]protoimpl.MessageInfo, 68)
+var file_waAICommon_WAAICommon_proto_enumTypes = make([]protoimpl.EnumInfo, 37)
+var file_waAICommon_WAAICommon_proto_msgTypes = make([]protoimpl.MessageInfo, 79)
var file_waAICommon_WAAICommon_proto_goTypes = []any{
(BotMetricsEntryPoint)(0), // 0: WAAICommon.BotMetricsEntryPoint
(BotMetricsThreadEntryPoint)(0), // 1: WAAICommon.BotMetricsThreadEntryPoint
(BotSessionSource)(0), // 2: WAAICommon.BotSessionSource
(AIRichResponseMessageType)(0), // 3: WAAICommon.AIRichResponseMessageType
(AIRichResponseSubMessageType)(0), // 4: WAAICommon.AIRichResponseSubMessageType
- (BotPluginMetadata_PluginType)(0), // 5: WAAICommon.BotPluginMetadata.PluginType
- (BotPluginMetadata_SearchProvider)(0), // 6: WAAICommon.BotPluginMetadata.SearchProvider
- (BotLinkedAccount_BotLinkedAccountType)(0), // 7: WAAICommon.BotLinkedAccount.BotLinkedAccountType
- (BotSignatureVerificationUseCaseProof_BotSignatureUseCase)(0), // 8: WAAICommon.BotSignatureVerificationUseCaseProof.BotSignatureUseCase
- (BotPromotionMessageMetadata_BotPromotionType)(0), // 9: WAAICommon.BotPromotionMessageMetadata.BotPromotionType
- (BotMediaMetadata_OrientationType)(0), // 10: WAAICommon.BotMediaMetadata.OrientationType
- (BotReminderMetadata_ReminderFrequency)(0), // 11: WAAICommon.BotReminderMetadata.ReminderFrequency
- (BotReminderMetadata_ReminderAction)(0), // 12: WAAICommon.BotReminderMetadata.ReminderAction
- (BotModelMetadata_PremiumModelStatus)(0), // 13: WAAICommon.BotModelMetadata.PremiumModelStatus
- (BotModelMetadata_ModelType)(0), // 14: WAAICommon.BotModelMetadata.ModelType
- (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotSearchSourceProvider)(0), // 15: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider
- (BotProgressIndicatorMetadata_BotPlanningStepMetadata_PlanningStepStatus)(0), // 16: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus
- (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata_BotPlanningSearchSourceProvider)(0), // 17: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider
- (BotCapabilityMetadata_BotCapabilityType)(0), // 18: WAAICommon.BotCapabilityMetadata.BotCapabilityType
- (BotModeSelectionMetadata_BotUserSelectionMode)(0), // 19: WAAICommon.BotModeSelectionMetadata.BotUserSelectionMode
- (BotQuotaMetadata_BotFeatureQuotaMetadata_BotFeatureType)(0), // 20: WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType
- (BotImagineMetadata_ImagineType)(0), // 21: WAAICommon.BotImagineMetadata.ImagineType
- (BotAgeCollectionMetadata_AgeCollectionType)(0), // 22: WAAICommon.BotAgeCollectionMetadata.AgeCollectionType
- (BotSourcesMetadata_BotSourceItem_SourceProvider)(0), // 23: WAAICommon.BotSourcesMetadata.BotSourceItem.SourceProvider
- (BotMessageOrigin_BotMessageOriginType)(0), // 24: WAAICommon.BotMessageOrigin.BotMessageOriginType
- (AIThreadInfo_AIThreadClientInfo_AIThreadType)(0), // 25: WAAICommon.AIThreadInfo.AIThreadClientInfo.AIThreadType
- (BotFeedbackMessage_ReportKind)(0), // 26: WAAICommon.BotFeedbackMessage.ReportKind
- (BotFeedbackMessage_BotFeedbackKindMultiplePositive)(0), // 27: WAAICommon.BotFeedbackMessage.BotFeedbackKindMultiplePositive
- (BotFeedbackMessage_BotFeedbackKindMultipleNegative)(0), // 28: WAAICommon.BotFeedbackMessage.BotFeedbackKindMultipleNegative
- (BotFeedbackMessage_BotFeedbackKind)(0), // 29: WAAICommon.BotFeedbackMessage.BotFeedbackKind
- (AIRichResponseInlineImageMetadata_AIRichResponseImageAlignment)(0), // 30: WAAICommon.AIRichResponseInlineImageMetadata.AIRichResponseImageAlignment
- (AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType)(0), // 31: WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeHighlightType
- (AIRichResponseDynamicMetadata_AIRichResponseDynamicMetadataType)(0), // 32: WAAICommon.AIRichResponseDynamicMetadata.AIRichResponseDynamicMetadataType
- (AIRichResponseContentItemsMetadata_ContentType)(0), // 33: WAAICommon.AIRichResponseContentItemsMetadata.ContentType
- (*BotPluginMetadata)(nil), // 34: WAAICommon.BotPluginMetadata
- (*BotLinkedAccount)(nil), // 35: WAAICommon.BotLinkedAccount
- (*BotSignatureVerificationUseCaseProof)(nil), // 36: WAAICommon.BotSignatureVerificationUseCaseProof
- (*BotPromotionMessageMetadata)(nil), // 37: WAAICommon.BotPromotionMessageMetadata
- (*BotMediaMetadata)(nil), // 38: WAAICommon.BotMediaMetadata
- (*BotReminderMetadata)(nil), // 39: WAAICommon.BotReminderMetadata
- (*BotModelMetadata)(nil), // 40: WAAICommon.BotModelMetadata
- (*BotProgressIndicatorMetadata)(nil), // 41: WAAICommon.BotProgressIndicatorMetadata
- (*BotCapabilityMetadata)(nil), // 42: WAAICommon.BotCapabilityMetadata
- (*BotModeSelectionMetadata)(nil), // 43: WAAICommon.BotModeSelectionMetadata
- (*BotQuotaMetadata)(nil), // 44: WAAICommon.BotQuotaMetadata
- (*BotImagineMetadata)(nil), // 45: WAAICommon.BotImagineMetadata
- (*BotAgeCollectionMetadata)(nil), // 46: WAAICommon.BotAgeCollectionMetadata
- (*BotSourcesMetadata)(nil), // 47: WAAICommon.BotSourcesMetadata
- (*BotMessageOrigin)(nil), // 48: WAAICommon.BotMessageOrigin
- (*AIThreadInfo)(nil), // 49: WAAICommon.AIThreadInfo
- (*BotFeedbackMessage)(nil), // 50: WAAICommon.BotFeedbackMessage
- (*AIRichResponseInlineImageMetadata)(nil), // 51: WAAICommon.AIRichResponseInlineImageMetadata
- (*AIRichResponseCodeMetadata)(nil), // 52: WAAICommon.AIRichResponseCodeMetadata
- (*AIRichResponseDynamicMetadata)(nil), // 53: WAAICommon.AIRichResponseDynamicMetadata
- (*AIRichResponseContentItemsMetadata)(nil), // 54: WAAICommon.AIRichResponseContentItemsMetadata
- (*BotAvatarMetadata)(nil), // 55: WAAICommon.BotAvatarMetadata
- (*BotSuggestedPromptMetadata)(nil), // 56: WAAICommon.BotSuggestedPromptMetadata
- (*BotPromptSuggestions)(nil), // 57: WAAICommon.BotPromptSuggestions
- (*BotPromptSuggestion)(nil), // 58: WAAICommon.BotPromptSuggestion
- (*BotLinkedAccountsMetadata)(nil), // 59: WAAICommon.BotLinkedAccountsMetadata
- (*BotMemoryMetadata)(nil), // 60: WAAICommon.BotMemoryMetadata
- (*BotMemoryFact)(nil), // 61: WAAICommon.BotMemoryFact
- (*BotSignatureVerificationMetadata)(nil), // 62: WAAICommon.BotSignatureVerificationMetadata
- (*BotRenderingMetadata)(nil), // 63: WAAICommon.BotRenderingMetadata
- (*BotMetricsMetadata)(nil), // 64: WAAICommon.BotMetricsMetadata
- (*BotSessionMetadata)(nil), // 65: WAAICommon.BotSessionMetadata
- (*BotMemuMetadata)(nil), // 66: WAAICommon.BotMemuMetadata
- (*InThreadSurveyMetadata)(nil), // 67: WAAICommon.InThreadSurveyMetadata
- (*BotMessageOriginMetadata)(nil), // 68: WAAICommon.BotMessageOriginMetadata
- (*BotUnifiedResponseMutation)(nil), // 69: WAAICommon.BotUnifiedResponseMutation
- (*BotMetadata)(nil), // 70: WAAICommon.BotMetadata
- (*ForwardedAIBotMessageInfo)(nil), // 71: WAAICommon.ForwardedAIBotMessageInfo
- (*BotMessageSharingInfo)(nil), // 72: WAAICommon.BotMessageSharingInfo
- (*AIRichResponseImageURL)(nil), // 73: WAAICommon.AIRichResponseImageURL
- (*AIRichResponseGridImageMetadata)(nil), // 74: WAAICommon.AIRichResponseGridImageMetadata
- (*AIRichResponseTableMetadata)(nil), // 75: WAAICommon.AIRichResponseTableMetadata
- (*AIRichResponseUnifiedResponse)(nil), // 76: WAAICommon.AIRichResponseUnifiedResponse
- (*AIRichResponseLatexMetadata)(nil), // 77: WAAICommon.AIRichResponseLatexMetadata
- (*AIRichResponseMapMetadata)(nil), // 78: WAAICommon.AIRichResponseMapMetadata
- (*AIRichResponseSubMessage)(nil), // 79: WAAICommon.AIRichResponseSubMessage
- (*BotProgressIndicatorMetadata_BotPlanningStepMetadata)(nil), // 80: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata
- (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata)(nil), // 81: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata
- (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSectionMetadata)(nil), // 82: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata
- (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourceMetadata)(nil), // 83: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata
- (*BotQuotaMetadata_BotFeatureQuotaMetadata)(nil), // 84: WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata
- (*BotSourcesMetadata_BotSourceItem)(nil), // 85: WAAICommon.BotSourcesMetadata.BotSourceItem
- (*AIThreadInfo_AIThreadClientInfo)(nil), // 86: WAAICommon.AIThreadInfo.AIThreadClientInfo
- (*AIThreadInfo_AIThreadServerInfo)(nil), // 87: WAAICommon.AIThreadInfo.AIThreadServerInfo
- (*BotFeedbackMessage_SideBySideSurveyMetadata)(nil), // 88: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata
- (*BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData)(nil), // 89: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SideBySideSurveyAnalyticsData
- (*AIRichResponseCodeMetadata_AIRichResponseCodeBlock)(nil), // 90: WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeBlock
- (*AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata)(nil), // 91: WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseContentItemMetadata
- (*AIRichResponseContentItemsMetadata_AIRichResponseReelItem)(nil), // 92: WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseReelItem
- (*BotRenderingMetadata_Keyword)(nil), // 93: WAAICommon.BotRenderingMetadata.Keyword
- (*InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart)(nil), // 94: WAAICommon.InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPart
- (*InThreadSurveyMetadata_InThreadSurveyOption)(nil), // 95: WAAICommon.InThreadSurveyMetadata.InThreadSurveyOption
- (*InThreadSurveyMetadata_InThreadSurveyQuestion)(nil), // 96: WAAICommon.InThreadSurveyMetadata.InThreadSurveyQuestion
- (*BotUnifiedResponseMutation_MediaDetailsMetadata)(nil), // 97: WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata
- (*BotUnifiedResponseMutation_SideBySideMetadata)(nil), // 98: WAAICommon.BotUnifiedResponseMutation.SideBySideMetadata
- (*AIRichResponseTableMetadata_AIRichResponseTableRow)(nil), // 99: WAAICommon.AIRichResponseTableMetadata.AIRichResponseTableRow
- (*AIRichResponseLatexMetadata_AIRichResponseLatexExpression)(nil), // 100: WAAICommon.AIRichResponseLatexMetadata.AIRichResponseLatexExpression
- (*AIRichResponseMapMetadata_AIRichResponseMapAnnotation)(nil), // 101: WAAICommon.AIRichResponseMapMetadata.AIRichResponseMapAnnotation
- (*waCommon.MessageKey)(nil), // 102: WACommon.MessageKey
+ (SessionTransparencyType)(0), // 5: WAAICommon.SessionTransparencyType
+ (BotPluginMetadata_PluginType)(0), // 6: WAAICommon.BotPluginMetadata.PluginType
+ (BotPluginMetadata_SearchProvider)(0), // 7: WAAICommon.BotPluginMetadata.SearchProvider
+ (BotLinkedAccount_BotLinkedAccountType)(0), // 8: WAAICommon.BotLinkedAccount.BotLinkedAccountType
+ (BotSignatureVerificationUseCaseProof_BotSignatureUseCase)(0), // 9: WAAICommon.BotSignatureVerificationUseCaseProof.BotSignatureUseCase
+ (BotPromotionMessageMetadata_BotPromotionType)(0), // 10: WAAICommon.BotPromotionMessageMetadata.BotPromotionType
+ (BotMediaMetadata_OrientationType)(0), // 11: WAAICommon.BotMediaMetadata.OrientationType
+ (BotReminderMetadata_ReminderFrequency)(0), // 12: WAAICommon.BotReminderMetadata.ReminderFrequency
+ (BotReminderMetadata_ReminderAction)(0), // 13: WAAICommon.BotReminderMetadata.ReminderAction
+ (BotModelMetadata_PremiumModelStatus)(0), // 14: WAAICommon.BotModelMetadata.PremiumModelStatus
+ (BotModelMetadata_ModelType)(0), // 15: WAAICommon.BotModelMetadata.ModelType
+ (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotSearchSourceProvider)(0), // 16: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider
+ (BotProgressIndicatorMetadata_BotPlanningStepMetadata_PlanningStepStatus)(0), // 17: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus
+ (BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata_BotPlanningSearchSourceProvider)(0), // 18: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider
+ (BotCapabilityMetadata_BotCapabilityType)(0), // 19: WAAICommon.BotCapabilityMetadata.BotCapabilityType
+ (BotModeSelectionMetadata_BotUserSelectionMode)(0), // 20: WAAICommon.BotModeSelectionMetadata.BotUserSelectionMode
+ (BotQuotaMetadata_BotFeatureQuotaMetadata_BotFeatureType)(0), // 21: WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType
+ (BotImagineMetadata_ImagineType)(0), // 22: WAAICommon.BotImagineMetadata.ImagineType
+ (BotAgeCollectionMetadata_AgeCollectionType)(0), // 23: WAAICommon.BotAgeCollectionMetadata.AgeCollectionType
+ (BotSourcesMetadata_BotSourceItem_SourceProvider)(0), // 24: WAAICommon.BotSourcesMetadata.BotSourceItem.SourceProvider
+ (BotMessageOrigin_BotMessageOriginType)(0), // 25: WAAICommon.BotMessageOrigin.BotMessageOriginType
+ (AIThreadInfo_AIThreadClientInfo_AIThreadType)(0), // 26: WAAICommon.AIThreadInfo.AIThreadClientInfo.AIThreadType
+ (BotFeedbackMessage_ReportKind)(0), // 27: WAAICommon.BotFeedbackMessage.ReportKind
+ (BotFeedbackMessage_BotFeedbackKindMultiplePositive)(0), // 28: WAAICommon.BotFeedbackMessage.BotFeedbackKindMultiplePositive
+ (BotFeedbackMessage_BotFeedbackKindMultipleNegative)(0), // 29: WAAICommon.BotFeedbackMessage.BotFeedbackKindMultipleNegative
+ (BotFeedbackMessage_BotFeedbackKind)(0), // 30: WAAICommon.BotFeedbackMessage.BotFeedbackKind
+ (AIRichResponseInlineImageMetadata_AIRichResponseImageAlignment)(0), // 31: WAAICommon.AIRichResponseInlineImageMetadata.AIRichResponseImageAlignment
+ (AIRichResponseCodeMetadata_AIRichResponseCodeHighlightType)(0), // 32: WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeHighlightType
+ (AIRichResponseDynamicMetadata_AIRichResponseDynamicMetadataType)(0), // 33: WAAICommon.AIRichResponseDynamicMetadata.AIRichResponseDynamicMetadataType
+ (AIRichResponseContentItemsMetadata_ContentType)(0), // 34: WAAICommon.AIRichResponseContentItemsMetadata.ContentType
+ (BotDocumentMessageMetadata_DocumentPluginType)(0), // 35: WAAICommon.BotDocumentMessageMetadata.DocumentPluginType
+ (AIHomeState_AIHomeOption_AIHomeActionType)(0), // 36: WAAICommon.AIHomeState.AIHomeOption.AIHomeActionType
+ (*BotPluginMetadata)(nil), // 37: WAAICommon.BotPluginMetadata
+ (*BotLinkedAccount)(nil), // 38: WAAICommon.BotLinkedAccount
+ (*BotSignatureVerificationUseCaseProof)(nil), // 39: WAAICommon.BotSignatureVerificationUseCaseProof
+ (*BotPromotionMessageMetadata)(nil), // 40: WAAICommon.BotPromotionMessageMetadata
+ (*BotMediaMetadata)(nil), // 41: WAAICommon.BotMediaMetadata
+ (*BotReminderMetadata)(nil), // 42: WAAICommon.BotReminderMetadata
+ (*BotModelMetadata)(nil), // 43: WAAICommon.BotModelMetadata
+ (*BotProgressIndicatorMetadata)(nil), // 44: WAAICommon.BotProgressIndicatorMetadata
+ (*BotCapabilityMetadata)(nil), // 45: WAAICommon.BotCapabilityMetadata
+ (*BotModeSelectionMetadata)(nil), // 46: WAAICommon.BotModeSelectionMetadata
+ (*BotQuotaMetadata)(nil), // 47: WAAICommon.BotQuotaMetadata
+ (*BotImagineMetadata)(nil), // 48: WAAICommon.BotImagineMetadata
+ (*BotAgeCollectionMetadata)(nil), // 49: WAAICommon.BotAgeCollectionMetadata
+ (*BotSourcesMetadata)(nil), // 50: WAAICommon.BotSourcesMetadata
+ (*BotMessageOrigin)(nil), // 51: WAAICommon.BotMessageOrigin
+ (*AIThreadInfo)(nil), // 52: WAAICommon.AIThreadInfo
+ (*BotFeedbackMessage)(nil), // 53: WAAICommon.BotFeedbackMessage
+ (*AIRichResponseInlineImageMetadata)(nil), // 54: WAAICommon.AIRichResponseInlineImageMetadata
+ (*AIRichResponseCodeMetadata)(nil), // 55: WAAICommon.AIRichResponseCodeMetadata
+ (*AIRichResponseDynamicMetadata)(nil), // 56: WAAICommon.AIRichResponseDynamicMetadata
+ (*AIRichResponseContentItemsMetadata)(nil), // 57: WAAICommon.AIRichResponseContentItemsMetadata
+ (*BotDocumentMessageMetadata)(nil), // 58: WAAICommon.BotDocumentMessageMetadata
+ (*AIHomeState)(nil), // 59: WAAICommon.AIHomeState
+ (*BotAvatarMetadata)(nil), // 60: WAAICommon.BotAvatarMetadata
+ (*BotSuggestedPromptMetadata)(nil), // 61: WAAICommon.BotSuggestedPromptMetadata
+ (*BotPromptSuggestions)(nil), // 62: WAAICommon.BotPromptSuggestions
+ (*BotPromptSuggestion)(nil), // 63: WAAICommon.BotPromptSuggestion
+ (*BotLinkedAccountsMetadata)(nil), // 64: WAAICommon.BotLinkedAccountsMetadata
+ (*BotMemoryMetadata)(nil), // 65: WAAICommon.BotMemoryMetadata
+ (*BotMemoryFact)(nil), // 66: WAAICommon.BotMemoryFact
+ (*BotSignatureVerificationMetadata)(nil), // 67: WAAICommon.BotSignatureVerificationMetadata
+ (*BotRenderingMetadata)(nil), // 68: WAAICommon.BotRenderingMetadata
+ (*BotMetricsMetadata)(nil), // 69: WAAICommon.BotMetricsMetadata
+ (*BotSessionMetadata)(nil), // 70: WAAICommon.BotSessionMetadata
+ (*BotMemuMetadata)(nil), // 71: WAAICommon.BotMemuMetadata
+ (*InThreadSurveyMetadata)(nil), // 72: WAAICommon.InThreadSurveyMetadata
+ (*BotMessageOriginMetadata)(nil), // 73: WAAICommon.BotMessageOriginMetadata
+ (*BotUnifiedResponseMutation)(nil), // 74: WAAICommon.BotUnifiedResponseMutation
+ (*BotMetadata)(nil), // 75: WAAICommon.BotMetadata
+ (*ForwardedAIBotMessageInfo)(nil), // 76: WAAICommon.ForwardedAIBotMessageInfo
+ (*BotMessageSharingInfo)(nil), // 77: WAAICommon.BotMessageSharingInfo
+ (*AIRichResponseImageURL)(nil), // 78: WAAICommon.AIRichResponseImageURL
+ (*AIRichResponseGridImageMetadata)(nil), // 79: WAAICommon.AIRichResponseGridImageMetadata
+ (*AIRichResponseTableMetadata)(nil), // 80: WAAICommon.AIRichResponseTableMetadata
+ (*AIRichResponseUnifiedResponse)(nil), // 81: WAAICommon.AIRichResponseUnifiedResponse
+ (*AIRichResponseLatexMetadata)(nil), // 82: WAAICommon.AIRichResponseLatexMetadata
+ (*AIRichResponseMapMetadata)(nil), // 83: WAAICommon.AIRichResponseMapMetadata
+ (*AIRichResponseSubMessage)(nil), // 84: WAAICommon.AIRichResponseSubMessage
+ (*AIRegenerateMetadata)(nil), // 85: WAAICommon.AIRegenerateMetadata
+ (*SessionTransparencyMetadata)(nil), // 86: WAAICommon.SessionTransparencyMetadata
+ (*BotProgressIndicatorMetadata_BotPlanningStepMetadata)(nil), // 87: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata
+ (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourcesMetadata)(nil), // 88: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata
+ (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningStepSectionMetadata)(nil), // 89: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata
+ (*BotProgressIndicatorMetadata_BotPlanningStepMetadata_BotPlanningSearchSourceMetadata)(nil), // 90: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata
+ (*BotQuotaMetadata_BotFeatureQuotaMetadata)(nil), // 91: WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata
+ (*BotSourcesMetadata_BotSourceItem)(nil), // 92: WAAICommon.BotSourcesMetadata.BotSourceItem
+ (*AIThreadInfo_AIThreadClientInfo)(nil), // 93: WAAICommon.AIThreadInfo.AIThreadClientInfo
+ (*AIThreadInfo_AIThreadServerInfo)(nil), // 94: WAAICommon.AIThreadInfo.AIThreadServerInfo
+ (*BotFeedbackMessage_SideBySideSurveyMetadata)(nil), // 95: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData)(nil), // 96: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SideBySideSurveyAnalyticsData)(nil), // 97: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SideBySideSurveyAnalyticsData
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyAbandonEventData)(nil), // 98: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyAbandonEventData
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyResponseEventData)(nil), // 99: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyResponseEventData
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCardImpressionEventData)(nil), // 100: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCardImpressionEventData
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAClickEventData)(nil), // 101: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCTAClickEventData
+ (*BotFeedbackMessage_SideBySideSurveyMetadata_SidebySideSurveyMetaAiAnalyticsData_SideBySideSurveyCTAImpressionEventData)(nil), // 102: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCTAImpressionEventData
+ (*AIRichResponseCodeMetadata_AIRichResponseCodeBlock)(nil), // 103: WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeBlock
+ (*AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata)(nil), // 104: WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseContentItemMetadata
+ (*AIRichResponseContentItemsMetadata_AIRichResponseReelItem)(nil), // 105: WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseReelItem
+ (*AIHomeState_AIHomeOption)(nil), // 106: WAAICommon.AIHomeState.AIHomeOption
+ (*BotRenderingMetadata_Keyword)(nil), // 107: WAAICommon.BotRenderingMetadata.Keyword
+ (*InThreadSurveyMetadata_InThreadSurveyPrivacyStatementPart)(nil), // 108: WAAICommon.InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPart
+ (*InThreadSurveyMetadata_InThreadSurveyOption)(nil), // 109: WAAICommon.InThreadSurveyMetadata.InThreadSurveyOption
+ (*InThreadSurveyMetadata_InThreadSurveyQuestion)(nil), // 110: WAAICommon.InThreadSurveyMetadata.InThreadSurveyQuestion
+ (*BotUnifiedResponseMutation_MediaDetailsMetadata)(nil), // 111: WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata
+ (*BotUnifiedResponseMutation_SideBySideMetadata)(nil), // 112: WAAICommon.BotUnifiedResponseMutation.SideBySideMetadata
+ (*AIRichResponseTableMetadata_AIRichResponseTableRow)(nil), // 113: WAAICommon.AIRichResponseTableMetadata.AIRichResponseTableRow
+ (*AIRichResponseLatexMetadata_AIRichResponseLatexExpression)(nil), // 114: WAAICommon.AIRichResponseLatexMetadata.AIRichResponseLatexExpression
+ (*AIRichResponseMapMetadata_AIRichResponseMapAnnotation)(nil), // 115: WAAICommon.AIRichResponseMapMetadata.AIRichResponseMapAnnotation
+ (*waCommon.MessageKey)(nil), // 116: WACommon.MessageKey
}
var file_waAICommon_WAAICommon_proto_depIdxs = []int32{
- 6, // 0: WAAICommon.BotPluginMetadata.provider:type_name -> WAAICommon.BotPluginMetadata.SearchProvider
- 5, // 1: WAAICommon.BotPluginMetadata.pluginType:type_name -> WAAICommon.BotPluginMetadata.PluginType
- 102, // 2: WAAICommon.BotPluginMetadata.parentPluginMessageKey:type_name -> WACommon.MessageKey
- 5, // 3: WAAICommon.BotPluginMetadata.deprecatedField:type_name -> WAAICommon.BotPluginMetadata.PluginType
- 5, // 4: WAAICommon.BotPluginMetadata.parentPluginType:type_name -> WAAICommon.BotPluginMetadata.PluginType
- 7, // 5: WAAICommon.BotLinkedAccount.type:type_name -> WAAICommon.BotLinkedAccount.BotLinkedAccountType
- 8, // 6: WAAICommon.BotSignatureVerificationUseCaseProof.useCase:type_name -> WAAICommon.BotSignatureVerificationUseCaseProof.BotSignatureUseCase
- 9, // 7: WAAICommon.BotPromotionMessageMetadata.promotionType:type_name -> WAAICommon.BotPromotionMessageMetadata.BotPromotionType
- 10, // 8: WAAICommon.BotMediaMetadata.orientationType:type_name -> WAAICommon.BotMediaMetadata.OrientationType
- 102, // 9: WAAICommon.BotReminderMetadata.requestMessageKey:type_name -> WACommon.MessageKey
- 12, // 10: WAAICommon.BotReminderMetadata.action:type_name -> WAAICommon.BotReminderMetadata.ReminderAction
- 11, // 11: WAAICommon.BotReminderMetadata.frequency:type_name -> WAAICommon.BotReminderMetadata.ReminderFrequency
- 14, // 12: WAAICommon.BotModelMetadata.modelType:type_name -> WAAICommon.BotModelMetadata.ModelType
- 13, // 13: WAAICommon.BotModelMetadata.premiumModelStatus:type_name -> WAAICommon.BotModelMetadata.PremiumModelStatus
- 80, // 14: WAAICommon.BotProgressIndicatorMetadata.stepsMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata
- 18, // 15: WAAICommon.BotCapabilityMetadata.capabilities:type_name -> WAAICommon.BotCapabilityMetadata.BotCapabilityType
- 19, // 16: WAAICommon.BotModeSelectionMetadata.mode:type_name -> WAAICommon.BotModeSelectionMetadata.BotUserSelectionMode
- 84, // 17: WAAICommon.BotQuotaMetadata.botFeatureQuotaMetadata:type_name -> WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata
- 21, // 18: WAAICommon.BotImagineMetadata.imagineType:type_name -> WAAICommon.BotImagineMetadata.ImagineType
- 22, // 19: WAAICommon.BotAgeCollectionMetadata.ageCollectionType:type_name -> WAAICommon.BotAgeCollectionMetadata.AgeCollectionType
- 85, // 20: WAAICommon.BotSourcesMetadata.sources:type_name -> WAAICommon.BotSourcesMetadata.BotSourceItem
- 24, // 21: WAAICommon.BotMessageOrigin.type:type_name -> WAAICommon.BotMessageOrigin.BotMessageOriginType
- 87, // 22: WAAICommon.AIThreadInfo.serverInfo:type_name -> WAAICommon.AIThreadInfo.AIThreadServerInfo
- 86, // 23: WAAICommon.AIThreadInfo.clientInfo:type_name -> WAAICommon.AIThreadInfo.AIThreadClientInfo
- 102, // 24: WAAICommon.BotFeedbackMessage.messageKey:type_name -> WACommon.MessageKey
- 29, // 25: WAAICommon.BotFeedbackMessage.kind:type_name -> WAAICommon.BotFeedbackMessage.BotFeedbackKind
- 26, // 26: WAAICommon.BotFeedbackMessage.kindReport:type_name -> WAAICommon.BotFeedbackMessage.ReportKind
- 88, // 27: WAAICommon.BotFeedbackMessage.sideBySideSurveyMetadata:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata
- 73, // 28: WAAICommon.AIRichResponseInlineImageMetadata.imageURL:type_name -> WAAICommon.AIRichResponseImageURL
- 30, // 29: WAAICommon.AIRichResponseInlineImageMetadata.alignment:type_name -> WAAICommon.AIRichResponseInlineImageMetadata.AIRichResponseImageAlignment
- 90, // 30: WAAICommon.AIRichResponseCodeMetadata.codeBlocks:type_name -> WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeBlock
- 32, // 31: WAAICommon.AIRichResponseDynamicMetadata.type:type_name -> WAAICommon.AIRichResponseDynamicMetadata.AIRichResponseDynamicMetadataType
- 91, // 32: WAAICommon.AIRichResponseContentItemsMetadata.itemsMetadata:type_name -> WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseContentItemMetadata
- 33, // 33: WAAICommon.AIRichResponseContentItemsMetadata.contentType:type_name -> WAAICommon.AIRichResponseContentItemsMetadata.ContentType
- 57, // 34: WAAICommon.BotSuggestedPromptMetadata.promptSuggestions:type_name -> WAAICommon.BotPromptSuggestions
- 58, // 35: WAAICommon.BotPromptSuggestions.suggestions:type_name -> WAAICommon.BotPromptSuggestion
- 35, // 36: WAAICommon.BotLinkedAccountsMetadata.accounts:type_name -> WAAICommon.BotLinkedAccount
- 61, // 37: WAAICommon.BotMemoryMetadata.addedFacts:type_name -> WAAICommon.BotMemoryFact
- 61, // 38: WAAICommon.BotMemoryMetadata.removedFacts:type_name -> WAAICommon.BotMemoryFact
- 36, // 39: WAAICommon.BotSignatureVerificationMetadata.proofs:type_name -> WAAICommon.BotSignatureVerificationUseCaseProof
- 93, // 40: WAAICommon.BotRenderingMetadata.keywords:type_name -> WAAICommon.BotRenderingMetadata.Keyword
- 0, // 41: WAAICommon.BotMetricsMetadata.destinationEntryPoint:type_name -> WAAICommon.BotMetricsEntryPoint
- 1, // 42: WAAICommon.BotMetricsMetadata.threadOrigin:type_name -> WAAICommon.BotMetricsThreadEntryPoint
- 2, // 43: WAAICommon.BotSessionMetadata.sessionSource:type_name -> WAAICommon.BotSessionSource
- 38, // 44: WAAICommon.BotMemuMetadata.faceImages:type_name -> WAAICommon.BotMediaMetadata
- 96, // 45: WAAICommon.InThreadSurveyMetadata.questions:type_name -> WAAICommon.InThreadSurveyMetadata.InThreadSurveyQuestion
- 94, // 46: WAAICommon.InThreadSurveyMetadata.privacyStatementParts:type_name -> WAAICommon.InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPart
- 48, // 47: WAAICommon.BotMessageOriginMetadata.origins:type_name -> WAAICommon.BotMessageOrigin
- 98, // 48: WAAICommon.BotUnifiedResponseMutation.sbsMetadata:type_name -> WAAICommon.BotUnifiedResponseMutation.SideBySideMetadata
- 97, // 49: WAAICommon.BotUnifiedResponseMutation.mediaDetailsMetadataList:type_name -> WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata
- 55, // 50: WAAICommon.BotMetadata.avatarMetadata:type_name -> WAAICommon.BotAvatarMetadata
- 34, // 51: WAAICommon.BotMetadata.pluginMetadata:type_name -> WAAICommon.BotPluginMetadata
- 56, // 52: WAAICommon.BotMetadata.suggestedPromptMetadata:type_name -> WAAICommon.BotSuggestedPromptMetadata
- 65, // 53: WAAICommon.BotMetadata.sessionMetadata:type_name -> WAAICommon.BotSessionMetadata
- 66, // 54: WAAICommon.BotMetadata.memuMetadata:type_name -> WAAICommon.BotMemuMetadata
- 39, // 55: WAAICommon.BotMetadata.reminderMetadata:type_name -> WAAICommon.BotReminderMetadata
- 40, // 56: WAAICommon.BotMetadata.modelMetadata:type_name -> WAAICommon.BotModelMetadata
- 41, // 57: WAAICommon.BotMetadata.progressIndicatorMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata
- 42, // 58: WAAICommon.BotMetadata.capabilityMetadata:type_name -> WAAICommon.BotCapabilityMetadata
- 45, // 59: WAAICommon.BotMetadata.imagineMetadata:type_name -> WAAICommon.BotImagineMetadata
- 60, // 60: WAAICommon.BotMetadata.memoryMetadata:type_name -> WAAICommon.BotMemoryMetadata
- 63, // 61: WAAICommon.BotMetadata.renderingMetadata:type_name -> WAAICommon.BotRenderingMetadata
- 64, // 62: WAAICommon.BotMetadata.botMetricsMetadata:type_name -> WAAICommon.BotMetricsMetadata
- 59, // 63: WAAICommon.BotMetadata.botLinkedAccountsMetadata:type_name -> WAAICommon.BotLinkedAccountsMetadata
- 47, // 64: WAAICommon.BotMetadata.richResponseSourcesMetadata:type_name -> WAAICommon.BotSourcesMetadata
- 37, // 65: WAAICommon.BotMetadata.botPromotionMessageMetadata:type_name -> WAAICommon.BotPromotionMessageMetadata
- 43, // 66: WAAICommon.BotMetadata.botModeSelectionMetadata:type_name -> WAAICommon.BotModeSelectionMetadata
- 44, // 67: WAAICommon.BotMetadata.botQuotaMetadata:type_name -> WAAICommon.BotQuotaMetadata
- 46, // 68: WAAICommon.BotMetadata.botAgeCollectionMetadata:type_name -> WAAICommon.BotAgeCollectionMetadata
- 62, // 69: WAAICommon.BotMetadata.verificationMetadata:type_name -> WAAICommon.BotSignatureVerificationMetadata
- 69, // 70: WAAICommon.BotMetadata.unifiedResponseMutation:type_name -> WAAICommon.BotUnifiedResponseMutation
- 68, // 71: WAAICommon.BotMetadata.botMessageOriginMetadata:type_name -> WAAICommon.BotMessageOriginMetadata
- 67, // 72: WAAICommon.BotMetadata.inThreadSurveyMetadata:type_name -> WAAICommon.InThreadSurveyMetadata
- 49, // 73: WAAICommon.BotMetadata.botThreadInfo:type_name -> WAAICommon.AIThreadInfo
- 0, // 74: WAAICommon.BotMessageSharingInfo.botEntryPointOrigin:type_name -> WAAICommon.BotMetricsEntryPoint
- 73, // 75: WAAICommon.AIRichResponseGridImageMetadata.gridImageURL:type_name -> WAAICommon.AIRichResponseImageURL
- 73, // 76: WAAICommon.AIRichResponseGridImageMetadata.imageURLs:type_name -> WAAICommon.AIRichResponseImageURL
- 99, // 77: WAAICommon.AIRichResponseTableMetadata.rows:type_name -> WAAICommon.AIRichResponseTableMetadata.AIRichResponseTableRow
- 100, // 78: WAAICommon.AIRichResponseLatexMetadata.expressions:type_name -> WAAICommon.AIRichResponseLatexMetadata.AIRichResponseLatexExpression
- 101, // 79: WAAICommon.AIRichResponseMapMetadata.annotations:type_name -> WAAICommon.AIRichResponseMapMetadata.AIRichResponseMapAnnotation
- 4, // 80: WAAICommon.AIRichResponseSubMessage.messageType:type_name -> WAAICommon.AIRichResponseSubMessageType
- 74, // 81: WAAICommon.AIRichResponseSubMessage.gridImageMetadata:type_name -> WAAICommon.AIRichResponseGridImageMetadata
- 51, // 82: WAAICommon.AIRichResponseSubMessage.imageMetadata:type_name -> WAAICommon.AIRichResponseInlineImageMetadata
- 52, // 83: WAAICommon.AIRichResponseSubMessage.codeMetadata:type_name -> WAAICommon.AIRichResponseCodeMetadata
- 75, // 84: WAAICommon.AIRichResponseSubMessage.tableMetadata:type_name -> WAAICommon.AIRichResponseTableMetadata
- 53, // 85: WAAICommon.AIRichResponseSubMessage.dynamicMetadata:type_name -> WAAICommon.AIRichResponseDynamicMetadata
- 77, // 86: WAAICommon.AIRichResponseSubMessage.latexMetadata:type_name -> WAAICommon.AIRichResponseLatexMetadata
- 78, // 87: WAAICommon.AIRichResponseSubMessage.mapMetadata:type_name -> WAAICommon.AIRichResponseMapMetadata
- 54, // 88: WAAICommon.AIRichResponseSubMessage.contentItemsMetadata:type_name -> WAAICommon.AIRichResponseContentItemsMetadata
- 81, // 89: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.sourcesMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata
- 16, // 90: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.status:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus
- 82, // 91: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.sections:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata
- 17, // 92: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.provider:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider
- 83, // 93: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata.sourcesMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata
- 15, // 94: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata.provider:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider
- 20, // 95: WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata.featureType:type_name -> WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType
- 23, // 96: WAAICommon.BotSourcesMetadata.BotSourceItem.provider:type_name -> WAAICommon.BotSourcesMetadata.BotSourceItem.SourceProvider
- 25, // 97: WAAICommon.AIThreadInfo.AIThreadClientInfo.type:type_name -> WAAICommon.AIThreadInfo.AIThreadClientInfo.AIThreadType
- 89, // 98: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.analyticsData:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SideBySideSurveyAnalyticsData
- 31, // 99: WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeBlock.highlightType:type_name -> WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeHighlightType
- 92, // 100: WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseContentItemMetadata.reelItem:type_name -> WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseReelItem
- 95, // 101: WAAICommon.InThreadSurveyMetadata.InThreadSurveyQuestion.questionOptions:type_name -> WAAICommon.InThreadSurveyMetadata.InThreadSurveyOption
- 38, // 102: WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata.highResMedia:type_name -> WAAICommon.BotMediaMetadata
- 38, // 103: WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata.previewMedia:type_name -> WAAICommon.BotMediaMetadata
- 104, // [104:104] is the sub-list for method output_type
- 104, // [104:104] is the sub-list for method input_type
- 104, // [104:104] is the sub-list for extension type_name
- 104, // [104:104] is the sub-list for extension extendee
- 0, // [0:104] is the sub-list for field type_name
+ 7, // 0: WAAICommon.BotPluginMetadata.provider:type_name -> WAAICommon.BotPluginMetadata.SearchProvider
+ 6, // 1: WAAICommon.BotPluginMetadata.pluginType:type_name -> WAAICommon.BotPluginMetadata.PluginType
+ 116, // 2: WAAICommon.BotPluginMetadata.parentPluginMessageKey:type_name -> WACommon.MessageKey
+ 6, // 3: WAAICommon.BotPluginMetadata.deprecatedField:type_name -> WAAICommon.BotPluginMetadata.PluginType
+ 6, // 4: WAAICommon.BotPluginMetadata.parentPluginType:type_name -> WAAICommon.BotPluginMetadata.PluginType
+ 8, // 5: WAAICommon.BotLinkedAccount.type:type_name -> WAAICommon.BotLinkedAccount.BotLinkedAccountType
+ 9, // 6: WAAICommon.BotSignatureVerificationUseCaseProof.useCase:type_name -> WAAICommon.BotSignatureVerificationUseCaseProof.BotSignatureUseCase
+ 10, // 7: WAAICommon.BotPromotionMessageMetadata.promotionType:type_name -> WAAICommon.BotPromotionMessageMetadata.BotPromotionType
+ 11, // 8: WAAICommon.BotMediaMetadata.orientationType:type_name -> WAAICommon.BotMediaMetadata.OrientationType
+ 116, // 9: WAAICommon.BotReminderMetadata.requestMessageKey:type_name -> WACommon.MessageKey
+ 13, // 10: WAAICommon.BotReminderMetadata.action:type_name -> WAAICommon.BotReminderMetadata.ReminderAction
+ 12, // 11: WAAICommon.BotReminderMetadata.frequency:type_name -> WAAICommon.BotReminderMetadata.ReminderFrequency
+ 15, // 12: WAAICommon.BotModelMetadata.modelType:type_name -> WAAICommon.BotModelMetadata.ModelType
+ 14, // 13: WAAICommon.BotModelMetadata.premiumModelStatus:type_name -> WAAICommon.BotModelMetadata.PremiumModelStatus
+ 87, // 14: WAAICommon.BotProgressIndicatorMetadata.stepsMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata
+ 19, // 15: WAAICommon.BotCapabilityMetadata.capabilities:type_name -> WAAICommon.BotCapabilityMetadata.BotCapabilityType
+ 20, // 16: WAAICommon.BotModeSelectionMetadata.mode:type_name -> WAAICommon.BotModeSelectionMetadata.BotUserSelectionMode
+ 91, // 17: WAAICommon.BotQuotaMetadata.botFeatureQuotaMetadata:type_name -> WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata
+ 22, // 18: WAAICommon.BotImagineMetadata.imagineType:type_name -> WAAICommon.BotImagineMetadata.ImagineType
+ 23, // 19: WAAICommon.BotAgeCollectionMetadata.ageCollectionType:type_name -> WAAICommon.BotAgeCollectionMetadata.AgeCollectionType
+ 92, // 20: WAAICommon.BotSourcesMetadata.sources:type_name -> WAAICommon.BotSourcesMetadata.BotSourceItem
+ 25, // 21: WAAICommon.BotMessageOrigin.type:type_name -> WAAICommon.BotMessageOrigin.BotMessageOriginType
+ 94, // 22: WAAICommon.AIThreadInfo.serverInfo:type_name -> WAAICommon.AIThreadInfo.AIThreadServerInfo
+ 93, // 23: WAAICommon.AIThreadInfo.clientInfo:type_name -> WAAICommon.AIThreadInfo.AIThreadClientInfo
+ 116, // 24: WAAICommon.BotFeedbackMessage.messageKey:type_name -> WACommon.MessageKey
+ 30, // 25: WAAICommon.BotFeedbackMessage.kind:type_name -> WAAICommon.BotFeedbackMessage.BotFeedbackKind
+ 27, // 26: WAAICommon.BotFeedbackMessage.kindReport:type_name -> WAAICommon.BotFeedbackMessage.ReportKind
+ 95, // 27: WAAICommon.BotFeedbackMessage.sideBySideSurveyMetadata:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata
+ 78, // 28: WAAICommon.AIRichResponseInlineImageMetadata.imageURL:type_name -> WAAICommon.AIRichResponseImageURL
+ 31, // 29: WAAICommon.AIRichResponseInlineImageMetadata.alignment:type_name -> WAAICommon.AIRichResponseInlineImageMetadata.AIRichResponseImageAlignment
+ 103, // 30: WAAICommon.AIRichResponseCodeMetadata.codeBlocks:type_name -> WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeBlock
+ 33, // 31: WAAICommon.AIRichResponseDynamicMetadata.type:type_name -> WAAICommon.AIRichResponseDynamicMetadata.AIRichResponseDynamicMetadataType
+ 104, // 32: WAAICommon.AIRichResponseContentItemsMetadata.itemsMetadata:type_name -> WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseContentItemMetadata
+ 34, // 33: WAAICommon.AIRichResponseContentItemsMetadata.contentType:type_name -> WAAICommon.AIRichResponseContentItemsMetadata.ContentType
+ 35, // 34: WAAICommon.BotDocumentMessageMetadata.pluginType:type_name -> WAAICommon.BotDocumentMessageMetadata.DocumentPluginType
+ 106, // 35: WAAICommon.AIHomeState.capabilityOptions:type_name -> WAAICommon.AIHomeState.AIHomeOption
+ 106, // 36: WAAICommon.AIHomeState.conversationOptions:type_name -> WAAICommon.AIHomeState.AIHomeOption
+ 62, // 37: WAAICommon.BotSuggestedPromptMetadata.promptSuggestions:type_name -> WAAICommon.BotPromptSuggestions
+ 63, // 38: WAAICommon.BotPromptSuggestions.suggestions:type_name -> WAAICommon.BotPromptSuggestion
+ 38, // 39: WAAICommon.BotLinkedAccountsMetadata.accounts:type_name -> WAAICommon.BotLinkedAccount
+ 66, // 40: WAAICommon.BotMemoryMetadata.addedFacts:type_name -> WAAICommon.BotMemoryFact
+ 66, // 41: WAAICommon.BotMemoryMetadata.removedFacts:type_name -> WAAICommon.BotMemoryFact
+ 39, // 42: WAAICommon.BotSignatureVerificationMetadata.proofs:type_name -> WAAICommon.BotSignatureVerificationUseCaseProof
+ 107, // 43: WAAICommon.BotRenderingMetadata.keywords:type_name -> WAAICommon.BotRenderingMetadata.Keyword
+ 0, // 44: WAAICommon.BotMetricsMetadata.destinationEntryPoint:type_name -> WAAICommon.BotMetricsEntryPoint
+ 1, // 45: WAAICommon.BotMetricsMetadata.threadOrigin:type_name -> WAAICommon.BotMetricsThreadEntryPoint
+ 2, // 46: WAAICommon.BotSessionMetadata.sessionSource:type_name -> WAAICommon.BotSessionSource
+ 41, // 47: WAAICommon.BotMemuMetadata.faceImages:type_name -> WAAICommon.BotMediaMetadata
+ 110, // 48: WAAICommon.InThreadSurveyMetadata.questions:type_name -> WAAICommon.InThreadSurveyMetadata.InThreadSurveyQuestion
+ 108, // 49: WAAICommon.InThreadSurveyMetadata.privacyStatementParts:type_name -> WAAICommon.InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPart
+ 51, // 50: WAAICommon.BotMessageOriginMetadata.origins:type_name -> WAAICommon.BotMessageOrigin
+ 112, // 51: WAAICommon.BotUnifiedResponseMutation.sbsMetadata:type_name -> WAAICommon.BotUnifiedResponseMutation.SideBySideMetadata
+ 111, // 52: WAAICommon.BotUnifiedResponseMutation.mediaDetailsMetadataList:type_name -> WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata
+ 60, // 53: WAAICommon.BotMetadata.avatarMetadata:type_name -> WAAICommon.BotAvatarMetadata
+ 37, // 54: WAAICommon.BotMetadata.pluginMetadata:type_name -> WAAICommon.BotPluginMetadata
+ 61, // 55: WAAICommon.BotMetadata.suggestedPromptMetadata:type_name -> WAAICommon.BotSuggestedPromptMetadata
+ 70, // 56: WAAICommon.BotMetadata.sessionMetadata:type_name -> WAAICommon.BotSessionMetadata
+ 71, // 57: WAAICommon.BotMetadata.memuMetadata:type_name -> WAAICommon.BotMemuMetadata
+ 42, // 58: WAAICommon.BotMetadata.reminderMetadata:type_name -> WAAICommon.BotReminderMetadata
+ 43, // 59: WAAICommon.BotMetadata.modelMetadata:type_name -> WAAICommon.BotModelMetadata
+ 44, // 60: WAAICommon.BotMetadata.progressIndicatorMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata
+ 45, // 61: WAAICommon.BotMetadata.capabilityMetadata:type_name -> WAAICommon.BotCapabilityMetadata
+ 48, // 62: WAAICommon.BotMetadata.imagineMetadata:type_name -> WAAICommon.BotImagineMetadata
+ 65, // 63: WAAICommon.BotMetadata.memoryMetadata:type_name -> WAAICommon.BotMemoryMetadata
+ 68, // 64: WAAICommon.BotMetadata.renderingMetadata:type_name -> WAAICommon.BotRenderingMetadata
+ 69, // 65: WAAICommon.BotMetadata.botMetricsMetadata:type_name -> WAAICommon.BotMetricsMetadata
+ 64, // 66: WAAICommon.BotMetadata.botLinkedAccountsMetadata:type_name -> WAAICommon.BotLinkedAccountsMetadata
+ 50, // 67: WAAICommon.BotMetadata.richResponseSourcesMetadata:type_name -> WAAICommon.BotSourcesMetadata
+ 40, // 68: WAAICommon.BotMetadata.botPromotionMessageMetadata:type_name -> WAAICommon.BotPromotionMessageMetadata
+ 46, // 69: WAAICommon.BotMetadata.botModeSelectionMetadata:type_name -> WAAICommon.BotModeSelectionMetadata
+ 47, // 70: WAAICommon.BotMetadata.botQuotaMetadata:type_name -> WAAICommon.BotQuotaMetadata
+ 49, // 71: WAAICommon.BotMetadata.botAgeCollectionMetadata:type_name -> WAAICommon.BotAgeCollectionMetadata
+ 67, // 72: WAAICommon.BotMetadata.verificationMetadata:type_name -> WAAICommon.BotSignatureVerificationMetadata
+ 74, // 73: WAAICommon.BotMetadata.unifiedResponseMutation:type_name -> WAAICommon.BotUnifiedResponseMutation
+ 73, // 74: WAAICommon.BotMetadata.botMessageOriginMetadata:type_name -> WAAICommon.BotMessageOriginMetadata
+ 72, // 75: WAAICommon.BotMetadata.inThreadSurveyMetadata:type_name -> WAAICommon.InThreadSurveyMetadata
+ 52, // 76: WAAICommon.BotMetadata.botThreadInfo:type_name -> WAAICommon.AIThreadInfo
+ 85, // 77: WAAICommon.BotMetadata.regenerateMetadata:type_name -> WAAICommon.AIRegenerateMetadata
+ 86, // 78: WAAICommon.BotMetadata.sessionTransparencyMetadata:type_name -> WAAICommon.SessionTransparencyMetadata
+ 58, // 79: WAAICommon.BotMetadata.botDocumentMessageMetadata:type_name -> WAAICommon.BotDocumentMessageMetadata
+ 0, // 80: WAAICommon.BotMessageSharingInfo.botEntryPointOrigin:type_name -> WAAICommon.BotMetricsEntryPoint
+ 78, // 81: WAAICommon.AIRichResponseGridImageMetadata.gridImageURL:type_name -> WAAICommon.AIRichResponseImageURL
+ 78, // 82: WAAICommon.AIRichResponseGridImageMetadata.imageURLs:type_name -> WAAICommon.AIRichResponseImageURL
+ 113, // 83: WAAICommon.AIRichResponseTableMetadata.rows:type_name -> WAAICommon.AIRichResponseTableMetadata.AIRichResponseTableRow
+ 114, // 84: WAAICommon.AIRichResponseLatexMetadata.expressions:type_name -> WAAICommon.AIRichResponseLatexMetadata.AIRichResponseLatexExpression
+ 115, // 85: WAAICommon.AIRichResponseMapMetadata.annotations:type_name -> WAAICommon.AIRichResponseMapMetadata.AIRichResponseMapAnnotation
+ 4, // 86: WAAICommon.AIRichResponseSubMessage.messageType:type_name -> WAAICommon.AIRichResponseSubMessageType
+ 79, // 87: WAAICommon.AIRichResponseSubMessage.gridImageMetadata:type_name -> WAAICommon.AIRichResponseGridImageMetadata
+ 54, // 88: WAAICommon.AIRichResponseSubMessage.imageMetadata:type_name -> WAAICommon.AIRichResponseInlineImageMetadata
+ 55, // 89: WAAICommon.AIRichResponseSubMessage.codeMetadata:type_name -> WAAICommon.AIRichResponseCodeMetadata
+ 80, // 90: WAAICommon.AIRichResponseSubMessage.tableMetadata:type_name -> WAAICommon.AIRichResponseTableMetadata
+ 56, // 91: WAAICommon.AIRichResponseSubMessage.dynamicMetadata:type_name -> WAAICommon.AIRichResponseDynamicMetadata
+ 82, // 92: WAAICommon.AIRichResponseSubMessage.latexMetadata:type_name -> WAAICommon.AIRichResponseLatexMetadata
+ 83, // 93: WAAICommon.AIRichResponseSubMessage.mapMetadata:type_name -> WAAICommon.AIRichResponseMapMetadata
+ 57, // 94: WAAICommon.AIRichResponseSubMessage.contentItemsMetadata:type_name -> WAAICommon.AIRichResponseContentItemsMetadata
+ 116, // 95: WAAICommon.AIRegenerateMetadata.messageKey:type_name -> WACommon.MessageKey
+ 5, // 96: WAAICommon.SessionTransparencyMetadata.sessionTransparencyType:type_name -> WAAICommon.SessionTransparencyType
+ 88, // 97: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.sourcesMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata
+ 17, // 98: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.status:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus
+ 89, // 99: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.sections:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata
+ 18, // 100: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.provider:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider
+ 90, // 101: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata.sourcesMetadata:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata
+ 16, // 102: WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata.provider:type_name -> WAAICommon.BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider
+ 21, // 103: WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata.featureType:type_name -> WAAICommon.BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType
+ 24, // 104: WAAICommon.BotSourcesMetadata.BotSourceItem.provider:type_name -> WAAICommon.BotSourcesMetadata.BotSourceItem.SourceProvider
+ 26, // 105: WAAICommon.AIThreadInfo.AIThreadClientInfo.type:type_name -> WAAICommon.AIThreadInfo.AIThreadClientInfo.AIThreadType
+ 97, // 106: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.analyticsData:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SideBySideSurveyAnalyticsData
+ 96, // 107: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.metaAiAnalyticsData:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData
+ 102, // 108: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.ctaImpressionEvent:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCTAImpressionEventData
+ 101, // 109: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.ctaClickEvent:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCTAClickEventData
+ 100, // 110: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.cardImpressionEvent:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyCardImpressionEventData
+ 99, // 111: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.responseEvent:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyResponseEventData
+ 98, // 112: WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.abandonEvent:type_name -> WAAICommon.BotFeedbackMessage.SideBySideSurveyMetadata.SidebySideSurveyMetaAiAnalyticsData.SideBySideSurveyAbandonEventData
+ 32, // 113: WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeBlock.highlightType:type_name -> WAAICommon.AIRichResponseCodeMetadata.AIRichResponseCodeHighlightType
+ 105, // 114: WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseContentItemMetadata.reelItem:type_name -> WAAICommon.AIRichResponseContentItemsMetadata.AIRichResponseReelItem
+ 36, // 115: WAAICommon.AIHomeState.AIHomeOption.type:type_name -> WAAICommon.AIHomeState.AIHomeOption.AIHomeActionType
+ 109, // 116: WAAICommon.InThreadSurveyMetadata.InThreadSurveyQuestion.questionOptions:type_name -> WAAICommon.InThreadSurveyMetadata.InThreadSurveyOption
+ 41, // 117: WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata.highResMedia:type_name -> WAAICommon.BotMediaMetadata
+ 41, // 118: WAAICommon.BotUnifiedResponseMutation.MediaDetailsMetadata.previewMedia:type_name -> WAAICommon.BotMediaMetadata
+ 119, // [119:119] is the sub-list for method output_type
+ 119, // [119:119] is the sub-list for method input_type
+ 119, // [119:119] is the sub-list for extension type_name
+ 119, // [119:119] is the sub-list for extension extendee
+ 0, // [0:119] is the sub-list for field type_name
}
func init() { file_waAICommon_WAAICommon_proto_init() }
@@ -7723,7 +8732,7 @@ func file_waAICommon_WAAICommon_proto_init() {
if File_waAICommon_WAAICommon_proto != nil {
return
}
- file_waAICommon_WAAICommon_proto_msgTypes[57].OneofWrappers = []any{
+ file_waAICommon_WAAICommon_proto_msgTypes[67].OneofWrappers = []any{
(*AIRichResponseContentItemsMetadata_AIRichResponseContentItemMetadata_ReelItem)(nil),
}
type x struct{}
@@ -7731,8 +8740,8 @@ func file_waAICommon_WAAICommon_proto_init() {
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_waAICommon_WAAICommon_proto_rawDesc), len(file_waAICommon_WAAICommon_proto_rawDesc)),
- NumEnums: 34,
- NumMessages: 68,
+ NumEnums: 37,
+ NumMessages: 79,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.proto b/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.proto
index 38d3f528..bd563d17 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waAICommon/WAAICommon.proto
@@ -42,6 +42,8 @@ enum BotMetricsEntryPoint {
MESSAGE_QUICK_ACTION_GROUP_CHAT = 34;
ATTACHMENT_TRAY_1_ON_1_CHAT = 35;
ATTACHMENT_TRAY_GROUP_CHAT = 36;
+ ASK_META_AI_MEDIA_VIEWER_1ON1 = 37;
+ ASK_META_AI_MEDIA_VIEWER_GROUP = 38;
}
enum BotMetricsThreadEntryPoint {
@@ -80,6 +82,11 @@ enum AIRichResponseSubMessageType {
AI_RICH_RESPONSE_CONTENT_ITEMS = 9;
}
+enum SessionTransparencyType {
+ UNKNOWN_TYPE = 0;
+ NY_AI_SAFETY_DISCLAIMER = 1;
+}
+
message BotPluginMetadata {
enum PluginType {
UNKNOWN_PLUGIN = 0;
@@ -193,6 +200,7 @@ message BotModelMetadata {
optional ModelType modelType = 1;
optional PremiumModelStatus premiumModelStatus = 2;
+ optional string modelNameOverride = 3;
}
message BotProgressIndicatorMetadata {
@@ -298,6 +306,10 @@ message BotCapabilityMetadata {
RICH_RESPONSE_UR_INLINE_REELS_ENABLED = 43;
RICH_RESPONSE_UR_MEDIA_GRID_ENABLED = 44;
RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER = 45;
+ RICH_RESPONSE_IN_APP_SURVEY = 46;
+ AI_RESPONSE_MODEL_BRANDING = 47;
+ SESSION_TRANSPARENCY_SYSTEM_MESSAGE = 48;
+ RICH_RESPONSE_UR_REASONING = 49;
}
repeated BotCapabilityType capabilities = 1;
@@ -440,9 +452,43 @@ message BotFeedbackMessage {
}
message SideBySideSurveyMetadata {
+ message SidebySideSurveyMetaAiAnalyticsData {
+ message SideBySideSurveyAbandonEventData {
+ optional string abandonDwellTimeMSString = 1;
+ }
+
+ message SideBySideSurveyResponseEventData {
+ optional string responseDwellTimeMSString = 1;
+ optional string selectedResponseID = 2;
+ }
+
+ message SideBySideSurveyCardImpressionEventData {
+ }
+
+ message SideBySideSurveyCTAClickEventData {
+ optional bool isSurveyExpired = 1;
+ optional string clickDwellTimeMSString = 2;
+ }
+
+ message SideBySideSurveyCTAImpressionEventData {
+ optional bool isSurveyExpired = 1;
+ }
+
+ optional uint32 surveyID = 1;
+ optional string primaryResponseID = 2;
+ optional string testArmName = 3;
+ optional string timestampMSString = 4;
+ optional SideBySideSurveyCTAImpressionEventData ctaImpressionEvent = 5;
+ optional SideBySideSurveyCTAClickEventData ctaClickEvent = 6;
+ optional SideBySideSurveyCardImpressionEventData cardImpressionEvent = 7;
+ optional SideBySideSurveyResponseEventData responseEvent = 8;
+ optional SideBySideSurveyAbandonEventData abandonEvent = 9;
+ }
+
message SideBySideSurveyAnalyticsData {
optional string tessaEvent = 1;
optional string tessaSessionFbid = 2;
+ optional string simonSessionFbid = 3;
}
optional string selectedRequestID = 1;
@@ -453,6 +499,7 @@ message BotFeedbackMessage {
optional bool isSelectedResponsePrimary = 6;
optional string messageIDToEdit = 7;
optional SideBySideSurveyAnalyticsData analyticsData = 8;
+ optional SidebySideSurveyMetaAiAnalyticsData metaAiAnalyticsData = 9;
}
optional WACommon.MessageKey messageKey = 1;
@@ -532,6 +579,38 @@ message AIRichResponseContentItemsMetadata {
optional ContentType contentType = 2;
}
+message BotDocumentMessageMetadata {
+ enum DocumentPluginType {
+ TEXT_EXTRACTION = 0;
+ OCR_AND_IMAGES = 1;
+ }
+
+ optional DocumentPluginType pluginType = 1;
+}
+
+message AIHomeState {
+ message AIHomeOption {
+ enum AIHomeActionType {
+ PROMPT = 0;
+ CREATE_IMAGE = 1;
+ ANIMATE_PHOTO = 2;
+ ANALYZE_FILE = 3;
+ }
+
+ optional AIHomeActionType type = 1;
+ optional string title = 2;
+ optional string promptText = 3;
+ optional string sessionID = 4;
+ optional string imageWdsIdentifier = 5;
+ optional string imageTintColor = 6;
+ optional string imageBackgroundColor = 7;
+ }
+
+ optional int64 lastFetchTime = 1;
+ repeated AIHomeOption capabilityOptions = 2;
+ repeated AIHomeOption conversationOptions = 3;
+}
+
message BotAvatarMetadata {
optional uint32 sentiment = 1;
optional string behaviorGraph = 2;
@@ -636,6 +715,7 @@ message InThreadSurveyMetadata {
optional string privacyStatementFull = 15;
repeated InThreadSurveyPrivacyStatementPart privacyStatementParts = 16;
optional string feedbackToastText = 17;
+ optional int32 startQuestionIndex = 18;
}
message BotMessageOriginMetadata {
@@ -651,6 +731,7 @@ message BotUnifiedResponseMutation {
message SideBySideMetadata {
optional string primaryResponseID = 1;
+ optional bool surveyCtaHasRendered = 2;
}
optional SideBySideMetadata sbsMetadata = 1;
@@ -689,6 +770,9 @@ message BotMetadata {
optional BotMessageOriginMetadata botMessageOriginMetadata = 29;
optional InThreadSurveyMetadata inThreadSurveyMetadata = 30;
optional AIThreadInfo botThreadInfo = 31;
+ optional AIRegenerateMetadata regenerateMetadata = 32;
+ optional SessionTransparencyMetadata sessionTransparencyMetadata = 33;
+ optional BotDocumentMessageMetadata botDocumentMessageMetadata = 34;
optional bytes internalMetadata = 999;
}
@@ -774,3 +858,14 @@ message AIRichResponseSubMessage {
optional AIRichResponseMapMetadata mapMetadata = 9;
optional AIRichResponseContentItemsMetadata contentItemsMetadata = 10;
}
+
+message AIRegenerateMetadata {
+ optional WACommon.MessageKey messageKey = 1;
+ optional int64 responseTimestampMS = 2;
+}
+
+message SessionTransparencyMetadata {
+ optional string disclaimerText = 1;
+ optional string hcaID = 2;
+ optional SessionTransparencyType sessionTransparencyType = 3;
+}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.go
deleted file mode 100644
index a660a650..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.go
+++ /dev/null
@@ -1,138 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// versions:
-// protoc-gen-go v1.36.10
-// protoc v3.21.12
-// source: waChatLockSettings/WAProtobufsChatLockSettings.proto
-
-package waChatLockSettings
-
-import (
- reflect "reflect"
- sync "sync"
- unsafe "unsafe"
-
- protoreflect "google.golang.org/protobuf/reflect/protoreflect"
- protoimpl "google.golang.org/protobuf/runtime/protoimpl"
-
- waUserPassword "go.mau.fi/whatsmeow/proto/waUserPassword"
-)
-
-const (
- // Verify that this generated code is sufficiently up-to-date.
- _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
- // Verify that runtime/protoimpl is sufficiently up-to-date.
- _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
-)
-
-type ChatLockSettings struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- HideLockedChats *bool `protobuf:"varint,1,opt,name=hideLockedChats" json:"hideLockedChats,omitempty"`
- SecretCode *waUserPassword.UserPassword `protobuf:"bytes,2,opt,name=secretCode" json:"secretCode,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *ChatLockSettings) Reset() {
- *x = ChatLockSettings{}
- mi := &file_waChatLockSettings_WAProtobufsChatLockSettings_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *ChatLockSettings) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ChatLockSettings) ProtoMessage() {}
-
-func (x *ChatLockSettings) ProtoReflect() protoreflect.Message {
- mi := &file_waChatLockSettings_WAProtobufsChatLockSettings_proto_msgTypes[0]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use ChatLockSettings.ProtoReflect.Descriptor instead.
-func (*ChatLockSettings) Descriptor() ([]byte, []int) {
- return file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescGZIP(), []int{0}
-}
-
-func (x *ChatLockSettings) GetHideLockedChats() bool {
- if x != nil && x.HideLockedChats != nil {
- return *x.HideLockedChats
- }
- return false
-}
-
-func (x *ChatLockSettings) GetSecretCode() *waUserPassword.UserPassword {
- if x != nil {
- return x.SecretCode
- }
- return nil
-}
-
-var File_waChatLockSettings_WAProtobufsChatLockSettings_proto protoreflect.FileDescriptor
-
-const file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDesc = "" +
- "\n" +
- "4waChatLockSettings/WAProtobufsChatLockSettings.proto\x12\x1bWAProtobufsChatLockSettings\x1a,waUserPassword/WAProtobufsUserPassword.proto\"\x83\x01\n" +
- "\x10ChatLockSettings\x12(\n" +
- "\x0fhideLockedChats\x18\x01 \x01(\bR\x0fhideLockedChats\x12E\n" +
- "\n" +
- "secretCode\x18\x02 \x01(\v2%.WAProtobufsUserPassword.UserPasswordR\n" +
- "secretCodeB.Z,go.mau.fi/whatsmeow/proto/waChatLockSettings"
-
-var (
- file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescOnce sync.Once
- file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescData []byte
-)
-
-func file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescGZIP() []byte {
- file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescOnce.Do(func() {
- file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDesc), len(file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDesc)))
- })
- return file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDescData
-}
-
-var file_waChatLockSettings_WAProtobufsChatLockSettings_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_waChatLockSettings_WAProtobufsChatLockSettings_proto_goTypes = []any{
- (*ChatLockSettings)(nil), // 0: WAProtobufsChatLockSettings.ChatLockSettings
- (*waUserPassword.UserPassword)(nil), // 1: WAProtobufsUserPassword.UserPassword
-}
-var file_waChatLockSettings_WAProtobufsChatLockSettings_proto_depIdxs = []int32{
- 1, // 0: WAProtobufsChatLockSettings.ChatLockSettings.secretCode:type_name -> WAProtobufsUserPassword.UserPassword
- 1, // [1:1] is the sub-list for method output_type
- 1, // [1:1] is the sub-list for method input_type
- 1, // [1:1] is the sub-list for extension type_name
- 1, // [1:1] is the sub-list for extension extendee
- 0, // [0:1] is the sub-list for field type_name
-}
-
-func init() { file_waChatLockSettings_WAProtobufsChatLockSettings_proto_init() }
-func file_waChatLockSettings_WAProtobufsChatLockSettings_proto_init() {
- if File_waChatLockSettings_WAProtobufsChatLockSettings_proto != nil {
- return
- }
- type x struct{}
- out := protoimpl.TypeBuilder{
- File: protoimpl.DescBuilder{
- GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: unsafe.Slice(unsafe.StringData(file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDesc), len(file_waChatLockSettings_WAProtobufsChatLockSettings_proto_rawDesc)),
- NumEnums: 0,
- NumMessages: 1,
- NumExtensions: 0,
- NumServices: 0,
- },
- GoTypes: file_waChatLockSettings_WAProtobufsChatLockSettings_proto_goTypes,
- DependencyIndexes: file_waChatLockSettings_WAProtobufsChatLockSettings_proto_depIdxs,
- MessageInfos: file_waChatLockSettings_WAProtobufsChatLockSettings_proto_msgTypes,
- }.Build()
- File_waChatLockSettings_WAProtobufsChatLockSettings_proto = out.File
- file_waChatLockSettings_WAProtobufsChatLockSettings_proto_goTypes = nil
- file_waChatLockSettings_WAProtobufsChatLockSettings_proto_depIdxs = nil
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.proto b/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.proto
deleted file mode 100644
index 574529a5..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.proto
+++ /dev/null
@@ -1,10 +0,0 @@
-syntax = "proto2";
-package WAProtobufsChatLockSettings;
-option go_package = "go.mau.fi/whatsmeow/proto/waChatLockSettings";
-
-import "waUserPassword/WAProtobufsUserPassword.proto";
-
-message ChatLockSettings {
- optional bool hideLockedChats = 1;
- optional WAProtobufsUserPassword.UserPassword secretCode = 2;
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAWebProtobufsChatLockSettings.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAWebProtobufsChatLockSettings.pb.go
new file mode 100644
index 00000000..fae5ba17
--- /dev/null
+++ b/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAWebProtobufsChatLockSettings.pb.go
@@ -0,0 +1,138 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.10
+// protoc v3.21.12
+// source: waChatLockSettings/WAWebProtobufsChatLockSettings.proto
+
+package waChatLockSettings
+
+import (
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+
+ waUserPassword "go.mau.fi/whatsmeow/proto/waUserPassword"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type ChatLockSettings struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ HideLockedChats *bool `protobuf:"varint,1,opt,name=hideLockedChats" json:"hideLockedChats,omitempty"`
+ SecretCode *waUserPassword.UserPassword `protobuf:"bytes,2,opt,name=secretCode" json:"secretCode,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ChatLockSettings) Reset() {
+ *x = ChatLockSettings{}
+ mi := &file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ChatLockSettings) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChatLockSettings) ProtoMessage() {}
+
+func (x *ChatLockSettings) ProtoReflect() protoreflect.Message {
+ mi := &file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ChatLockSettings.ProtoReflect.Descriptor instead.
+func (*ChatLockSettings) Descriptor() ([]byte, []int) {
+ return file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ChatLockSettings) GetHideLockedChats() bool {
+ if x != nil && x.HideLockedChats != nil {
+ return *x.HideLockedChats
+ }
+ return false
+}
+
+func (x *ChatLockSettings) GetSecretCode() *waUserPassword.UserPassword {
+ if x != nil {
+ return x.SecretCode
+ }
+ return nil
+}
+
+var File_waChatLockSettings_WAWebProtobufsChatLockSettings_proto protoreflect.FileDescriptor
+
+const file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDesc = "" +
+ "\n" +
+ "7waChatLockSettings/WAWebProtobufsChatLockSettings.proto\x12\x1eWAWebProtobufsChatLockSettings\x1a/waUserPassword/WAWebProtobufsUserPassword.proto\"\x86\x01\n" +
+ "\x10ChatLockSettings\x12(\n" +
+ "\x0fhideLockedChats\x18\x01 \x01(\bR\x0fhideLockedChats\x12H\n" +
+ "\n" +
+ "secretCode\x18\x02 \x01(\v2(.WAWebProtobufsUserPassword.UserPasswordR\n" +
+ "secretCodeB.Z,go.mau.fi/whatsmeow/proto/waChatLockSettings"
+
+var (
+ file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescOnce sync.Once
+ file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescData []byte
+)
+
+func file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescGZIP() []byte {
+ file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescOnce.Do(func() {
+ file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDesc), len(file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDesc)))
+ })
+ return file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDescData
+}
+
+var file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_goTypes = []any{
+ (*ChatLockSettings)(nil), // 0: WAWebProtobufsChatLockSettings.ChatLockSettings
+ (*waUserPassword.UserPassword)(nil), // 1: WAWebProtobufsUserPassword.UserPassword
+}
+var file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_depIdxs = []int32{
+ 1, // 0: WAWebProtobufsChatLockSettings.ChatLockSettings.secretCode:type_name -> WAWebProtobufsUserPassword.UserPassword
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_init() }
+func file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_init() {
+ if File_waChatLockSettings_WAWebProtobufsChatLockSettings_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDesc), len(file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_rawDesc)),
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_goTypes,
+ DependencyIndexes: file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_depIdxs,
+ MessageInfos: file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_msgTypes,
+ }.Build()
+ File_waChatLockSettings_WAWebProtobufsChatLockSettings_proto = out.File
+ file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_goTypes = nil
+ file_waChatLockSettings_WAWebProtobufsChatLockSettings_proto_depIdxs = nil
+}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAWebProtobufsChatLockSettings.proto b/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAWebProtobufsChatLockSettings.proto
new file mode 100644
index 00000000..598be63f
--- /dev/null
+++ b/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAWebProtobufsChatLockSettings.proto
@@ -0,0 +1,10 @@
+syntax = "proto2";
+package WAWebProtobufsChatLockSettings;
+option go_package = "go.mau.fi/whatsmeow/proto/waChatLockSettings";
+
+import "waUserPassword/WAWebProtobufsUserPassword.proto";
+
+message ChatLockSettings {
+ optional bool hideLockedChats = 1;
+ optional WAWebProtobufsUserPassword.UserPassword secretCode = 2;
+}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waCommon/legacy.go b/vendor/go.mau.fi/whatsmeow/proto/waCommon/legacy.go
deleted file mode 100644
index cde4c858..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waCommon/legacy.go
+++ /dev/null
@@ -1,11 +0,0 @@
-package waCommon
-
-// Deprecated: Use GetID
-func (x *MessageKey) GetId() string {
- return x.GetID()
-}
-
-// Deprecated: Use GetRemoteJID
-func (x *MessageKey) GetRemoteJid() string {
- return x.GetRemoteJID()
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.pb.go
index d4ceb3f3..17792e90 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.pb.go
@@ -622,6 +622,8 @@ type DeviceProps_HistorySyncConfig struct {
SupportGroupHistory *bool `protobuf:"varint,15,opt,name=supportGroupHistory" json:"supportGroupHistory,omitempty"`
OnDemandReady *bool `protobuf:"varint,16,opt,name=onDemandReady" json:"onDemandReady,omitempty"`
SupportGuestChat *bool `protobuf:"varint,17,opt,name=supportGuestChat" json:"supportGuestChat,omitempty"`
+ CompleteOnDemandReady *bool `protobuf:"varint,18,opt,name=completeOnDemandReady" json:"completeOnDemandReady,omitempty"`
+ ThumbnailSyncDaysLimit *uint32 `protobuf:"varint,19,opt,name=thumbnailSyncDaysLimit" json:"thumbnailSyncDaysLimit,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -775,6 +777,20 @@ func (x *DeviceProps_HistorySyncConfig) GetSupportGuestChat() bool {
return false
}
+func (x *DeviceProps_HistorySyncConfig) GetCompleteOnDemandReady() bool {
+ if x != nil && x.CompleteOnDemandReady != nil {
+ return *x.CompleteOnDemandReady
+ }
+ return false
+}
+
+func (x *DeviceProps_HistorySyncConfig) GetThumbnailSyncDaysLimit() uint32 {
+ if x != nil && x.ThumbnailSyncDaysLimit != nil {
+ return *x.ThumbnailSyncDaysLimit
+ }
+ return 0
+}
+
type DeviceProps_AppVersion struct {
state protoimpl.MessageState `protogen:"open.v1"`
Primary *uint32 `protobuf:"varint,1,opt,name=primary" json:"primary,omitempty"`
@@ -855,13 +871,13 @@ var File_waCompanionReg_WACompanionReg_proto protoreflect.FileDescriptor
const file_waCompanionReg_WACompanionReg_proto_rawDesc = "" +
"\n" +
- "#waCompanionReg/WACompanionReg.proto\x12\x0eWACompanionReg\"\x99\x0e\n" +
+ "#waCompanionReg/WACompanionReg.proto\x12\x0eWACompanionReg\"\x87\x0f\n" +
"\vDeviceProps\x12\x0e\n" +
"\x02os\x18\x01 \x01(\tR\x02os\x12@\n" +
"\aversion\x18\x02 \x01(\v2&.WACompanionReg.DeviceProps.AppVersionR\aversion\x12L\n" +
"\fplatformType\x18\x03 \x01(\x0e2(.WACompanionReg.DeviceProps.PlatformTypeR\fplatformType\x12(\n" +
"\x0frequireFullSync\x18\x04 \x01(\bR\x0frequireFullSync\x12[\n" +
- "\x11historySyncConfig\x18\x05 \x01(\v2-.WACompanionReg.DeviceProps.HistorySyncConfigR\x11historySyncConfig\x1a\xe3\a\n" +
+ "\x11historySyncConfig\x18\x05 \x01(\v2-.WACompanionReg.DeviceProps.HistorySyncConfigR\x11historySyncConfig\x1a\xd1\b\n" +
"\x11HistorySyncConfig\x12,\n" +
"\x11fullSyncDaysLimit\x18\x01 \x01(\rR\x11fullSyncDaysLimit\x120\n" +
"\x13fullSyncSizeMbLimit\x18\x02 \x01(\rR\x13fullSyncSizeMbLimit\x12&\n" +
@@ -880,7 +896,9 @@ const file_waCompanionReg_WACompanionReg_proto_rawDesc = "" +
"\x19supportMessageAssociation\x18\x0e \x01(\bR\x19supportMessageAssociation\x120\n" +
"\x13supportGroupHistory\x18\x0f \x01(\bR\x13supportGroupHistory\x12$\n" +
"\ronDemandReady\x18\x10 \x01(\bR\ronDemandReady\x12*\n" +
- "\x10supportGuestChat\x18\x11 \x01(\bR\x10supportGuestChat\x1a\x9a\x01\n" +
+ "\x10supportGuestChat\x18\x11 \x01(\bR\x10supportGuestChat\x124\n" +
+ "\x15completeOnDemandReady\x18\x12 \x01(\bR\x15completeOnDemandReady\x126\n" +
+ "\x16thumbnailSyncDaysLimit\x18\x13 \x01(\rR\x16thumbnailSyncDaysLimit\x1a\x9a\x01\n" +
"\n" +
"AppVersion\x12\x18\n" +
"\aprimary\x18\x01 \x01(\rR\aprimary\x12\x1c\n" +
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.proto b/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.proto
index e973d051..9c759161 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WACompanionReg.proto
@@ -49,6 +49,8 @@ message DeviceProps {
optional bool supportGroupHistory = 15;
optional bool onDemandReady = 16;
optional bool supportGuestChat = 17;
+ optional bool completeOnDemandReady = 18;
+ optional uint32 thumbnailSyncDaysLimit = 19;
}
message AppVersion {
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.go
deleted file mode 100644
index e1fab63f..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.go
+++ /dev/null
@@ -1,361 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// versions:
-// protoc-gen-go v1.36.10
-// protoc v3.21.12
-// source: waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto
-
-package waDeviceCapabilities
-
-import (
- reflect "reflect"
- sync "sync"
- unsafe "unsafe"
-
- protoreflect "google.golang.org/protobuf/reflect/protoreflect"
- protoimpl "google.golang.org/protobuf/runtime/protoimpl"
-)
-
-const (
- // Verify that this generated code is sufficiently up-to-date.
- _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
- // Verify that runtime/protoimpl is sufficiently up-to-date.
- _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
-)
-
-type DeviceCapabilities_ChatLockSupportLevel int32
-
-const (
- DeviceCapabilities_NONE DeviceCapabilities_ChatLockSupportLevel = 0
- DeviceCapabilities_MINIMAL DeviceCapabilities_ChatLockSupportLevel = 1
- DeviceCapabilities_FULL DeviceCapabilities_ChatLockSupportLevel = 2
-)
-
-// Enum value maps for DeviceCapabilities_ChatLockSupportLevel.
-var (
- DeviceCapabilities_ChatLockSupportLevel_name = map[int32]string{
- 0: "NONE",
- 1: "MINIMAL",
- 2: "FULL",
- }
- DeviceCapabilities_ChatLockSupportLevel_value = map[string]int32{
- "NONE": 0,
- "MINIMAL": 1,
- "FULL": 2,
- }
-)
-
-func (x DeviceCapabilities_ChatLockSupportLevel) Enum() *DeviceCapabilities_ChatLockSupportLevel {
- p := new(DeviceCapabilities_ChatLockSupportLevel)
- *p = x
- return p
-}
-
-func (x DeviceCapabilities_ChatLockSupportLevel) String() string {
- return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (DeviceCapabilities_ChatLockSupportLevel) Descriptor() protoreflect.EnumDescriptor {
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_enumTypes[0].Descriptor()
-}
-
-func (DeviceCapabilities_ChatLockSupportLevel) Type() protoreflect.EnumType {
- return &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_enumTypes[0]
-}
-
-func (x DeviceCapabilities_ChatLockSupportLevel) Number() protoreflect.EnumNumber {
- return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Do not use.
-func (x *DeviceCapabilities_ChatLockSupportLevel) UnmarshalJSON(b []byte) error {
- num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
- if err != nil {
- return err
- }
- *x = DeviceCapabilities_ChatLockSupportLevel(num)
- return nil
-}
-
-// Deprecated: Use DeviceCapabilities_ChatLockSupportLevel.Descriptor instead.
-func (DeviceCapabilities_ChatLockSupportLevel) EnumDescriptor() ([]byte, []int) {
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 0}
-}
-
-type DeviceCapabilities struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- ChatLockSupportLevel *DeviceCapabilities_ChatLockSupportLevel `protobuf:"varint,1,opt,name=chatLockSupportLevel,enum=WAProtobufsDeviceCapabilities.DeviceCapabilities_ChatLockSupportLevel" json:"chatLockSupportLevel,omitempty"`
- LidMigration *DeviceCapabilities_LIDMigration `protobuf:"bytes,2,opt,name=lidMigration" json:"lidMigration,omitempty"`
- BusinessBroadcast *DeviceCapabilities_BusinessBroadcast `protobuf:"bytes,3,opt,name=businessBroadcast" json:"businessBroadcast,omitempty"`
- UserHasAvatar *DeviceCapabilities_UserHasAvatar `protobuf:"bytes,4,opt,name=userHasAvatar" json:"userHasAvatar,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *DeviceCapabilities) Reset() {
- *x = DeviceCapabilities{}
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *DeviceCapabilities) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*DeviceCapabilities) ProtoMessage() {}
-
-func (x *DeviceCapabilities) ProtoReflect() protoreflect.Message {
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[0]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use DeviceCapabilities.ProtoReflect.Descriptor instead.
-func (*DeviceCapabilities) Descriptor() ([]byte, []int) {
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0}
-}
-
-func (x *DeviceCapabilities) GetChatLockSupportLevel() DeviceCapabilities_ChatLockSupportLevel {
- if x != nil && x.ChatLockSupportLevel != nil {
- return *x.ChatLockSupportLevel
- }
- return DeviceCapabilities_NONE
-}
-
-func (x *DeviceCapabilities) GetLidMigration() *DeviceCapabilities_LIDMigration {
- if x != nil {
- return x.LidMigration
- }
- return nil
-}
-
-func (x *DeviceCapabilities) GetBusinessBroadcast() *DeviceCapabilities_BusinessBroadcast {
- if x != nil {
- return x.BusinessBroadcast
- }
- return nil
-}
-
-func (x *DeviceCapabilities) GetUserHasAvatar() *DeviceCapabilities_UserHasAvatar {
- if x != nil {
- return x.UserHasAvatar
- }
- return nil
-}
-
-type DeviceCapabilities_UserHasAvatar struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- UserHasAvatar *bool `protobuf:"varint,1,opt,name=userHasAvatar" json:"userHasAvatar,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *DeviceCapabilities_UserHasAvatar) Reset() {
- *x = DeviceCapabilities_UserHasAvatar{}
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *DeviceCapabilities_UserHasAvatar) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*DeviceCapabilities_UserHasAvatar) ProtoMessage() {}
-
-func (x *DeviceCapabilities_UserHasAvatar) ProtoReflect() protoreflect.Message {
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[1]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use DeviceCapabilities_UserHasAvatar.ProtoReflect.Descriptor instead.
-func (*DeviceCapabilities_UserHasAvatar) Descriptor() ([]byte, []int) {
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 0}
-}
-
-func (x *DeviceCapabilities_UserHasAvatar) GetUserHasAvatar() bool {
- if x != nil && x.UserHasAvatar != nil {
- return *x.UserHasAvatar
- }
- return false
-}
-
-type DeviceCapabilities_BusinessBroadcast struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- ImportListEnabled *bool `protobuf:"varint,1,opt,name=importListEnabled" json:"importListEnabled,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *DeviceCapabilities_BusinessBroadcast) Reset() {
- *x = DeviceCapabilities_BusinessBroadcast{}
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *DeviceCapabilities_BusinessBroadcast) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*DeviceCapabilities_BusinessBroadcast) ProtoMessage() {}
-
-func (x *DeviceCapabilities_BusinessBroadcast) ProtoReflect() protoreflect.Message {
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[2]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use DeviceCapabilities_BusinessBroadcast.ProtoReflect.Descriptor instead.
-func (*DeviceCapabilities_BusinessBroadcast) Descriptor() ([]byte, []int) {
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 1}
-}
-
-func (x *DeviceCapabilities_BusinessBroadcast) GetImportListEnabled() bool {
- if x != nil && x.ImportListEnabled != nil {
- return *x.ImportListEnabled
- }
- return false
-}
-
-type DeviceCapabilities_LIDMigration struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- ChatDbMigrationTimestamp *uint64 `protobuf:"varint,1,opt,name=chatDbMigrationTimestamp" json:"chatDbMigrationTimestamp,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *DeviceCapabilities_LIDMigration) Reset() {
- *x = DeviceCapabilities_LIDMigration{}
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *DeviceCapabilities_LIDMigration) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*DeviceCapabilities_LIDMigration) ProtoMessage() {}
-
-func (x *DeviceCapabilities_LIDMigration) ProtoReflect() protoreflect.Message {
- mi := &file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes[3]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use DeviceCapabilities_LIDMigration.ProtoReflect.Descriptor instead.
-func (*DeviceCapabilities_LIDMigration) Descriptor() ([]byte, []int) {
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 2}
-}
-
-func (x *DeviceCapabilities_LIDMigration) GetChatDbMigrationTimestamp() uint64 {
- if x != nil && x.ChatDbMigrationTimestamp != nil {
- return *x.ChatDbMigrationTimestamp
- }
- return 0
-}
-
-var File_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto protoreflect.FileDescriptor
-
-const file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDesc = "" +
- "\n" +
- "8waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto\x12\x1dWAProtobufsDeviceCapabilities\"\xcd\x05\n" +
- "\x12DeviceCapabilities\x12z\n" +
- "\x14chatLockSupportLevel\x18\x01 \x01(\x0e2F.WAProtobufsDeviceCapabilities.DeviceCapabilities.ChatLockSupportLevelR\x14chatLockSupportLevel\x12b\n" +
- "\flidMigration\x18\x02 \x01(\v2>.WAProtobufsDeviceCapabilities.DeviceCapabilities.LIDMigrationR\flidMigration\x12q\n" +
- "\x11businessBroadcast\x18\x03 \x01(\v2C.WAProtobufsDeviceCapabilities.DeviceCapabilities.BusinessBroadcastR\x11businessBroadcast\x12e\n" +
- "\ruserHasAvatar\x18\x04 \x01(\v2?.WAProtobufsDeviceCapabilities.DeviceCapabilities.UserHasAvatarR\ruserHasAvatar\x1a5\n" +
- "\rUserHasAvatar\x12$\n" +
- "\ruserHasAvatar\x18\x01 \x01(\bR\ruserHasAvatar\x1aA\n" +
- "\x11BusinessBroadcast\x12,\n" +
- "\x11importListEnabled\x18\x01 \x01(\bR\x11importListEnabled\x1aJ\n" +
- "\fLIDMigration\x12:\n" +
- "\x18chatDbMigrationTimestamp\x18\x01 \x01(\x04R\x18chatDbMigrationTimestamp\"7\n" +
- "\x14ChatLockSupportLevel\x12\b\n" +
- "\x04NONE\x10\x00\x12\v\n" +
- "\aMINIMAL\x10\x01\x12\b\n" +
- "\x04FULL\x10\x02B0Z.go.mau.fi/whatsmeow/proto/waDeviceCapabilities"
-
-var (
- file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescOnce sync.Once
- file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescData []byte
-)
-
-func file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescGZIP() []byte {
- file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescOnce.Do(func() {
- file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDesc), len(file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDesc)))
- })
- return file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDescData
-}
-
-var file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
-var file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_goTypes = []any{
- (DeviceCapabilities_ChatLockSupportLevel)(0), // 0: WAProtobufsDeviceCapabilities.DeviceCapabilities.ChatLockSupportLevel
- (*DeviceCapabilities)(nil), // 1: WAProtobufsDeviceCapabilities.DeviceCapabilities
- (*DeviceCapabilities_UserHasAvatar)(nil), // 2: WAProtobufsDeviceCapabilities.DeviceCapabilities.UserHasAvatar
- (*DeviceCapabilities_BusinessBroadcast)(nil), // 3: WAProtobufsDeviceCapabilities.DeviceCapabilities.BusinessBroadcast
- (*DeviceCapabilities_LIDMigration)(nil), // 4: WAProtobufsDeviceCapabilities.DeviceCapabilities.LIDMigration
-}
-var file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_depIdxs = []int32{
- 0, // 0: WAProtobufsDeviceCapabilities.DeviceCapabilities.chatLockSupportLevel:type_name -> WAProtobufsDeviceCapabilities.DeviceCapabilities.ChatLockSupportLevel
- 4, // 1: WAProtobufsDeviceCapabilities.DeviceCapabilities.lidMigration:type_name -> WAProtobufsDeviceCapabilities.DeviceCapabilities.LIDMigration
- 3, // 2: WAProtobufsDeviceCapabilities.DeviceCapabilities.businessBroadcast:type_name -> WAProtobufsDeviceCapabilities.DeviceCapabilities.BusinessBroadcast
- 2, // 3: WAProtobufsDeviceCapabilities.DeviceCapabilities.userHasAvatar:type_name -> WAProtobufsDeviceCapabilities.DeviceCapabilities.UserHasAvatar
- 4, // [4:4] is the sub-list for method output_type
- 4, // [4:4] is the sub-list for method input_type
- 4, // [4:4] is the sub-list for extension type_name
- 4, // [4:4] is the sub-list for extension extendee
- 0, // [0:4] is the sub-list for field type_name
-}
-
-func init() { file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_init() }
-func file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_init() {
- if File_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto != nil {
- return
- }
- type x struct{}
- out := protoimpl.TypeBuilder{
- File: protoimpl.DescBuilder{
- GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: unsafe.Slice(unsafe.StringData(file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDesc), len(file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_rawDesc)),
- NumEnums: 1,
- NumMessages: 4,
- NumExtensions: 0,
- NumServices: 0,
- },
- GoTypes: file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_goTypes,
- DependencyIndexes: file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_depIdxs,
- EnumInfos: file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_enumTypes,
- MessageInfos: file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_msgTypes,
- }.Build()
- File_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto = out.File
- file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_goTypes = nil
- file_waDeviceCapabilities_WAProtobufsDeviceCapabilities_proto_depIdxs = nil
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.pb.go
new file mode 100644
index 00000000..02758ffd
--- /dev/null
+++ b/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.pb.go
@@ -0,0 +1,557 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.10
+// protoc v3.21.12
+// source: waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto
+
+package waDeviceCapabilities
+
+import (
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type DeviceCapabilities_MemberNameTagPrimarySupport int32
+
+const (
+ DeviceCapabilities_DISABLED DeviceCapabilities_MemberNameTagPrimarySupport = 0
+ DeviceCapabilities_RECEIVER_ENABLED DeviceCapabilities_MemberNameTagPrimarySupport = 1
+ DeviceCapabilities_SENDER_ENABLED DeviceCapabilities_MemberNameTagPrimarySupport = 2
+)
+
+// Enum value maps for DeviceCapabilities_MemberNameTagPrimarySupport.
+var (
+ DeviceCapabilities_MemberNameTagPrimarySupport_name = map[int32]string{
+ 0: "DISABLED",
+ 1: "RECEIVER_ENABLED",
+ 2: "SENDER_ENABLED",
+ }
+ DeviceCapabilities_MemberNameTagPrimarySupport_value = map[string]int32{
+ "DISABLED": 0,
+ "RECEIVER_ENABLED": 1,
+ "SENDER_ENABLED": 2,
+ }
+)
+
+func (x DeviceCapabilities_MemberNameTagPrimarySupport) Enum() *DeviceCapabilities_MemberNameTagPrimarySupport {
+ p := new(DeviceCapabilities_MemberNameTagPrimarySupport)
+ *p = x
+ return p
+}
+
+func (x DeviceCapabilities_MemberNameTagPrimarySupport) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (DeviceCapabilities_MemberNameTagPrimarySupport) Descriptor() protoreflect.EnumDescriptor {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes[0].Descriptor()
+}
+
+func (DeviceCapabilities_MemberNameTagPrimarySupport) Type() protoreflect.EnumType {
+ return &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes[0]
+}
+
+func (x DeviceCapabilities_MemberNameTagPrimarySupport) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *DeviceCapabilities_MemberNameTagPrimarySupport) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = DeviceCapabilities_MemberNameTagPrimarySupport(num)
+ return nil
+}
+
+// Deprecated: Use DeviceCapabilities_MemberNameTagPrimarySupport.Descriptor instead.
+func (DeviceCapabilities_MemberNameTagPrimarySupport) EnumDescriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 0}
+}
+
+type DeviceCapabilities_ChatLockSupportLevel int32
+
+const (
+ DeviceCapabilities_NONE DeviceCapabilities_ChatLockSupportLevel = 0
+ DeviceCapabilities_MINIMAL DeviceCapabilities_ChatLockSupportLevel = 1
+ DeviceCapabilities_FULL DeviceCapabilities_ChatLockSupportLevel = 2
+)
+
+// Enum value maps for DeviceCapabilities_ChatLockSupportLevel.
+var (
+ DeviceCapabilities_ChatLockSupportLevel_name = map[int32]string{
+ 0: "NONE",
+ 1: "MINIMAL",
+ 2: "FULL",
+ }
+ DeviceCapabilities_ChatLockSupportLevel_value = map[string]int32{
+ "NONE": 0,
+ "MINIMAL": 1,
+ "FULL": 2,
+ }
+)
+
+func (x DeviceCapabilities_ChatLockSupportLevel) Enum() *DeviceCapabilities_ChatLockSupportLevel {
+ p := new(DeviceCapabilities_ChatLockSupportLevel)
+ *p = x
+ return p
+}
+
+func (x DeviceCapabilities_ChatLockSupportLevel) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (DeviceCapabilities_ChatLockSupportLevel) Descriptor() protoreflect.EnumDescriptor {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes[1].Descriptor()
+}
+
+func (DeviceCapabilities_ChatLockSupportLevel) Type() protoreflect.EnumType {
+ return &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes[1]
+}
+
+func (x DeviceCapabilities_ChatLockSupportLevel) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *DeviceCapabilities_ChatLockSupportLevel) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = DeviceCapabilities_ChatLockSupportLevel(num)
+ return nil
+}
+
+// Deprecated: Use DeviceCapabilities_ChatLockSupportLevel.Descriptor instead.
+func (DeviceCapabilities_ChatLockSupportLevel) EnumDescriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 1}
+}
+
+type DeviceCapabilities_AiThread_SupportLevel int32
+
+const (
+ DeviceCapabilities_AiThread_NONE DeviceCapabilities_AiThread_SupportLevel = 0
+ DeviceCapabilities_AiThread_INFRA DeviceCapabilities_AiThread_SupportLevel = 1
+ DeviceCapabilities_AiThread_FULL DeviceCapabilities_AiThread_SupportLevel = 2
+)
+
+// Enum value maps for DeviceCapabilities_AiThread_SupportLevel.
+var (
+ DeviceCapabilities_AiThread_SupportLevel_name = map[int32]string{
+ 0: "NONE",
+ 1: "INFRA",
+ 2: "FULL",
+ }
+ DeviceCapabilities_AiThread_SupportLevel_value = map[string]int32{
+ "NONE": 0,
+ "INFRA": 1,
+ "FULL": 2,
+ }
+)
+
+func (x DeviceCapabilities_AiThread_SupportLevel) Enum() *DeviceCapabilities_AiThread_SupportLevel {
+ p := new(DeviceCapabilities_AiThread_SupportLevel)
+ *p = x
+ return p
+}
+
+func (x DeviceCapabilities_AiThread_SupportLevel) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (DeviceCapabilities_AiThread_SupportLevel) Descriptor() protoreflect.EnumDescriptor {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes[2].Descriptor()
+}
+
+func (DeviceCapabilities_AiThread_SupportLevel) Type() protoreflect.EnumType {
+ return &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes[2]
+}
+
+func (x DeviceCapabilities_AiThread_SupportLevel) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *DeviceCapabilities_AiThread_SupportLevel) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = DeviceCapabilities_AiThread_SupportLevel(num)
+ return nil
+}
+
+// Deprecated: Use DeviceCapabilities_AiThread_SupportLevel.Descriptor instead.
+func (DeviceCapabilities_AiThread_SupportLevel) EnumDescriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 0, 0}
+}
+
+type DeviceCapabilities struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ ChatLockSupportLevel *DeviceCapabilities_ChatLockSupportLevel `protobuf:"varint,1,opt,name=chatLockSupportLevel,enum=WAWebProtobufsDeviceCapabilities.DeviceCapabilities_ChatLockSupportLevel" json:"chatLockSupportLevel,omitempty"`
+ LidMigration *DeviceCapabilities_LIDMigration `protobuf:"bytes,2,opt,name=lidMigration" json:"lidMigration,omitempty"`
+ BusinessBroadcast *DeviceCapabilities_BusinessBroadcast `protobuf:"bytes,3,opt,name=businessBroadcast" json:"businessBroadcast,omitempty"`
+ UserHasAvatar *DeviceCapabilities_UserHasAvatar `protobuf:"bytes,4,opt,name=userHasAvatar" json:"userHasAvatar,omitempty"`
+ MemberNameTagPrimarySupport *DeviceCapabilities_MemberNameTagPrimarySupport `protobuf:"varint,5,opt,name=memberNameTagPrimarySupport,enum=WAWebProtobufsDeviceCapabilities.DeviceCapabilities_MemberNameTagPrimarySupport" json:"memberNameTagPrimarySupport,omitempty"`
+ AiThread *DeviceCapabilities_AiThread `protobuf:"bytes,6,opt,name=aiThread" json:"aiThread,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceCapabilities) Reset() {
+ *x = DeviceCapabilities{}
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceCapabilities) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeviceCapabilities) ProtoMessage() {}
+
+func (x *DeviceCapabilities) ProtoReflect() protoreflect.Message {
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeviceCapabilities.ProtoReflect.Descriptor instead.
+func (*DeviceCapabilities) Descriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *DeviceCapabilities) GetChatLockSupportLevel() DeviceCapabilities_ChatLockSupportLevel {
+ if x != nil && x.ChatLockSupportLevel != nil {
+ return *x.ChatLockSupportLevel
+ }
+ return DeviceCapabilities_NONE
+}
+
+func (x *DeviceCapabilities) GetLidMigration() *DeviceCapabilities_LIDMigration {
+ if x != nil {
+ return x.LidMigration
+ }
+ return nil
+}
+
+func (x *DeviceCapabilities) GetBusinessBroadcast() *DeviceCapabilities_BusinessBroadcast {
+ if x != nil {
+ return x.BusinessBroadcast
+ }
+ return nil
+}
+
+func (x *DeviceCapabilities) GetUserHasAvatar() *DeviceCapabilities_UserHasAvatar {
+ if x != nil {
+ return x.UserHasAvatar
+ }
+ return nil
+}
+
+func (x *DeviceCapabilities) GetMemberNameTagPrimarySupport() DeviceCapabilities_MemberNameTagPrimarySupport {
+ if x != nil && x.MemberNameTagPrimarySupport != nil {
+ return *x.MemberNameTagPrimarySupport
+ }
+ return DeviceCapabilities_DISABLED
+}
+
+func (x *DeviceCapabilities) GetAiThread() *DeviceCapabilities_AiThread {
+ if x != nil {
+ return x.AiThread
+ }
+ return nil
+}
+
+type DeviceCapabilities_AiThread struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ SupportLevel *DeviceCapabilities_AiThread_SupportLevel `protobuf:"varint,1,opt,name=supportLevel,enum=WAWebProtobufsDeviceCapabilities.DeviceCapabilities_AiThread_SupportLevel" json:"supportLevel,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceCapabilities_AiThread) Reset() {
+ *x = DeviceCapabilities_AiThread{}
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceCapabilities_AiThread) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeviceCapabilities_AiThread) ProtoMessage() {}
+
+func (x *DeviceCapabilities_AiThread) ProtoReflect() protoreflect.Message {
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeviceCapabilities_AiThread.ProtoReflect.Descriptor instead.
+func (*DeviceCapabilities_AiThread) Descriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 0}
+}
+
+func (x *DeviceCapabilities_AiThread) GetSupportLevel() DeviceCapabilities_AiThread_SupportLevel {
+ if x != nil && x.SupportLevel != nil {
+ return *x.SupportLevel
+ }
+ return DeviceCapabilities_AiThread_NONE
+}
+
+type DeviceCapabilities_UserHasAvatar struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserHasAvatar *bool `protobuf:"varint,1,opt,name=userHasAvatar" json:"userHasAvatar,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceCapabilities_UserHasAvatar) Reset() {
+ *x = DeviceCapabilities_UserHasAvatar{}
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceCapabilities_UserHasAvatar) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeviceCapabilities_UserHasAvatar) ProtoMessage() {}
+
+func (x *DeviceCapabilities_UserHasAvatar) ProtoReflect() protoreflect.Message {
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[2]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeviceCapabilities_UserHasAvatar.ProtoReflect.Descriptor instead.
+func (*DeviceCapabilities_UserHasAvatar) Descriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 1}
+}
+
+func (x *DeviceCapabilities_UserHasAvatar) GetUserHasAvatar() bool {
+ if x != nil && x.UserHasAvatar != nil {
+ return *x.UserHasAvatar
+ }
+ return false
+}
+
+type DeviceCapabilities_BusinessBroadcast struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ ImportListEnabled *bool `protobuf:"varint,1,opt,name=importListEnabled" json:"importListEnabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceCapabilities_BusinessBroadcast) Reset() {
+ *x = DeviceCapabilities_BusinessBroadcast{}
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceCapabilities_BusinessBroadcast) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeviceCapabilities_BusinessBroadcast) ProtoMessage() {}
+
+func (x *DeviceCapabilities_BusinessBroadcast) ProtoReflect() protoreflect.Message {
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[3]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeviceCapabilities_BusinessBroadcast.ProtoReflect.Descriptor instead.
+func (*DeviceCapabilities_BusinessBroadcast) Descriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 2}
+}
+
+func (x *DeviceCapabilities_BusinessBroadcast) GetImportListEnabled() bool {
+ if x != nil && x.ImportListEnabled != nil {
+ return *x.ImportListEnabled
+ }
+ return false
+}
+
+type DeviceCapabilities_LIDMigration struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ ChatDbMigrationTimestamp *uint64 `protobuf:"varint,1,opt,name=chatDbMigrationTimestamp" json:"chatDbMigrationTimestamp,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceCapabilities_LIDMigration) Reset() {
+ *x = DeviceCapabilities_LIDMigration{}
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceCapabilities_LIDMigration) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeviceCapabilities_LIDMigration) ProtoMessage() {}
+
+func (x *DeviceCapabilities_LIDMigration) ProtoReflect() protoreflect.Message {
+ mi := &file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeviceCapabilities_LIDMigration.ProtoReflect.Descriptor instead.
+func (*DeviceCapabilities_LIDMigration) Descriptor() ([]byte, []int) {
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP(), []int{0, 3}
+}
+
+func (x *DeviceCapabilities_LIDMigration) GetChatDbMigrationTimestamp() uint64 {
+ if x != nil && x.ChatDbMigrationTimestamp != nil {
+ return *x.ChatDbMigrationTimestamp
+ }
+ return 0
+}
+
+var File_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto protoreflect.FileDescriptor
+
+const file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDesc = "" +
+ "\n" +
+ ";waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto\x12 WAWebProtobufsDeviceCapabilities\"\xcc\t\n" +
+ "\x12DeviceCapabilities\x12}\n" +
+ "\x14chatLockSupportLevel\x18\x01 \x01(\x0e2I.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.ChatLockSupportLevelR\x14chatLockSupportLevel\x12e\n" +
+ "\flidMigration\x18\x02 \x01(\v2A.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.LIDMigrationR\flidMigration\x12t\n" +
+ "\x11businessBroadcast\x18\x03 \x01(\v2F.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.BusinessBroadcastR\x11businessBroadcast\x12h\n" +
+ "\ruserHasAvatar\x18\x04 \x01(\v2B.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.UserHasAvatarR\ruserHasAvatar\x12\x92\x01\n" +
+ "\x1bmemberNameTagPrimarySupport\x18\x05 \x01(\x0e2P.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.MemberNameTagPrimarySupportR\x1bmemberNameTagPrimarySupport\x12Y\n" +
+ "\baiThread\x18\x06 \x01(\v2=.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThreadR\baiThread\x1a\xa9\x01\n" +
+ "\bAiThread\x12n\n" +
+ "\fsupportLevel\x18\x01 \x01(\x0e2J.WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThread.SupportLevelR\fsupportLevel\"-\n" +
+ "\fSupportLevel\x12\b\n" +
+ "\x04NONE\x10\x00\x12\t\n" +
+ "\x05INFRA\x10\x01\x12\b\n" +
+ "\x04FULL\x10\x02\x1a5\n" +
+ "\rUserHasAvatar\x12$\n" +
+ "\ruserHasAvatar\x18\x01 \x01(\bR\ruserHasAvatar\x1aA\n" +
+ "\x11BusinessBroadcast\x12,\n" +
+ "\x11importListEnabled\x18\x01 \x01(\bR\x11importListEnabled\x1aJ\n" +
+ "\fLIDMigration\x12:\n" +
+ "\x18chatDbMigrationTimestamp\x18\x01 \x01(\x04R\x18chatDbMigrationTimestamp\"U\n" +
+ "\x1bMemberNameTagPrimarySupport\x12\f\n" +
+ "\bDISABLED\x10\x00\x12\x14\n" +
+ "\x10RECEIVER_ENABLED\x10\x01\x12\x12\n" +
+ "\x0eSENDER_ENABLED\x10\x02\"7\n" +
+ "\x14ChatLockSupportLevel\x12\b\n" +
+ "\x04NONE\x10\x00\x12\v\n" +
+ "\aMINIMAL\x10\x01\x12\b\n" +
+ "\x04FULL\x10\x02B0Z.go.mau.fi/whatsmeow/proto/waDeviceCapabilities"
+
+var (
+ file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescOnce sync.Once
+ file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescData []byte
+)
+
+func file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescGZIP() []byte {
+ file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescOnce.Do(func() {
+ file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDesc), len(file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDesc)))
+ })
+ return file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDescData
+}
+
+var file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
+var file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
+var file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_goTypes = []any{
+ (DeviceCapabilities_MemberNameTagPrimarySupport)(0), // 0: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.MemberNameTagPrimarySupport
+ (DeviceCapabilities_ChatLockSupportLevel)(0), // 1: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.ChatLockSupportLevel
+ (DeviceCapabilities_AiThread_SupportLevel)(0), // 2: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThread.SupportLevel
+ (*DeviceCapabilities)(nil), // 3: WAWebProtobufsDeviceCapabilities.DeviceCapabilities
+ (*DeviceCapabilities_AiThread)(nil), // 4: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThread
+ (*DeviceCapabilities_UserHasAvatar)(nil), // 5: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.UserHasAvatar
+ (*DeviceCapabilities_BusinessBroadcast)(nil), // 6: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.BusinessBroadcast
+ (*DeviceCapabilities_LIDMigration)(nil), // 7: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.LIDMigration
+}
+var file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_depIdxs = []int32{
+ 1, // 0: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.chatLockSupportLevel:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.ChatLockSupportLevel
+ 7, // 1: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.lidMigration:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.LIDMigration
+ 6, // 2: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.businessBroadcast:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.BusinessBroadcast
+ 5, // 3: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.userHasAvatar:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.UserHasAvatar
+ 0, // 4: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.memberNameTagPrimarySupport:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.MemberNameTagPrimarySupport
+ 4, // 5: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.aiThread:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThread
+ 2, // 6: WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThread.supportLevel:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities.AiThread.SupportLevel
+ 7, // [7:7] is the sub-list for method output_type
+ 7, // [7:7] is the sub-list for method input_type
+ 7, // [7:7] is the sub-list for extension type_name
+ 7, // [7:7] is the sub-list for extension extendee
+ 0, // [0:7] is the sub-list for field type_name
+}
+
+func init() { file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_init() }
+func file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_init() {
+ if File_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDesc), len(file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_rawDesc)),
+ NumEnums: 3,
+ NumMessages: 5,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_goTypes,
+ DependencyIndexes: file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_depIdxs,
+ EnumInfos: file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_enumTypes,
+ MessageInfos: file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_msgTypes,
+ }.Build()
+ File_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto = out.File
+ file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_goTypes = nil
+ file_waDeviceCapabilities_WAWebProtobufsDeviceCapabilities_proto_depIdxs = nil
+}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto b/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto
similarity index 61%
rename from vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto
rename to vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto
index 6de6a11b..31d4e544 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto
@@ -1,14 +1,30 @@
syntax = "proto2";
-package WAProtobufsDeviceCapabilities;
+package WAWebProtobufsDeviceCapabilities;
option go_package = "go.mau.fi/whatsmeow/proto/waDeviceCapabilities";
message DeviceCapabilities {
+ enum MemberNameTagPrimarySupport {
+ DISABLED = 0;
+ RECEIVER_ENABLED = 1;
+ SENDER_ENABLED = 2;
+ }
+
enum ChatLockSupportLevel {
NONE = 0;
MINIMAL = 1;
FULL = 2;
}
+ message AiThread {
+ enum SupportLevel {
+ NONE = 0;
+ INFRA = 1;
+ FULL = 2;
+ }
+
+ optional SupportLevel supportLevel = 1;
+ }
+
message UserHasAvatar {
optional bool userHasAvatar = 1;
}
@@ -25,4 +41,6 @@ message DeviceCapabilities {
optional LIDMigration lidMigration = 2;
optional BusinessBroadcast businessBroadcast = 3;
optional UserHasAvatar userHasAvatar = 4;
+ optional MemberNameTagPrimarySupport memberNameTagPrimarySupport = 5;
+ optional AiThread aiThread = 6;
}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go
index 006057cd..18c30b00 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go
@@ -233,14 +233,15 @@ func (PeerDataOperationRequestType) EnumDescriptor() ([]byte, []int) {
type HistorySyncType int32
const (
- HistorySyncType_INITIAL_BOOTSTRAP HistorySyncType = 0
- HistorySyncType_INITIAL_STATUS_V3 HistorySyncType = 1
- HistorySyncType_FULL HistorySyncType = 2
- HistorySyncType_RECENT HistorySyncType = 3
- HistorySyncType_PUSH_NAME HistorySyncType = 4
- HistorySyncType_NON_BLOCKING_DATA HistorySyncType = 5
- HistorySyncType_ON_DEMAND HistorySyncType = 6
- HistorySyncType_NO_HISTORY HistorySyncType = 7
+ HistorySyncType_INITIAL_BOOTSTRAP HistorySyncType = 0
+ HistorySyncType_INITIAL_STATUS_V3 HistorySyncType = 1
+ HistorySyncType_FULL HistorySyncType = 2
+ HistorySyncType_RECENT HistorySyncType = 3
+ HistorySyncType_PUSH_NAME HistorySyncType = 4
+ HistorySyncType_NON_BLOCKING_DATA HistorySyncType = 5
+ HistorySyncType_ON_DEMAND HistorySyncType = 6
+ HistorySyncType_NO_HISTORY HistorySyncType = 7
+ HistorySyncType_MESSAGE_ACCESS_STATUS HistorySyncType = 8
)
// Enum value maps for HistorySyncType.
@@ -254,16 +255,18 @@ var (
5: "NON_BLOCKING_DATA",
6: "ON_DEMAND",
7: "NO_HISTORY",
+ 8: "MESSAGE_ACCESS_STATUS",
}
HistorySyncType_value = map[string]int32{
- "INITIAL_BOOTSTRAP": 0,
- "INITIAL_STATUS_V3": 1,
- "FULL": 2,
- "RECENT": 3,
- "PUSH_NAME": 4,
- "NON_BLOCKING_DATA": 5,
- "ON_DEMAND": 6,
- "NO_HISTORY": 7,
+ "INITIAL_BOOTSTRAP": 0,
+ "INITIAL_STATUS_V3": 1,
+ "FULL": 2,
+ "RECENT": 3,
+ "PUSH_NAME": 4,
+ "NON_BLOCKING_DATA": 5,
+ "ON_DEMAND": 6,
+ "NO_HISTORY": 7,
+ "MESSAGE_ACCESS_STATUS": 8,
}
)
@@ -369,6 +372,62 @@ func (MediaKeyDomain) EnumDescriptor() ([]byte, []int) {
return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{4}
}
+type WebLinkRenderConfig int32
+
+const (
+ WebLinkRenderConfig_WEBVIEW WebLinkRenderConfig = 0
+ WebLinkRenderConfig_SYSTEM WebLinkRenderConfig = 1
+)
+
+// Enum value maps for WebLinkRenderConfig.
+var (
+ WebLinkRenderConfig_name = map[int32]string{
+ 0: "WEBVIEW",
+ 1: "SYSTEM",
+ }
+ WebLinkRenderConfig_value = map[string]int32{
+ "WEBVIEW": 0,
+ "SYSTEM": 1,
+ }
+)
+
+func (x WebLinkRenderConfig) Enum() *WebLinkRenderConfig {
+ p := new(WebLinkRenderConfig)
+ *p = x
+ return p
+}
+
+func (x WebLinkRenderConfig) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (WebLinkRenderConfig) Descriptor() protoreflect.EnumDescriptor {
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[5].Descriptor()
+}
+
+func (WebLinkRenderConfig) Type() protoreflect.EnumType {
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[5]
+}
+
+func (x WebLinkRenderConfig) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *WebLinkRenderConfig) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = WebLinkRenderConfig(num)
+ return nil
+}
+
+// Deprecated: Use WebLinkRenderConfig.Descriptor instead.
+func (WebLinkRenderConfig) EnumDescriptor() ([]byte, []int) {
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{5}
+}
+
type KeepType int32
const (
@@ -402,11 +461,11 @@ func (x KeepType) String() string {
}
func (KeepType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[5].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[6].Descriptor()
}
func (KeepType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[5]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[6]
}
func (x KeepType) Number() protoreflect.EnumNumber {
@@ -425,7 +484,7 @@ func (x *KeepType) UnmarshalJSON(b []byte) error {
// Deprecated: Use KeepType.Descriptor instead.
func (KeepType) EnumDescriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{5}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{6}
}
type StickerPackMessage_StickerPackOrigin int32
@@ -461,11 +520,11 @@ func (x StickerPackMessage_StickerPackOrigin) String() string {
}
func (StickerPackMessage_StickerPackOrigin) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[6].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[7].Descriptor()
}
func (StickerPackMessage_StickerPackOrigin) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[6]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[7]
}
func (x StickerPackMessage_StickerPackOrigin) Number() protoreflect.EnumNumber {
@@ -514,11 +573,11 @@ func (x PlaceholderMessage_PlaceholderType) String() string {
}
func (PlaceholderMessage_PlaceholderType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[7].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[8].Descriptor()
}
func (PlaceholderMessage_PlaceholderType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[7]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[8]
}
func (x PlaceholderMessage_PlaceholderType) Number() protoreflect.EnumNumber {
@@ -573,11 +632,11 @@ func (x BCallMessage_MediaType) String() string {
}
func (BCallMessage_MediaType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[8].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[9].Descriptor()
}
func (BCallMessage_MediaType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[8]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[9]
}
func (x BCallMessage_MediaType) Number() protoreflect.EnumNumber {
@@ -647,11 +706,11 @@ func (x CallLogMessage_CallOutcome) String() string {
}
func (CallLogMessage_CallOutcome) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[9].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[10].Descriptor()
}
func (CallLogMessage_CallOutcome) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[9]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[10]
}
func (x CallLogMessage_CallOutcome) Number() protoreflect.EnumNumber {
@@ -706,11 +765,11 @@ func (x CallLogMessage_CallType) String() string {
}
func (CallLogMessage_CallType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[10].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[11].Descriptor()
}
func (CallLogMessage_CallType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[10]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[11]
}
func (x CallLogMessage_CallType) Number() protoreflect.EnumNumber {
@@ -762,11 +821,11 @@ func (x ScheduledCallEditMessage_EditType) String() string {
}
func (ScheduledCallEditMessage_EditType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[11].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[12].Descriptor()
}
func (ScheduledCallEditMessage_EditType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[11]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[12]
}
func (x ScheduledCallEditMessage_EditType) Number() protoreflect.EnumNumber {
@@ -821,11 +880,11 @@ func (x ScheduledCallCreationMessage_CallType) String() string {
}
func (ScheduledCallCreationMessage_CallType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[12].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[13].Descriptor()
}
func (ScheduledCallCreationMessage_CallType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[12]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[13]
}
func (x ScheduledCallCreationMessage_CallType) Number() protoreflect.EnumNumber {
@@ -883,11 +942,11 @@ func (x EventResponseMessage_EventResponseType) String() string {
}
func (EventResponseMessage_EventResponseType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[13].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[14].Descriptor()
}
func (EventResponseMessage_EventResponseType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[13]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[14]
}
func (x EventResponseMessage_EventResponseType) Number() protoreflect.EnumNumber {
@@ -942,11 +1001,11 @@ func (x PinInChatMessage_Type) String() string {
}
func (PinInChatMessage_Type) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[14].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[15].Descriptor()
}
func (PinInChatMessage_Type) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[14]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[15]
}
func (x PinInChatMessage_Type) Number() protoreflect.EnumNumber {
@@ -998,11 +1057,11 @@ func (x StatusStickerInteractionMessage_StatusStickerType) String() string {
}
func (StatusStickerInteractionMessage_StatusStickerType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[15].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[16].Descriptor()
}
func (StatusStickerInteractionMessage_StatusStickerType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[15]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[16]
}
func (x StatusStickerInteractionMessage_StatusStickerType) Number() protoreflect.EnumNumber {
@@ -1054,11 +1113,11 @@ func (x ButtonsResponseMessage_Type) String() string {
}
func (ButtonsResponseMessage_Type) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[16].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[17].Descriptor()
}
func (ButtonsResponseMessage_Type) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[16]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[17]
}
func (x ButtonsResponseMessage_Type) Number() protoreflect.EnumNumber {
@@ -1125,11 +1184,11 @@ func (x ButtonsMessage_HeaderType) String() string {
}
func (ButtonsMessage_HeaderType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[17].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[18].Descriptor()
}
func (ButtonsMessage_HeaderType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[17]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[18]
}
func (x ButtonsMessage_HeaderType) Number() protoreflect.EnumNumber {
@@ -1184,11 +1243,11 @@ func (x ButtonsMessage_Button_Type) String() string {
}
func (ButtonsMessage_Button_Type) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[18].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[19].Descriptor()
}
func (ButtonsMessage_Button_Type) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[18]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[19]
}
func (x ButtonsMessage_Button_Type) Number() protoreflect.EnumNumber {
@@ -1243,11 +1302,11 @@ func (x SecretEncryptedMessage_SecretEncType) String() string {
}
func (SecretEncryptedMessage_SecretEncType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[19].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[20].Descriptor()
}
func (SecretEncryptedMessage_SecretEncType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[19]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[20]
}
func (x SecretEncryptedMessage_SecretEncType) Number() protoreflect.EnumNumber {
@@ -1299,11 +1358,11 @@ func (x GroupInviteMessage_GroupType) String() string {
}
func (GroupInviteMessage_GroupType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[20].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[21].Descriptor()
}
func (GroupInviteMessage_GroupType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[20]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[21]
}
func (x GroupInviteMessage_GroupType) Number() protoreflect.EnumNumber {
@@ -1355,11 +1414,11 @@ func (x InteractiveResponseMessage_Body_Format) String() string {
}
func (InteractiveResponseMessage_Body_Format) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[21].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[22].Descriptor()
}
func (InteractiveResponseMessage_Body_Format) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[21]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[22]
}
func (x InteractiveResponseMessage_Body_Format) Number() protoreflect.EnumNumber {
@@ -1414,11 +1473,11 @@ func (x InteractiveMessage_CarouselMessage_CarouselCardType) String() string {
}
func (InteractiveMessage_CarouselMessage_CarouselCardType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[22].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[23].Descriptor()
}
func (InteractiveMessage_CarouselMessage_CarouselCardType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[22]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[23]
}
func (x InteractiveMessage_CarouselMessage_CarouselCardType) Number() protoreflect.EnumNumber {
@@ -1476,11 +1535,11 @@ func (x InteractiveMessage_ShopMessage_Surface) String() string {
}
func (InteractiveMessage_ShopMessage_Surface) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[23].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[24].Descriptor()
}
func (InteractiveMessage_ShopMessage_Surface) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[23]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[24]
}
func (x InteractiveMessage_ShopMessage_Surface) Number() protoreflect.EnumNumber {
@@ -1532,11 +1591,11 @@ func (x ListResponseMessage_ListType) String() string {
}
func (ListResponseMessage_ListType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[24].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[25].Descriptor()
}
func (ListResponseMessage_ListType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[24]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[25]
}
func (x ListResponseMessage_ListType) Number() protoreflect.EnumNumber {
@@ -1591,11 +1650,11 @@ func (x ListMessage_ListType) String() string {
}
func (ListMessage_ListType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[25].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[26].Descriptor()
}
func (ListMessage_ListType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[25]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[26]
}
func (x ListMessage_ListType) Number() protoreflect.EnumNumber {
@@ -1644,11 +1703,11 @@ func (x OrderMessage_OrderSurface) String() string {
}
func (OrderMessage_OrderSurface) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[26].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[27].Descriptor()
}
func (OrderMessage_OrderSurface) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[26]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[27]
}
func (x OrderMessage_OrderSurface) Number() protoreflect.EnumNumber {
@@ -1703,11 +1762,11 @@ func (x OrderMessage_OrderStatus) String() string {
}
func (OrderMessage_OrderStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[27].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[28].Descriptor()
}
func (OrderMessage_OrderStatus) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[27]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[28]
}
func (x OrderMessage_OrderStatus) Number() protoreflect.EnumNumber {
@@ -1756,11 +1815,11 @@ func (x StatusQuotedMessage_StatusQuotedMessageType) String() string {
}
func (StatusQuotedMessage_StatusQuotedMessageType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[28].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[29].Descriptor()
}
func (StatusQuotedMessage_StatusQuotedMessageType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[28]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[29]
}
func (x StatusQuotedMessage_StatusQuotedMessageType) Number() protoreflect.EnumNumber {
@@ -1818,11 +1877,11 @@ func (x PaymentInviteMessage_ServiceType) String() string {
}
func (PaymentInviteMessage_ServiceType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[29].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[30].Descriptor()
}
func (PaymentInviteMessage_ServiceType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[29]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[30]
}
func (x PaymentInviteMessage_ServiceType) Number() protoreflect.EnumNumber {
@@ -1874,11 +1933,11 @@ func (x HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeC
}
func (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_CalendarType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[30].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[31].Descriptor()
}
func (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_CalendarType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[30]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[31]
}
func (x HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_CalendarType) Number() protoreflect.EnumNumber {
@@ -1945,11 +2004,11 @@ func (x HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeC
}
func (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_DayOfWeekType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[31].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[32].Descriptor()
}
func (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_DayOfWeekType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[31]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[32]
}
func (x HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_DayOfWeekType) Number() protoreflect.EnumNumber {
@@ -2013,11 +2072,11 @@ func (x PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistoryS
}
func (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponseCode) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[32].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[33].Descriptor()
}
func (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponseCode) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[32]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[33]
}
func (x PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponseCode) Number() protoreflect.EnumNumber {
@@ -2084,11 +2143,11 @@ func (x PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHist
}
func (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandResponseCode) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[33].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[34].Descriptor()
}
func (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandResponseCode) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[33]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[34]
}
func (x PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandResponseCode) Number() protoreflect.EnumNumber {
@@ -2137,11 +2196,11 @@ func (x PeerDataOperationRequestMessage_GalaxyFlowAction_GalaxyFlowActionType) S
}
func (PeerDataOperationRequestMessage_GalaxyFlowAction_GalaxyFlowActionType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[34].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[35].Descriptor()
}
func (PeerDataOperationRequestMessage_GalaxyFlowAction_GalaxyFlowActionType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[34]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[35]
}
func (x PeerDataOperationRequestMessage_GalaxyFlowAction_GalaxyFlowActionType) Number() protoreflect.EnumNumber {
@@ -2193,11 +2252,11 @@ func (x RequestWelcomeMessageMetadata_LocalChatState) String() string {
}
func (RequestWelcomeMessageMetadata_LocalChatState) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[35].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[36].Descriptor()
}
func (RequestWelcomeMessageMetadata_LocalChatState) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[35]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[36]
}
func (x RequestWelcomeMessageMetadata_LocalChatState) Number() protoreflect.EnumNumber {
@@ -2321,11 +2380,11 @@ func (x ProtocolMessage_Type) String() string {
}
func (ProtocolMessage_Type) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[36].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[37].Descriptor()
}
func (ProtocolMessage_Type) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[36]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[37]
}
func (x ProtocolMessage_Type) Number() protoreflect.EnumNumber {
@@ -2380,11 +2439,11 @@ func (x CloudAPIThreadControlNotification_CloudAPIThreadControl) String() string
}
func (CloudAPIThreadControlNotification_CloudAPIThreadControl) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[37].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[38].Descriptor()
}
func (CloudAPIThreadControlNotification_CloudAPIThreadControl) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[37]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[38]
}
func (x CloudAPIThreadControlNotification_CloudAPIThreadControl) Number() protoreflect.EnumNumber {
@@ -2436,11 +2495,11 @@ func (x VideoMessage_VideoSourceType) String() string {
}
func (VideoMessage_VideoSourceType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[38].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[39].Descriptor()
}
func (VideoMessage_VideoSourceType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[38]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[39]
}
func (x VideoMessage_VideoSourceType) Number() protoreflect.EnumNumber {
@@ -2498,11 +2557,11 @@ func (x VideoMessage_Attribution) String() string {
}
func (VideoMessage_Attribution) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[39].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[40].Descriptor()
}
func (VideoMessage_Attribution) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[39]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[40]
}
func (x VideoMessage_Attribution) Number() protoreflect.EnumNumber {
@@ -2560,11 +2619,11 @@ func (x ExtendedTextMessage_InviteLinkGroupType) String() string {
}
func (ExtendedTextMessage_InviteLinkGroupType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[40].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[41].Descriptor()
}
func (ExtendedTextMessage_InviteLinkGroupType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[40]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[41]
}
func (x ExtendedTextMessage_InviteLinkGroupType) Number() protoreflect.EnumNumber {
@@ -2628,11 +2687,11 @@ func (x ExtendedTextMessage_PreviewType) String() string {
}
func (ExtendedTextMessage_PreviewType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[41].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[42].Descriptor()
}
func (ExtendedTextMessage_PreviewType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[41]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[42]
}
func (x ExtendedTextMessage_PreviewType) Number() protoreflect.EnumNumber {
@@ -2702,11 +2761,11 @@ func (x ExtendedTextMessage_FontType) String() string {
}
func (ExtendedTextMessage_FontType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[42].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[43].Descriptor()
}
func (ExtendedTextMessage_FontType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[42]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[43]
}
func (x ExtendedTextMessage_FontType) Number() protoreflect.EnumNumber {
@@ -2770,11 +2829,11 @@ func (x LinkPreviewMetadata_SocialMediaPostType) String() string {
}
func (LinkPreviewMetadata_SocialMediaPostType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[43].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[44].Descriptor()
}
func (LinkPreviewMetadata_SocialMediaPostType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[43]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[44]
}
func (x LinkPreviewMetadata_SocialMediaPostType) Number() protoreflect.EnumNumber {
@@ -2826,11 +2885,11 @@ func (x PaymentLinkMetadata_PaymentLinkHeader_PaymentLinkHeaderType) String() st
}
func (PaymentLinkMetadata_PaymentLinkHeader_PaymentLinkHeaderType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[44].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[45].Descriptor()
}
func (PaymentLinkMetadata_PaymentLinkHeader_PaymentLinkHeaderType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[44]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[45]
}
func (x PaymentLinkMetadata_PaymentLinkHeader_PaymentLinkHeaderType) Number() protoreflect.EnumNumber {
@@ -2888,11 +2947,11 @@ func (x StatusNotificationMessage_StatusNotificationType) String() string {
}
func (StatusNotificationMessage_StatusNotificationType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[45].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[46].Descriptor()
}
func (StatusNotificationMessage_StatusNotificationType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[45]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[46]
}
func (x StatusNotificationMessage_StatusNotificationType) Number() protoreflect.EnumNumber {
@@ -2944,11 +3003,11 @@ func (x InvoiceMessage_AttachmentType) String() string {
}
func (InvoiceMessage_AttachmentType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[46].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[47].Descriptor()
}
func (InvoiceMessage_AttachmentType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[46]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[47]
}
func (x InvoiceMessage_AttachmentType) Number() protoreflect.EnumNumber {
@@ -3006,11 +3065,11 @@ func (x ImageMessage_ImageSourceType) String() string {
}
func (ImageMessage_ImageSourceType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[47].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[48].Descriptor()
}
func (ImageMessage_ImageSourceType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[47]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[48]
}
func (x ImageMessage_ImageSourceType) Number() protoreflect.EnumNumber {
@@ -3062,11 +3121,11 @@ func (x ContextInfo_QuotedType) String() string {
}
func (ContextInfo_QuotedType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[48].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[49].Descriptor()
}
func (ContextInfo_QuotedType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[48]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[49]
}
func (x ContextInfo_QuotedType) Number() protoreflect.EnumNumber {
@@ -3130,11 +3189,11 @@ func (x ContextInfo_ForwardOrigin) String() string {
}
func (ContextInfo_ForwardOrigin) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[49].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[50].Descriptor()
}
func (ContextInfo_ForwardOrigin) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[49]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[50]
}
func (x ContextInfo_ForwardOrigin) Number() protoreflect.EnumNumber {
@@ -3198,11 +3257,11 @@ func (x ContextInfo_StatusSourceType) String() string {
}
func (ContextInfo_StatusSourceType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[50].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[51].Descriptor()
}
func (ContextInfo_StatusSourceType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[50]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[51]
}
func (x ContextInfo_StatusSourceType) Number() protoreflect.EnumNumber {
@@ -3275,11 +3334,11 @@ func (x ContextInfo_PairedMediaType) String() string {
}
func (ContextInfo_PairedMediaType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[51].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[52].Descriptor()
}
func (ContextInfo_PairedMediaType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[51]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[52]
}
func (x ContextInfo_PairedMediaType) Number() protoreflect.EnumNumber {
@@ -3340,11 +3399,11 @@ func (x ContextInfo_StatusAttributionType) String() string {
}
func (ContextInfo_StatusAttributionType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[52].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[53].Descriptor()
}
func (ContextInfo_StatusAttributionType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[52]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[53]
}
func (x ContextInfo_StatusAttributionType) Number() protoreflect.EnumNumber {
@@ -3396,11 +3455,11 @@ func (x ContextInfo_StatusAudienceMetadata_AudienceType) String() string {
}
func (ContextInfo_StatusAudienceMetadata_AudienceType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[53].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[54].Descriptor()
}
func (ContextInfo_StatusAudienceMetadata_AudienceType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[53]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[54]
}
func (x ContextInfo_StatusAudienceMetadata_AudienceType) Number() protoreflect.EnumNumber {
@@ -3452,11 +3511,11 @@ func (x ContextInfo_DataSharingContext_DataSharingFlags) String() string {
}
func (ContextInfo_DataSharingContext_DataSharingFlags) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[54].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[55].Descriptor()
}
func (ContextInfo_DataSharingContext_DataSharingFlags) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[54]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[55]
}
func (x ContextInfo_DataSharingContext_DataSharingFlags) Number() protoreflect.EnumNumber {
@@ -3511,11 +3570,11 @@ func (x ContextInfo_ForwardedNewsletterMessageInfo_ContentType) String() string
}
func (ContextInfo_ForwardedNewsletterMessageInfo_ContentType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[55].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[56].Descriptor()
}
func (ContextInfo_ForwardedNewsletterMessageInfo_ContentType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[55]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[56]
}
func (x ContextInfo_ForwardedNewsletterMessageInfo_ContentType) Number() protoreflect.EnumNumber {
@@ -3567,11 +3626,11 @@ func (x ContextInfo_ExternalAdReplyInfo_AdType) String() string {
}
func (ContextInfo_ExternalAdReplyInfo_AdType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[56].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[57].Descriptor()
}
func (ContextInfo_ExternalAdReplyInfo_AdType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[56]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[57]
}
func (x ContextInfo_ExternalAdReplyInfo_AdType) Number() protoreflect.EnumNumber {
@@ -3626,11 +3685,11 @@ func (x ContextInfo_ExternalAdReplyInfo_MediaType) String() string {
}
func (ContextInfo_ExternalAdReplyInfo_MediaType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[57].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[58].Descriptor()
}
func (ContextInfo_ExternalAdReplyInfo_MediaType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[57]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[58]
}
func (x ContextInfo_ExternalAdReplyInfo_MediaType) Number() protoreflect.EnumNumber {
@@ -3685,11 +3744,11 @@ func (x ContextInfo_AdReplyInfo_MediaType) String() string {
}
func (ContextInfo_AdReplyInfo_MediaType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[58].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[59].Descriptor()
}
func (ContextInfo_AdReplyInfo_MediaType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[58]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[59]
}
func (x ContextInfo_AdReplyInfo_MediaType) Number() protoreflect.EnumNumber {
@@ -3795,11 +3854,11 @@ func (x MessageAssociation_AssociationType) String() string {
}
func (MessageAssociation_AssociationType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[59].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[60].Descriptor()
}
func (MessageAssociation_AssociationType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[59]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[60]
}
func (x MessageAssociation_AssociationType) Number() protoreflect.EnumNumber {
@@ -3854,11 +3913,11 @@ func (x ThreadID_ThreadType) String() string {
}
func (ThreadID_ThreadType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[60].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[61].Descriptor()
}
func (ThreadID_ThreadType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[60]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[61]
}
func (x ThreadID_ThreadType) Number() protoreflect.EnumNumber {
@@ -3910,11 +3969,11 @@ func (x MessageContextInfo_MessageAddonExpiryType) String() string {
}
func (MessageContextInfo_MessageAddonExpiryType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[61].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[62].Descriptor()
}
func (MessageContextInfo_MessageAddonExpiryType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[61]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[62]
}
func (x MessageContextInfo_MessageAddonExpiryType) Number() protoreflect.EnumNumber {
@@ -3969,11 +4028,11 @@ func (x InteractiveAnnotation_StatusLinkType) String() string {
}
func (InteractiveAnnotation_StatusLinkType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[62].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[63].Descriptor()
}
func (InteractiveAnnotation_StatusLinkType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[62]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[63]
}
func (x InteractiveAnnotation_StatusLinkType) Number() protoreflect.EnumNumber {
@@ -4028,11 +4087,11 @@ func (x HydratedTemplateButton_HydratedURLButton_WebviewPresentationType) String
}
func (HydratedTemplateButton_HydratedURLButton_WebviewPresentationType) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[63].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[64].Descriptor()
}
func (HydratedTemplateButton_HydratedURLButton_WebviewPresentationType) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[63]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[64]
}
func (x HydratedTemplateButton_HydratedURLButton_WebviewPresentationType) Number() protoreflect.EnumNumber {
@@ -4084,11 +4143,11 @@ func (x PaymentBackground_Type) String() string {
}
func (PaymentBackground_Type) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[64].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[65].Descriptor()
}
func (PaymentBackground_Type) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[64]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[65]
}
func (x PaymentBackground_Type) Number() protoreflect.EnumNumber {
@@ -4152,11 +4211,11 @@ func (x DisappearingMode_Trigger) String() string {
}
func (DisappearingMode_Trigger) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[65].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[66].Descriptor()
}
func (DisappearingMode_Trigger) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[65]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[66]
}
func (x DisappearingMode_Trigger) Number() protoreflect.EnumNumber {
@@ -4214,11 +4273,11 @@ func (x DisappearingMode_Initiator) String() string {
}
func (DisappearingMode_Initiator) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[66].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[67].Descriptor()
}
func (DisappearingMode_Initiator) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[66]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[67]
}
func (x DisappearingMode_Initiator) Number() protoreflect.EnumNumber {
@@ -4276,11 +4335,11 @@ func (x ProcessedVideo_VideoQuality) String() string {
}
func (ProcessedVideo_VideoQuality) Descriptor() protoreflect.EnumDescriptor {
- return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[67].Descriptor()
+ return file_waE2E_WAWebProtobufsE2E_proto_enumTypes[68].Descriptor()
}
func (ProcessedVideo_VideoQuality) Type() protoreflect.EnumType {
- return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[67]
+ return &file_waE2E_WAWebProtobufsE2E_proto_enumTypes[68]
}
func (x ProcessedVideo_VideoQuality) Number() protoreflect.EnumNumber {
@@ -8552,6 +8611,7 @@ type MessageContextInfo struct {
LimitSharing *waCommon.LimitSharing `protobuf:"bytes,13,opt,name=limitSharing" json:"limitSharing,omitempty"`
LimitSharingV2 *waCommon.LimitSharing `protobuf:"bytes,14,opt,name=limitSharingV2" json:"limitSharingV2,omitempty"`
ThreadID []*ThreadID `protobuf:"bytes,15,rep,name=threadID" json:"threadID,omitempty"`
+ WeblinkRenderConfig *WebLinkRenderConfig `protobuf:"varint,16,opt,name=weblinkRenderConfig,enum=WAWebProtobufsE2E.WebLinkRenderConfig" json:"weblinkRenderConfig,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -8691,6 +8751,13 @@ func (x *MessageContextInfo) GetThreadID() []*ThreadID {
return nil
}
+func (x *MessageContextInfo) GetWeblinkRenderConfig() WebLinkRenderConfig {
+ if x != nil && x.WeblinkRenderConfig != nil {
+ return *x.WeblinkRenderConfig
+ }
+ return WebLinkRenderConfig_WEBVIEW
+}
+
type InteractiveAnnotation struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to Action:
@@ -9322,9 +9389,8 @@ type Message struct {
StatusQuotedMessage *StatusQuotedMessage `protobuf:"bytes,109,opt,name=statusQuotedMessage" json:"statusQuotedMessage,omitempty"`
StatusStickerInteractionMessage *StatusStickerInteractionMessage `protobuf:"bytes,110,opt,name=statusStickerInteractionMessage" json:"statusStickerInteractionMessage,omitempty"`
PollCreationMessageV5 *PollCreationMessage `protobuf:"bytes,111,opt,name=pollCreationMessageV5" json:"pollCreationMessageV5,omitempty"`
- PollResultSnapshotMessageV2 *PollResultSnapshotMessage `protobuf:"bytes,112,opt,name=pollResultSnapshotMessageV2" json:"pollResultSnapshotMessageV2,omitempty"`
NewsletterFollowerInviteMessageV2 *NewsletterFollowerInviteMessage `protobuf:"bytes,113,opt,name=newsletterFollowerInviteMessageV2" json:"newsletterFollowerInviteMessageV2,omitempty"`
- RequestContactInfoMessage *RequestContactInfoMessage `protobuf:"bytes,114,opt,name=requestContactInfoMessage" json:"requestContactInfoMessage,omitempty"`
+ PollResultSnapshotMessageV3 *PollResultSnapshotMessage `protobuf:"bytes,115,opt,name=pollResultSnapshotMessageV3" json:"pollResultSnapshotMessageV3,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -10010,13 +10076,6 @@ func (x *Message) GetPollCreationMessageV5() *PollCreationMessage {
return nil
}
-func (x *Message) GetPollResultSnapshotMessageV2() *PollResultSnapshotMessage {
- if x != nil {
- return x.PollResultSnapshotMessageV2
- }
- return nil
-}
-
func (x *Message) GetNewsletterFollowerInviteMessageV2() *NewsletterFollowerInviteMessage {
if x != nil {
return x.NewsletterFollowerInviteMessageV2
@@ -10024,9 +10083,9 @@ func (x *Message) GetNewsletterFollowerInviteMessageV2() *NewsletterFollowerInvi
return nil
}
-func (x *Message) GetRequestContactInfoMessage() *RequestContactInfoMessage {
+func (x *Message) GetPollResultSnapshotMessageV3() *PollResultSnapshotMessage {
if x != nil {
- return x.RequestContactInfoMessage
+ return x.PollResultSnapshotMessageV3
}
return nil
}
@@ -10375,6 +10434,8 @@ type EventMessage struct {
EndTime *int64 `protobuf:"varint,8,opt,name=endTime" json:"endTime,omitempty"`
ExtraGuestsAllowed *bool `protobuf:"varint,9,opt,name=extraGuestsAllowed" json:"extraGuestsAllowed,omitempty"`
IsScheduleCall *bool `protobuf:"varint,10,opt,name=isScheduleCall" json:"isScheduleCall,omitempty"`
+ HasReminder *bool `protobuf:"varint,11,opt,name=hasReminder" json:"hasReminder,omitempty"`
+ ReminderOffsetSec *int64 `protobuf:"varint,12,opt,name=reminderOffsetSec" json:"reminderOffsetSec,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -10479,6 +10540,20 @@ func (x *EventMessage) GetIsScheduleCall() bool {
return false
}
+func (x *EventMessage) GetHasReminder() bool {
+ if x != nil && x.HasReminder != nil {
+ return *x.HasReminder
+ }
+ return false
+}
+
+func (x *EventMessage) GetReminderOffsetSec() int64 {
+ if x != nil && x.ReminderOffsetSec != nil {
+ return *x.ReminderOffsetSec
+ }
+ return 0
+}
+
type CommentMessage struct {
state protoimpl.MessageState `protogen:"open.v1"`
Message *Message `protobuf:"bytes,1,opt,name=message" json:"message,omitempty"`
@@ -11415,66 +11490,6 @@ func (x *DeviceSentMessage) GetPhash() string {
return ""
}
-type RequestContactInfoMessage struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- Text *string `protobuf:"bytes,1,opt,name=text" json:"text,omitempty"`
- CtaButtonText *string `protobuf:"bytes,2,opt,name=ctaButtonText" json:"ctaButtonText,omitempty"`
- ContextInfo *ContextInfo `protobuf:"bytes,3,opt,name=contextInfo" json:"contextInfo,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *RequestContactInfoMessage) Reset() {
- *x = RequestContactInfoMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[65]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *RequestContactInfoMessage) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*RequestContactInfoMessage) ProtoMessage() {}
-
-func (x *RequestContactInfoMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[65]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use RequestContactInfoMessage.ProtoReflect.Descriptor instead.
-func (*RequestContactInfoMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{65}
-}
-
-func (x *RequestContactInfoMessage) GetText() string {
- if x != nil && x.Text != nil {
- return *x.Text
- }
- return ""
-}
-
-func (x *RequestContactInfoMessage) GetCtaButtonText() string {
- if x != nil && x.CtaButtonText != nil {
- return *x.CtaButtonText
- }
- return ""
-}
-
-func (x *RequestContactInfoMessage) GetContextInfo() *ContextInfo {
- if x != nil {
- return x.ContextInfo
- }
- return nil
-}
-
type RequestPhoneNumberMessage struct {
state protoimpl.MessageState `protogen:"open.v1"`
ContextInfo *ContextInfo `protobuf:"bytes,1,opt,name=contextInfo" json:"contextInfo,omitempty"`
@@ -11484,7 +11499,7 @@ type RequestPhoneNumberMessage struct {
func (x *RequestPhoneNumberMessage) Reset() {
*x = RequestPhoneNumberMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[66]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -11496,7 +11511,7 @@ func (x *RequestPhoneNumberMessage) String() string {
func (*RequestPhoneNumberMessage) ProtoMessage() {}
func (x *RequestPhoneNumberMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[66]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[65]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11509,7 +11524,7 @@ func (x *RequestPhoneNumberMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use RequestPhoneNumberMessage.ProtoReflect.Descriptor instead.
func (*RequestPhoneNumberMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{66}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{65}
}
func (x *RequestPhoneNumberMessage) GetContextInfo() *ContextInfo {
@@ -11532,7 +11547,7 @@ type NewsletterFollowerInviteMessage struct {
func (x *NewsletterFollowerInviteMessage) Reset() {
*x = NewsletterFollowerInviteMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[67]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -11544,7 +11559,7 @@ func (x *NewsletterFollowerInviteMessage) String() string {
func (*NewsletterFollowerInviteMessage) ProtoMessage() {}
func (x *NewsletterFollowerInviteMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[67]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[66]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11557,7 +11572,7 @@ func (x *NewsletterFollowerInviteMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use NewsletterFollowerInviteMessage.ProtoReflect.Descriptor instead.
func (*NewsletterFollowerInviteMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{67}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{66}
}
func (x *NewsletterFollowerInviteMessage) GetNewsletterJID() string {
@@ -11609,7 +11624,7 @@ type NewsletterAdminInviteMessage struct {
func (x *NewsletterAdminInviteMessage) Reset() {
*x = NewsletterAdminInviteMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[68]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -11621,7 +11636,7 @@ func (x *NewsletterAdminInviteMessage) String() string {
func (*NewsletterAdminInviteMessage) ProtoMessage() {}
func (x *NewsletterAdminInviteMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[68]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[67]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11634,7 +11649,7 @@ func (x *NewsletterAdminInviteMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use NewsletterAdminInviteMessage.ProtoReflect.Descriptor instead.
func (*NewsletterAdminInviteMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{68}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{67}
}
func (x *NewsletterAdminInviteMessage) GetNewsletterJID() string {
@@ -11693,7 +11708,7 @@ type ProductMessage struct {
func (x *ProductMessage) Reset() {
*x = ProductMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[69]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -11705,7 +11720,7 @@ func (x *ProductMessage) String() string {
func (*ProductMessage) ProtoMessage() {}
func (x *ProductMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[69]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[68]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11718,7 +11733,7 @@ func (x *ProductMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use ProductMessage.ProtoReflect.Descriptor instead.
func (*ProductMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{69}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{68}
}
func (x *ProductMessage) GetProduct() *ProductMessage_ProductSnapshot {
@@ -11776,7 +11791,7 @@ type TemplateButtonReplyMessage struct {
func (x *TemplateButtonReplyMessage) Reset() {
*x = TemplateButtonReplyMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[70]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[69]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -11788,7 +11803,7 @@ func (x *TemplateButtonReplyMessage) String() string {
func (*TemplateButtonReplyMessage) ProtoMessage() {}
func (x *TemplateButtonReplyMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[70]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[69]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11801,7 +11816,7 @@ func (x *TemplateButtonReplyMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use TemplateButtonReplyMessage.ProtoReflect.Descriptor instead.
func (*TemplateButtonReplyMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{70}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{69}
}
func (x *TemplateButtonReplyMessage) GetSelectedID() string {
@@ -11856,7 +11871,7 @@ type TemplateMessage struct {
func (x *TemplateMessage) Reset() {
*x = TemplateMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[71]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[70]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -11868,7 +11883,7 @@ func (x *TemplateMessage) String() string {
func (*TemplateMessage) ProtoMessage() {}
func (x *TemplateMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[71]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[70]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11881,7 +11896,7 @@ func (x *TemplateMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use TemplateMessage.ProtoReflect.Descriptor instead.
func (*TemplateMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{71}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{70}
}
func (x *TemplateMessage) GetFormat() isTemplateMessage_Format {
@@ -11990,7 +12005,7 @@ type StickerMessage struct {
func (x *StickerMessage) Reset() {
*x = StickerMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[72]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[71]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12002,7 +12017,7 @@ func (x *StickerMessage) String() string {
func (*StickerMessage) ProtoMessage() {}
func (x *StickerMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[72]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[71]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12015,7 +12030,7 @@ func (x *StickerMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use StickerMessage.ProtoReflect.Descriptor instead.
func (*StickerMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{72}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{71}
}
func (x *StickerMessage) GetURL() string {
@@ -12183,7 +12198,7 @@ type LiveLocationMessage struct {
func (x *LiveLocationMessage) Reset() {
*x = LiveLocationMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[73]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[72]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12195,7 +12210,7 @@ func (x *LiveLocationMessage) String() string {
func (*LiveLocationMessage) ProtoMessage() {}
func (x *LiveLocationMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[73]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[72]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12208,7 +12223,7 @@ func (x *LiveLocationMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use LiveLocationMessage.ProtoReflect.Descriptor instead.
func (*LiveLocationMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{73}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{72}
}
func (x *LiveLocationMessage) GetDegreesLatitude() float64 {
@@ -12290,7 +12305,7 @@ type CancelPaymentRequestMessage struct {
func (x *CancelPaymentRequestMessage) Reset() {
*x = CancelPaymentRequestMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[74]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[73]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12302,7 +12317,7 @@ func (x *CancelPaymentRequestMessage) String() string {
func (*CancelPaymentRequestMessage) ProtoMessage() {}
func (x *CancelPaymentRequestMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[74]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[73]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12315,7 +12330,7 @@ func (x *CancelPaymentRequestMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use CancelPaymentRequestMessage.ProtoReflect.Descriptor instead.
func (*CancelPaymentRequestMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{74}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{73}
}
func (x *CancelPaymentRequestMessage) GetKey() *waCommon.MessageKey {
@@ -12334,7 +12349,7 @@ type DeclinePaymentRequestMessage struct {
func (x *DeclinePaymentRequestMessage) Reset() {
*x = DeclinePaymentRequestMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[75]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12346,7 +12361,7 @@ func (x *DeclinePaymentRequestMessage) String() string {
func (*DeclinePaymentRequestMessage) ProtoMessage() {}
func (x *DeclinePaymentRequestMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[75]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[74]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12359,7 +12374,7 @@ func (x *DeclinePaymentRequestMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeclinePaymentRequestMessage.ProtoReflect.Descriptor instead.
func (*DeclinePaymentRequestMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{75}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{74}
}
func (x *DeclinePaymentRequestMessage) GetKey() *waCommon.MessageKey {
@@ -12384,7 +12399,7 @@ type RequestPaymentMessage struct {
func (x *RequestPaymentMessage) Reset() {
*x = RequestPaymentMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[76]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12396,7 +12411,7 @@ func (x *RequestPaymentMessage) String() string {
func (*RequestPaymentMessage) ProtoMessage() {}
func (x *RequestPaymentMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[76]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[75]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12409,7 +12424,7 @@ func (x *RequestPaymentMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use RequestPaymentMessage.ProtoReflect.Descriptor instead.
func (*RequestPaymentMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{76}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{75}
}
func (x *RequestPaymentMessage) GetNoteMessage() *Message {
@@ -12473,7 +12488,7 @@ type SendPaymentMessage struct {
func (x *SendPaymentMessage) Reset() {
*x = SendPaymentMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[77]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[76]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12485,7 +12500,7 @@ func (x *SendPaymentMessage) String() string {
func (*SendPaymentMessage) ProtoMessage() {}
func (x *SendPaymentMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[77]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[76]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12498,7 +12513,7 @@ func (x *SendPaymentMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use SendPaymentMessage.ProtoReflect.Descriptor instead.
func (*SendPaymentMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{77}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{76}
}
func (x *SendPaymentMessage) GetNoteMessage() *Message {
@@ -12540,7 +12555,7 @@ type ContactsArrayMessage struct {
func (x *ContactsArrayMessage) Reset() {
*x = ContactsArrayMessage{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[78]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[77]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12552,7 +12567,7 @@ func (x *ContactsArrayMessage) String() string {
func (*ContactsArrayMessage) ProtoMessage() {}
func (x *ContactsArrayMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[78]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[77]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12565,7 +12580,7 @@ func (x *ContactsArrayMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use ContactsArrayMessage.ProtoReflect.Descriptor instead.
func (*ContactsArrayMessage) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{78}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{77}
}
func (x *ContactsArrayMessage) GetDisplayName() string {
@@ -12598,7 +12613,7 @@ type InitialSecurityNotificationSettingSync struct {
func (x *InitialSecurityNotificationSettingSync) Reset() {
*x = InitialSecurityNotificationSettingSync{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[79]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[78]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12610,7 +12625,7 @@ func (x *InitialSecurityNotificationSettingSync) String() string {
func (*InitialSecurityNotificationSettingSync) ProtoMessage() {}
func (x *InitialSecurityNotificationSettingSync) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[79]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[78]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12623,7 +12638,7 @@ func (x *InitialSecurityNotificationSettingSync) ProtoReflect() protoreflect.Mes
// Deprecated: Use InitialSecurityNotificationSettingSync.ProtoReflect.Descriptor instead.
func (*InitialSecurityNotificationSettingSync) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{79}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{78}
}
func (x *InitialSecurityNotificationSettingSync) GetSecurityNotificationEnabled() bool {
@@ -12642,7 +12657,7 @@ type FullHistorySyncOnDemandRequestMetadata struct {
func (x *FullHistorySyncOnDemandRequestMetadata) Reset() {
*x = FullHistorySyncOnDemandRequestMetadata{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[80]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[79]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12654,7 +12669,7 @@ func (x *FullHistorySyncOnDemandRequestMetadata) String() string {
func (*FullHistorySyncOnDemandRequestMetadata) ProtoMessage() {}
func (x *FullHistorySyncOnDemandRequestMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[80]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[79]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12667,7 +12682,7 @@ func (x *FullHistorySyncOnDemandRequestMetadata) ProtoReflect() protoreflect.Mes
// Deprecated: Use FullHistorySyncOnDemandRequestMetadata.ProtoReflect.Descriptor instead.
func (*FullHistorySyncOnDemandRequestMetadata) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{80}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{79}
}
func (x *FullHistorySyncOnDemandRequestMetadata) GetRequestID() string {
@@ -12687,7 +12702,7 @@ type AppStateFatalExceptionNotification struct {
func (x *AppStateFatalExceptionNotification) Reset() {
*x = AppStateFatalExceptionNotification{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[81]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[80]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12699,7 +12714,7 @@ func (x *AppStateFatalExceptionNotification) String() string {
func (*AppStateFatalExceptionNotification) ProtoMessage() {}
func (x *AppStateFatalExceptionNotification) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[81]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[80]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12712,7 +12727,7 @@ func (x *AppStateFatalExceptionNotification) ProtoReflect() protoreflect.Message
// Deprecated: Use AppStateFatalExceptionNotification.ProtoReflect.Descriptor instead.
func (*AppStateFatalExceptionNotification) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{81}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{80}
}
func (x *AppStateFatalExceptionNotification) GetCollectionNames() []string {
@@ -12738,7 +12753,7 @@ type AppStateSyncKeyRequest struct {
func (x *AppStateSyncKeyRequest) Reset() {
*x = AppStateSyncKeyRequest{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[82]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[81]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12750,7 +12765,7 @@ func (x *AppStateSyncKeyRequest) String() string {
func (*AppStateSyncKeyRequest) ProtoMessage() {}
func (x *AppStateSyncKeyRequest) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[82]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[81]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12763,7 +12778,7 @@ func (x *AppStateSyncKeyRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use AppStateSyncKeyRequest.ProtoReflect.Descriptor instead.
func (*AppStateSyncKeyRequest) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{82}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{81}
}
func (x *AppStateSyncKeyRequest) GetKeyIDs() []*AppStateSyncKeyId {
@@ -12782,7 +12797,7 @@ type AppStateSyncKeyShare struct {
func (x *AppStateSyncKeyShare) Reset() {
*x = AppStateSyncKeyShare{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[83]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[82]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12794,7 +12809,7 @@ func (x *AppStateSyncKeyShare) String() string {
func (*AppStateSyncKeyShare) ProtoMessage() {}
func (x *AppStateSyncKeyShare) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[83]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[82]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12807,7 +12822,7 @@ func (x *AppStateSyncKeyShare) ProtoReflect() protoreflect.Message {
// Deprecated: Use AppStateSyncKeyShare.ProtoReflect.Descriptor instead.
func (*AppStateSyncKeyShare) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{83}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{82}
}
func (x *AppStateSyncKeyShare) GetKeys() []*AppStateSyncKey {
@@ -12828,7 +12843,7 @@ type AppStateSyncKeyData struct {
func (x *AppStateSyncKeyData) Reset() {
*x = AppStateSyncKeyData{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[84]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[83]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12840,7 +12855,7 @@ func (x *AppStateSyncKeyData) String() string {
func (*AppStateSyncKeyData) ProtoMessage() {}
func (x *AppStateSyncKeyData) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[84]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[83]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12853,7 +12868,7 @@ func (x *AppStateSyncKeyData) ProtoReflect() protoreflect.Message {
// Deprecated: Use AppStateSyncKeyData.ProtoReflect.Descriptor instead.
func (*AppStateSyncKeyData) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{84}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{83}
}
func (x *AppStateSyncKeyData) GetKeyData() []byte {
@@ -12888,7 +12903,7 @@ type AppStateSyncKeyFingerprint struct {
func (x *AppStateSyncKeyFingerprint) Reset() {
*x = AppStateSyncKeyFingerprint{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[85]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[84]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12900,7 +12915,7 @@ func (x *AppStateSyncKeyFingerprint) String() string {
func (*AppStateSyncKeyFingerprint) ProtoMessage() {}
func (x *AppStateSyncKeyFingerprint) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[85]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[84]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12913,7 +12928,7 @@ func (x *AppStateSyncKeyFingerprint) ProtoReflect() protoreflect.Message {
// Deprecated: Use AppStateSyncKeyFingerprint.ProtoReflect.Descriptor instead.
func (*AppStateSyncKeyFingerprint) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{85}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{84}
}
func (x *AppStateSyncKeyFingerprint) GetRawID() uint32 {
@@ -12946,7 +12961,7 @@ type AppStateSyncKeyId struct {
func (x *AppStateSyncKeyId) Reset() {
*x = AppStateSyncKeyId{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[86]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[85]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -12958,7 +12973,7 @@ func (x *AppStateSyncKeyId) String() string {
func (*AppStateSyncKeyId) ProtoMessage() {}
func (x *AppStateSyncKeyId) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[86]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[85]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12971,7 +12986,7 @@ func (x *AppStateSyncKeyId) ProtoReflect() protoreflect.Message {
// Deprecated: Use AppStateSyncKeyId.ProtoReflect.Descriptor instead.
func (*AppStateSyncKeyId) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{86}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{85}
}
func (x *AppStateSyncKeyId) GetKeyID() []byte {
@@ -12991,7 +13006,7 @@ type AppStateSyncKey struct {
func (x *AppStateSyncKey) Reset() {
*x = AppStateSyncKey{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[87]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[86]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -13003,7 +13018,7 @@ func (x *AppStateSyncKey) String() string {
func (*AppStateSyncKey) ProtoMessage() {}
func (x *AppStateSyncKey) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[87]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[86]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -13016,7 +13031,7 @@ func (x *AppStateSyncKey) ProtoReflect() protoreflect.Message {
// Deprecated: Use AppStateSyncKey.ProtoReflect.Descriptor instead.
func (*AppStateSyncKey) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{87}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{86}
}
func (x *AppStateSyncKey) GetKeyID() *AppStateSyncKeyId {
@@ -13049,13 +13064,14 @@ type HistorySyncNotification struct {
PeerDataRequestSessionID *string `protobuf:"bytes,12,opt,name=peerDataRequestSessionID" json:"peerDataRequestSessionID,omitempty"`
FullHistorySyncOnDemandRequestMetadata *FullHistorySyncOnDemandRequestMetadata `protobuf:"bytes,13,opt,name=fullHistorySyncOnDemandRequestMetadata" json:"fullHistorySyncOnDemandRequestMetadata,omitempty"`
EncHandle *string `protobuf:"bytes,14,opt,name=encHandle" json:"encHandle,omitempty"`
+ MessageAccessStatus *HistorySyncMessageAccessStatus `protobuf:"bytes,15,opt,name=messageAccessStatus" json:"messageAccessStatus,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *HistorySyncNotification) Reset() {
*x = HistorySyncNotification{}
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[88]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[87]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -13067,7 +13083,7 @@ func (x *HistorySyncNotification) String() string {
func (*HistorySyncNotification) ProtoMessage() {}
func (x *HistorySyncNotification) ProtoReflect() protoreflect.Message {
- mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[88]
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[87]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -13080,7 +13096,7 @@ func (x *HistorySyncNotification) ProtoReflect() protoreflect.Message {
// Deprecated: Use HistorySyncNotification.ProtoReflect.Descriptor instead.
func (*HistorySyncNotification) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{88}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{87}
}
func (x *HistorySyncNotification) GetFileSHA256() []byte {
@@ -13181,6 +13197,57 @@ func (x *HistorySyncNotification) GetEncHandle() string {
return ""
}
+func (x *HistorySyncNotification) GetMessageAccessStatus() *HistorySyncMessageAccessStatus {
+ if x != nil {
+ return x.MessageAccessStatus
+ }
+ return nil
+}
+
+type HistorySyncMessageAccessStatus struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ CompleteAccessGranted *bool `protobuf:"varint,1,opt,name=completeAccessGranted" json:"completeAccessGranted,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *HistorySyncMessageAccessStatus) Reset() {
+ *x = HistorySyncMessageAccessStatus{}
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[88]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *HistorySyncMessageAccessStatus) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HistorySyncMessageAccessStatus) ProtoMessage() {}
+
+func (x *HistorySyncMessageAccessStatus) ProtoReflect() protoreflect.Message {
+ mi := &file_waE2E_WAWebProtobufsE2E_proto_msgTypes[88]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HistorySyncMessageAccessStatus.ProtoReflect.Descriptor instead.
+func (*HistorySyncMessageAccessStatus) Descriptor() ([]byte, []int) {
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{88}
+}
+
+func (x *HistorySyncMessageAccessStatus) GetCompleteAccessGranted() bool {
+ if x != nil && x.CompleteAccessGranted != nil {
+ return *x.CompleteAccessGranted
+ }
+ return false
+}
+
type Chat struct {
state protoimpl.MessageState `protogen:"open.v1"`
DisplayName *string `protobuf:"bytes,1,opt,name=displayName" json:"displayName,omitempty"`
@@ -13244,6 +13311,7 @@ type Call struct {
ContextInfo *ContextInfo `protobuf:"bytes,7,opt,name=contextInfo" json:"contextInfo,omitempty"`
NativeFlowCallButtonPayload *string `protobuf:"bytes,8,opt,name=nativeFlowCallButtonPayload" json:"nativeFlowCallButtonPayload,omitempty"`
DeeplinkPayload *string `protobuf:"bytes,9,opt,name=deeplinkPayload" json:"deeplinkPayload,omitempty"`
+ MessageContextInfo *MessageContextInfo `protobuf:"bytes,10,opt,name=messageContextInfo" json:"messageContextInfo,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -13341,6 +13409,13 @@ func (x *Call) GetDeeplinkPayload() string {
return ""
}
+func (x *Call) GetMessageContextInfo() *MessageContextInfo {
+ if x != nil {
+ return x.MessageContextInfo
+ }
+ return nil
+}
+
type AudioMessage struct {
state protoimpl.MessageState `protogen:"open.v1"`
URL *string `protobuf:"bytes,1,opt,name=URL" json:"URL,omitempty"`
@@ -19794,7 +19869,7 @@ func (x *ProductMessage_ProductSnapshot) ProtoReflect() protoreflect.Message {
// Deprecated: Use ProductMessage_ProductSnapshot.ProtoReflect.Descriptor instead.
func (*ProductMessage_ProductSnapshot) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{69, 0}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{68, 0}
}
func (x *ProductMessage_ProductSnapshot) GetProductImage() *ImageMessage {
@@ -19917,7 +19992,7 @@ func (x *ProductMessage_CatalogSnapshot) ProtoReflect() protoreflect.Message {
// Deprecated: Use ProductMessage_CatalogSnapshot.ProtoReflect.Descriptor instead.
func (*ProductMessage_CatalogSnapshot) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{69, 1}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{68, 1}
}
func (x *ProductMessage_CatalogSnapshot) GetCatalogImage() *ImageMessage {
@@ -19987,7 +20062,7 @@ func (x *TemplateMessage_HydratedFourRowTemplate) ProtoReflect() protoreflect.Me
// Deprecated: Use TemplateMessage_HydratedFourRowTemplate.ProtoReflect.Descriptor instead.
func (*TemplateMessage_HydratedFourRowTemplate) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{71, 0}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{70, 0}
}
func (x *TemplateMessage_HydratedFourRowTemplate) GetTitle() isTemplateMessage_HydratedFourRowTemplate_Title {
@@ -20160,7 +20235,7 @@ func (x *TemplateMessage_FourRowTemplate) ProtoReflect() protoreflect.Message {
// Deprecated: Use TemplateMessage_FourRowTemplate.ProtoReflect.Descriptor instead.
func (*TemplateMessage_FourRowTemplate) Descriptor() ([]byte, []int) {
- return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{71, 1}
+ return file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP(), []int{70, 1}
}
func (x *TemplateMessage_FourRowTemplate) GetTitle() isTemplateMessage_FourRowTemplate_Title {
@@ -21576,7 +21651,7 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"ThreadType\x12\v\n" +
"\aUNKNOWN\x10\x00\x12\x10\n" +
"\fVIEW_REPLIES\x10\x01\x12\r\n" +
- "\tAI_THREAD\x10\x02\"\xe5\a\n" +
+ "\tAI_THREAD\x10\x02\"\xbf\b\n" +
"\x12MessageContextInfo\x12U\n" +
"\x12deviceListMetadata\x18\x01 \x01(\v2%.WAWebProtobufsE2E.DeviceListMetadataR\x12deviceListMetadata\x12<\n" +
"\x19deviceListMetadataVersion\x18\x02 \x01(\x05R\x19deviceListMetadataVersion\x12$\n" +
@@ -21593,7 +21668,8 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\x0esupportPayload\x18\f \x01(\tR\x0esupportPayload\x12:\n" +
"\flimitSharing\x18\r \x01(\v2\x16.WACommon.LimitSharingR\flimitSharing\x12>\n" +
"\x0elimitSharingV2\x18\x0e \x01(\v2\x16.WACommon.LimitSharingR\x0elimitSharingV2\x127\n" +
- "\bthreadID\x18\x0f \x03(\v2\x1b.WAWebProtobufsE2E.ThreadIDR\bthreadID\"=\n" +
+ "\bthreadID\x18\x0f \x03(\v2\x1b.WAWebProtobufsE2E.ThreadIDR\bthreadID\x12X\n" +
+ "\x13weblinkRenderConfig\x18\x10 \x01(\x0e2&.WAWebProtobufsE2E.WebLinkRenderConfigR\x13weblinkRenderConfig\"=\n" +
"\x16MessageAddonExpiryType\x12\n" +
"\n" +
"\x06STATIC\x10\x01\x12\x17\n" +
@@ -21700,7 +21776,7 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\tUNDEFINED\x10\x00\x12\a\n" +
"\x03LOW\x10\x01\x12\a\n" +
"\x03MID\x10\x02\x12\b\n" +
- "\x04HIGH\x10\x03\"\xa3C\n" +
+ "\x04HIGH\x10\x03\"\xb7B\n" +
"\aMessage\x12\"\n" +
"\fconversation\x18\x01 \x01(\tR\fconversation\x12s\n" +
"\x1csenderKeyDistributionMessage\x18\x02 \x01(\v2/.WAWebProtobufsE2E.SenderKeyDistributionMessageR\x1csenderKeyDistributionMessage\x12C\n" +
@@ -21797,10 +21873,9 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\x17questionResponseMessage\x18k \x01(\v2*.WAWebProtobufsE2E.QuestionResponseMessageR\x17questionResponseMessage\x12X\n" +
"\x13statusQuotedMessage\x18m \x01(\v2&.WAWebProtobufsE2E.StatusQuotedMessageR\x13statusQuotedMessage\x12|\n" +
"\x1fstatusStickerInteractionMessage\x18n \x01(\v22.WAWebProtobufsE2E.StatusStickerInteractionMessageR\x1fstatusStickerInteractionMessage\x12\\\n" +
- "\x15pollCreationMessageV5\x18o \x01(\v2&.WAWebProtobufsE2E.PollCreationMessageR\x15pollCreationMessageV5\x12n\n" +
- "\x1bpollResultSnapshotMessageV2\x18p \x01(\v2,.WAWebProtobufsE2E.PollResultSnapshotMessageR\x1bpollResultSnapshotMessageV2\x12\x80\x01\n" +
- "!newsletterFollowerInviteMessageV2\x18q \x01(\v22.WAWebProtobufsE2E.NewsletterFollowerInviteMessageR!newsletterFollowerInviteMessageV2\x12j\n" +
- "\x19requestContactInfoMessage\x18r \x01(\v2,.WAWebProtobufsE2E.RequestContactInfoMessageR\x19requestContactInfoMessage\"\xb0\x01\n" +
+ "\x15pollCreationMessageV5\x18o \x01(\v2&.WAWebProtobufsE2E.PollCreationMessageR\x15pollCreationMessageV5\x12\x80\x01\n" +
+ "!newsletterFollowerInviteMessageV2\x18q \x01(\v22.WAWebProtobufsE2E.NewsletterFollowerInviteMessageR!newsletterFollowerInviteMessageV2\x12n\n" +
+ "\x1bpollResultSnapshotMessageV3\x18s \x01(\v2,.WAWebProtobufsE2E.PollResultSnapshotMessageR\x1bpollResultSnapshotMessageV3\"\xb0\x01\n" +
"\fAlbumMessage\x12.\n" +
"\x12expectedImageCount\x18\x02 \x01(\rR\x12expectedImageCount\x12.\n" +
"\x12expectedVideoCount\x18\x03 \x01(\rR\x12expectedVideoCount\x12@\n" +
@@ -21830,7 +21905,7 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\n" +
"encPayload\x18\x02 \x01(\fR\n" +
"encPayload\x12\x14\n" +
- "\x05encIV\x18\x03 \x01(\fR\x05encIV\"\x92\x03\n" +
+ "\x05encIV\x18\x03 \x01(\fR\x05encIV\"\xe2\x03\n" +
"\fEventMessage\x12@\n" +
"\vcontextInfo\x18\x01 \x01(\v2\x1e.WAWebProtobufsE2E.ContextInfoR\vcontextInfo\x12\x1e\n" +
"\n" +
@@ -21844,7 +21919,9 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\aendTime\x18\b \x01(\x03R\aendTime\x12.\n" +
"\x12extraGuestsAllowed\x18\t \x01(\bR\x12extraGuestsAllowed\x12&\n" +
"\x0eisScheduleCall\x18\n" +
- " \x01(\bR\x0eisScheduleCall\"\x88\x01\n" +
+ " \x01(\bR\x0eisScheduleCall\x12 \n" +
+ "\vhasReminder\x18\v \x01(\bR\vhasReminder\x12,\n" +
+ "\x11reminderOffsetSec\x18\f \x01(\x03R\x11reminderOffsetSec\"\x88\x01\n" +
"\x0eCommentMessage\x124\n" +
"\amessage\x18\x01 \x01(\v2\x1a.WAWebProtobufsE2E.MessageR\amessage\x12@\n" +
"\x10targetMessageKey\x18\x02 \x01(\v2\x14.WACommon.MessageKeyR\x10targetMessageKey\"\x8b\x01\n" +
@@ -21923,11 +22000,7 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\x11DeviceSentMessage\x12&\n" +
"\x0edestinationJID\x18\x01 \x01(\tR\x0edestinationJID\x124\n" +
"\amessage\x18\x02 \x01(\v2\x1a.WAWebProtobufsE2E.MessageR\amessage\x12\x14\n" +
- "\x05phash\x18\x03 \x01(\tR\x05phash\"\x97\x01\n" +
- "\x19RequestContactInfoMessage\x12\x12\n" +
- "\x04text\x18\x01 \x01(\tR\x04text\x12$\n" +
- "\rctaButtonText\x18\x02 \x01(\tR\rctaButtonText\x12@\n" +
- "\vcontextInfo\x18\x03 \x01(\v2\x1e.WAWebProtobufsE2E.ContextInfoR\vcontextInfo\"]\n" +
+ "\x05phash\x18\x03 \x01(\tR\x05phash\"]\n" +
"\x19RequestPhoneNumberMessage\x12@\n" +
"\vcontextInfo\x18\x01 \x01(\v2\x1e.WAWebProtobufsE2E.ContextInfoR\vcontextInfo\"\xf1\x01\n" +
"\x1fNewsletterFollowerInviteMessage\x12$\n" +
@@ -22108,7 +22181,7 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\x05keyID\x18\x01 \x01(\fR\x05keyID\"\x8f\x01\n" +
"\x0fAppStateSyncKey\x12:\n" +
"\x05keyID\x18\x01 \x01(\v2$.WAWebProtobufsE2E.AppStateSyncKeyIdR\x05keyID\x12@\n" +
- "\akeyData\x18\x02 \x01(\v2&.WAWebProtobufsE2E.AppStateSyncKeyDataR\akeyData\"\xe5\x05\n" +
+ "\akeyData\x18\x02 \x01(\v2&.WAWebProtobufsE2E.AppStateSyncKeyDataR\akeyData\"\xca\x06\n" +
"\x17HistorySyncNotification\x12\x1e\n" +
"\n" +
"fileSHA256\x18\x01 \x01(\fR\n" +
@@ -22132,10 +22205,13 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"!initialHistBootstrapInlinePayload\x18\v \x01(\fR!initialHistBootstrapInlinePayload\x12:\n" +
"\x18peerDataRequestSessionID\x18\f \x01(\tR\x18peerDataRequestSessionID\x12\x91\x01\n" +
"&fullHistorySyncOnDemandRequestMetadata\x18\r \x01(\v29.WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadataR&fullHistorySyncOnDemandRequestMetadata\x12\x1c\n" +
- "\tencHandle\x18\x0e \x01(\tR\tencHandle\"8\n" +
+ "\tencHandle\x18\x0e \x01(\tR\tencHandle\x12c\n" +
+ "\x13messageAccessStatus\x18\x0f \x01(\v21.WAWebProtobufsE2E.HistorySyncMessageAccessStatusR\x13messageAccessStatus\"V\n" +
+ "\x1eHistorySyncMessageAccessStatus\x124\n" +
+ "\x15completeAccessGranted\x18\x01 \x01(\bR\x15completeAccessGranted\"8\n" +
"\x04Chat\x12 \n" +
"\vdisplayName\x18\x01 \x01(\tR\vdisplayName\x12\x0e\n" +
- "\x02ID\x18\x02 \x01(\tR\x02ID\"\x9e\x03\n" +
+ "\x02ID\x18\x02 \x01(\tR\x02ID\"\xf5\x03\n" +
"\x04Call\x12\x18\n" +
"\acallKey\x18\x01 \x01(\fR\acallKey\x12*\n" +
"\x10conversionSource\x18\x02 \x01(\tR\x10conversionSource\x12&\n" +
@@ -22145,7 +22221,9 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\vctwaPayload\x18\x06 \x01(\fR\vctwaPayload\x12@\n" +
"\vcontextInfo\x18\a \x01(\v2\x1e.WAWebProtobufsE2E.ContextInfoR\vcontextInfo\x12@\n" +
"\x1bnativeFlowCallButtonPayload\x18\b \x01(\tR\x1bnativeFlowCallButtonPayload\x12(\n" +
- "\x0fdeeplinkPayload\x18\t \x01(\tR\x0fdeeplinkPayload\"\x81\x05\n" +
+ "\x0fdeeplinkPayload\x18\t \x01(\tR\x0fdeeplinkPayload\x12U\n" +
+ "\x12messageContextInfo\x18\n" +
+ " \x01(\v2%.WAWebProtobufsE2E.MessageContextInfoR\x12messageContextInfo\"\x81\x05\n" +
"\fAudioMessage\x12\x10\n" +
"\x03URL\x18\x01 \x01(\tR\x03URL\x12\x1a\n" +
"\bmimetype\x18\x02 \x01(\tR\bmimetype\x12\x1e\n" +
@@ -22374,7 +22452,7 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"$COMPANION_CANONICAL_USER_NONCE_FETCH\x10\t\x12\x1c\n" +
"\x18HISTORY_SYNC_CHUNK_RETRY\x10\n" +
"\x12\x16\n" +
- "\x12GALAXY_FLOW_ACTION\x10\v*\x9a\x01\n" +
+ "\x12GALAXY_FLOW_ACTION\x10\v*\xb5\x01\n" +
"\x0fHistorySyncType\x12\x15\n" +
"\x11INITIAL_BOOTSTRAP\x10\x00\x12\x15\n" +
"\x11INITIAL_STATUS_V3\x10\x01\x12\b\n" +
@@ -22385,14 +22463,19 @@ const file_waE2E_WAWebProtobufsE2E_proto_rawDesc = "" +
"\x11NON_BLOCKING_DATA\x10\x05\x12\r\n" +
"\tON_DEMAND\x10\x06\x12\x0e\n" +
"\n" +
- "NO_HISTORY\x10\a*I\n" +
+ "NO_HISTORY\x10\a\x12\x19\n" +
+ "\x15MESSAGE_ACCESS_STATUS\x10\b*I\n" +
"\x0eMediaKeyDomain\x12\t\n" +
"\x05UNSET\x10\x00\x12\r\n" +
"\tE2EE_CHAT\x10\x01\x12\n" +
"\n" +
"\x06STATUS\x10\x02\x12\b\n" +
"\x04CAPI\x10\x03\x12\a\n" +
- "\x03BOT\x10\x04*J\n" +
+ "\x03BOT\x10\x04*.\n" +
+ "\x13WebLinkRenderConfig\x12\v\n" +
+ "\aWEBVIEW\x10\x00\x12\n" +
+ "\n" +
+ "\x06SYSTEM\x10\x01*J\n" +
"\bKeepType\x12\x15\n" +
"\x11UNKNOWN_KEEP_TYPE\x10\x00\x12\x10\n" +
"\fKEEP_FOR_ALL\x10\x01\x12\x15\n" +
@@ -22410,7 +22493,7 @@ func file_waE2E_WAWebProtobufsE2E_proto_rawDescGZIP() []byte {
return file_waE2E_WAWebProtobufsE2E_proto_rawDescData
}
-var file_waE2E_WAWebProtobufsE2E_proto_enumTypes = make([]protoimpl.EnumInfo, 68)
+var file_waE2E_WAWebProtobufsE2E_proto_enumTypes = make([]protoimpl.EnumInfo, 69)
var file_waE2E_WAWebProtobufsE2E_proto_msgTypes = make([]protoimpl.MessageInfo, 192)
var file_waE2E_WAWebProtobufsE2E_proto_goTypes = []any{
(PollType)(0), // 0: WAWebProtobufsE2E.PollType
@@ -22418,135 +22501,135 @@ var file_waE2E_WAWebProtobufsE2E_proto_goTypes = []any{
(PeerDataOperationRequestType)(0), // 2: WAWebProtobufsE2E.PeerDataOperationRequestType
(HistorySyncType)(0), // 3: WAWebProtobufsE2E.HistorySyncType
(MediaKeyDomain)(0), // 4: WAWebProtobufsE2E.MediaKeyDomain
- (KeepType)(0), // 5: WAWebProtobufsE2E.KeepType
- (StickerPackMessage_StickerPackOrigin)(0), // 6: WAWebProtobufsE2E.StickerPackMessage.StickerPackOrigin
- (PlaceholderMessage_PlaceholderType)(0), // 7: WAWebProtobufsE2E.PlaceholderMessage.PlaceholderType
- (BCallMessage_MediaType)(0), // 8: WAWebProtobufsE2E.BCallMessage.MediaType
- (CallLogMessage_CallOutcome)(0), // 9: WAWebProtobufsE2E.CallLogMessage.CallOutcome
- (CallLogMessage_CallType)(0), // 10: WAWebProtobufsE2E.CallLogMessage.CallType
- (ScheduledCallEditMessage_EditType)(0), // 11: WAWebProtobufsE2E.ScheduledCallEditMessage.EditType
- (ScheduledCallCreationMessage_CallType)(0), // 12: WAWebProtobufsE2E.ScheduledCallCreationMessage.CallType
- (EventResponseMessage_EventResponseType)(0), // 13: WAWebProtobufsE2E.EventResponseMessage.EventResponseType
- (PinInChatMessage_Type)(0), // 14: WAWebProtobufsE2E.PinInChatMessage.Type
- (StatusStickerInteractionMessage_StatusStickerType)(0), // 15: WAWebProtobufsE2E.StatusStickerInteractionMessage.StatusStickerType
- (ButtonsResponseMessage_Type)(0), // 16: WAWebProtobufsE2E.ButtonsResponseMessage.Type
- (ButtonsMessage_HeaderType)(0), // 17: WAWebProtobufsE2E.ButtonsMessage.HeaderType
- (ButtonsMessage_Button_Type)(0), // 18: WAWebProtobufsE2E.ButtonsMessage.Button.Type
- (SecretEncryptedMessage_SecretEncType)(0), // 19: WAWebProtobufsE2E.SecretEncryptedMessage.SecretEncType
- (GroupInviteMessage_GroupType)(0), // 20: WAWebProtobufsE2E.GroupInviteMessage.GroupType
- (InteractiveResponseMessage_Body_Format)(0), // 21: WAWebProtobufsE2E.InteractiveResponseMessage.Body.Format
- (InteractiveMessage_CarouselMessage_CarouselCardType)(0), // 22: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.CarouselCardType
- (InteractiveMessage_ShopMessage_Surface)(0), // 23: WAWebProtobufsE2E.InteractiveMessage.ShopMessage.Surface
- (ListResponseMessage_ListType)(0), // 24: WAWebProtobufsE2E.ListResponseMessage.ListType
- (ListMessage_ListType)(0), // 25: WAWebProtobufsE2E.ListMessage.ListType
- (OrderMessage_OrderSurface)(0), // 26: WAWebProtobufsE2E.OrderMessage.OrderSurface
- (OrderMessage_OrderStatus)(0), // 27: WAWebProtobufsE2E.OrderMessage.OrderStatus
- (StatusQuotedMessage_StatusQuotedMessageType)(0), // 28: WAWebProtobufsE2E.StatusQuotedMessage.StatusQuotedMessageType
- (PaymentInviteMessage_ServiceType)(0), // 29: WAWebProtobufsE2E.PaymentInviteMessage.ServiceType
- (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_CalendarType)(0), // 30: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType
- (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_DayOfWeekType)(0), // 31: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType
- (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponseCode)(0), // 32: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponseCode
- (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandResponseCode)(0), // 33: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandResponseCode
- (PeerDataOperationRequestMessage_GalaxyFlowAction_GalaxyFlowActionType)(0), // 34: WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction.GalaxyFlowActionType
- (RequestWelcomeMessageMetadata_LocalChatState)(0), // 35: WAWebProtobufsE2E.RequestWelcomeMessageMetadata.LocalChatState
- (ProtocolMessage_Type)(0), // 36: WAWebProtobufsE2E.ProtocolMessage.Type
- (CloudAPIThreadControlNotification_CloudAPIThreadControl)(0), // 37: WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControl
- (VideoMessage_VideoSourceType)(0), // 38: WAWebProtobufsE2E.VideoMessage.VideoSourceType
- (VideoMessage_Attribution)(0), // 39: WAWebProtobufsE2E.VideoMessage.Attribution
- (ExtendedTextMessage_InviteLinkGroupType)(0), // 40: WAWebProtobufsE2E.ExtendedTextMessage.InviteLinkGroupType
- (ExtendedTextMessage_PreviewType)(0), // 41: WAWebProtobufsE2E.ExtendedTextMessage.PreviewType
- (ExtendedTextMessage_FontType)(0), // 42: WAWebProtobufsE2E.ExtendedTextMessage.FontType
- (LinkPreviewMetadata_SocialMediaPostType)(0), // 43: WAWebProtobufsE2E.LinkPreviewMetadata.SocialMediaPostType
- (PaymentLinkMetadata_PaymentLinkHeader_PaymentLinkHeaderType)(0), // 44: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader.PaymentLinkHeaderType
- (StatusNotificationMessage_StatusNotificationType)(0), // 45: WAWebProtobufsE2E.StatusNotificationMessage.StatusNotificationType
- (InvoiceMessage_AttachmentType)(0), // 46: WAWebProtobufsE2E.InvoiceMessage.AttachmentType
- (ImageMessage_ImageSourceType)(0), // 47: WAWebProtobufsE2E.ImageMessage.ImageSourceType
- (ContextInfo_QuotedType)(0), // 48: WAWebProtobufsE2E.ContextInfo.QuotedType
- (ContextInfo_ForwardOrigin)(0), // 49: WAWebProtobufsE2E.ContextInfo.ForwardOrigin
- (ContextInfo_StatusSourceType)(0), // 50: WAWebProtobufsE2E.ContextInfo.StatusSourceType
- (ContextInfo_PairedMediaType)(0), // 51: WAWebProtobufsE2E.ContextInfo.PairedMediaType
- (ContextInfo_StatusAttributionType)(0), // 52: WAWebProtobufsE2E.ContextInfo.StatusAttributionType
- (ContextInfo_StatusAudienceMetadata_AudienceType)(0), // 53: WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata.AudienceType
- (ContextInfo_DataSharingContext_DataSharingFlags)(0), // 54: WAWebProtobufsE2E.ContextInfo.DataSharingContext.DataSharingFlags
- (ContextInfo_ForwardedNewsletterMessageInfo_ContentType)(0), // 55: WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo.ContentType
- (ContextInfo_ExternalAdReplyInfo_AdType)(0), // 56: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.AdType
- (ContextInfo_ExternalAdReplyInfo_MediaType)(0), // 57: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.MediaType
- (ContextInfo_AdReplyInfo_MediaType)(0), // 58: WAWebProtobufsE2E.ContextInfo.AdReplyInfo.MediaType
- (MessageAssociation_AssociationType)(0), // 59: WAWebProtobufsE2E.MessageAssociation.AssociationType
- (ThreadID_ThreadType)(0), // 60: WAWebProtobufsE2E.ThreadID.ThreadType
- (MessageContextInfo_MessageAddonExpiryType)(0), // 61: WAWebProtobufsE2E.MessageContextInfo.MessageAddonExpiryType
- (InteractiveAnnotation_StatusLinkType)(0), // 62: WAWebProtobufsE2E.InteractiveAnnotation.StatusLinkType
- (HydratedTemplateButton_HydratedURLButton_WebviewPresentationType)(0), // 63: WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton.WebviewPresentationType
- (PaymentBackground_Type)(0), // 64: WAWebProtobufsE2E.PaymentBackground.Type
- (DisappearingMode_Trigger)(0), // 65: WAWebProtobufsE2E.DisappearingMode.Trigger
- (DisappearingMode_Initiator)(0), // 66: WAWebProtobufsE2E.DisappearingMode.Initiator
- (ProcessedVideo_VideoQuality)(0), // 67: WAWebProtobufsE2E.ProcessedVideo.VideoQuality
- (*StickerPackMessage)(nil), // 68: WAWebProtobufsE2E.StickerPackMessage
- (*PlaceholderMessage)(nil), // 69: WAWebProtobufsE2E.PlaceholderMessage
- (*BCallMessage)(nil), // 70: WAWebProtobufsE2E.BCallMessage
- (*CallLogMessage)(nil), // 71: WAWebProtobufsE2E.CallLogMessage
- (*ScheduledCallEditMessage)(nil), // 72: WAWebProtobufsE2E.ScheduledCallEditMessage
- (*ScheduledCallCreationMessage)(nil), // 73: WAWebProtobufsE2E.ScheduledCallCreationMessage
- (*EventResponseMessage)(nil), // 74: WAWebProtobufsE2E.EventResponseMessage
- (*PinInChatMessage)(nil), // 75: WAWebProtobufsE2E.PinInChatMessage
- (*StatusStickerInteractionMessage)(nil), // 76: WAWebProtobufsE2E.StatusStickerInteractionMessage
- (*ButtonsResponseMessage)(nil), // 77: WAWebProtobufsE2E.ButtonsResponseMessage
- (*ButtonsMessage)(nil), // 78: WAWebProtobufsE2E.ButtonsMessage
- (*SecretEncryptedMessage)(nil), // 79: WAWebProtobufsE2E.SecretEncryptedMessage
- (*GroupInviteMessage)(nil), // 80: WAWebProtobufsE2E.GroupInviteMessage
- (*InteractiveResponseMessage)(nil), // 81: WAWebProtobufsE2E.InteractiveResponseMessage
- (*InteractiveMessage)(nil), // 82: WAWebProtobufsE2E.InteractiveMessage
- (*ListResponseMessage)(nil), // 83: WAWebProtobufsE2E.ListResponseMessage
- (*ListMessage)(nil), // 84: WAWebProtobufsE2E.ListMessage
- (*OrderMessage)(nil), // 85: WAWebProtobufsE2E.OrderMessage
- (*StatusQuotedMessage)(nil), // 86: WAWebProtobufsE2E.StatusQuotedMessage
- (*PaymentInviteMessage)(nil), // 87: WAWebProtobufsE2E.PaymentInviteMessage
- (*HighlyStructuredMessage)(nil), // 88: WAWebProtobufsE2E.HighlyStructuredMessage
- (*PeerDataOperationRequestResponseMessage)(nil), // 89: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage
- (*PeerDataOperationRequestMessage)(nil), // 90: WAWebProtobufsE2E.PeerDataOperationRequestMessage
- (*RequestWelcomeMessageMetadata)(nil), // 91: WAWebProtobufsE2E.RequestWelcomeMessageMetadata
- (*ProtocolMessage)(nil), // 92: WAWebProtobufsE2E.ProtocolMessage
- (*CloudAPIThreadControlNotification)(nil), // 93: WAWebProtobufsE2E.CloudAPIThreadControlNotification
- (*VideoMessage)(nil), // 94: WAWebProtobufsE2E.VideoMessage
- (*ExtendedTextMessage)(nil), // 95: WAWebProtobufsE2E.ExtendedTextMessage
- (*LinkPreviewMetadata)(nil), // 96: WAWebProtobufsE2E.LinkPreviewMetadata
- (*PaymentLinkMetadata)(nil), // 97: WAWebProtobufsE2E.PaymentLinkMetadata
- (*StatusNotificationMessage)(nil), // 98: WAWebProtobufsE2E.StatusNotificationMessage
- (*InvoiceMessage)(nil), // 99: WAWebProtobufsE2E.InvoiceMessage
- (*ImageMessage)(nil), // 100: WAWebProtobufsE2E.ImageMessage
- (*ContextInfo)(nil), // 101: WAWebProtobufsE2E.ContextInfo
- (*MessageAssociation)(nil), // 102: WAWebProtobufsE2E.MessageAssociation
- (*ThreadID)(nil), // 103: WAWebProtobufsE2E.ThreadID
- (*MessageContextInfo)(nil), // 104: WAWebProtobufsE2E.MessageContextInfo
- (*InteractiveAnnotation)(nil), // 105: WAWebProtobufsE2E.InteractiveAnnotation
- (*HydratedTemplateButton)(nil), // 106: WAWebProtobufsE2E.HydratedTemplateButton
- (*PaymentBackground)(nil), // 107: WAWebProtobufsE2E.PaymentBackground
- (*DisappearingMode)(nil), // 108: WAWebProtobufsE2E.DisappearingMode
- (*ProcessedVideo)(nil), // 109: WAWebProtobufsE2E.ProcessedVideo
- (*Message)(nil), // 110: WAWebProtobufsE2E.Message
- (*AlbumMessage)(nil), // 111: WAWebProtobufsE2E.AlbumMessage
- (*MessageHistoryMetadata)(nil), // 112: WAWebProtobufsE2E.MessageHistoryMetadata
- (*MessageHistoryNotice)(nil), // 113: WAWebProtobufsE2E.MessageHistoryNotice
- (*MessageHistoryBundle)(nil), // 114: WAWebProtobufsE2E.MessageHistoryBundle
- (*EncEventResponseMessage)(nil), // 115: WAWebProtobufsE2E.EncEventResponseMessage
- (*EventMessage)(nil), // 116: WAWebProtobufsE2E.EventMessage
- (*CommentMessage)(nil), // 117: WAWebProtobufsE2E.CommentMessage
- (*EncCommentMessage)(nil), // 118: WAWebProtobufsE2E.EncCommentMessage
- (*EncReactionMessage)(nil), // 119: WAWebProtobufsE2E.EncReactionMessage
- (*KeepInChatMessage)(nil), // 120: WAWebProtobufsE2E.KeepInChatMessage
- (*QuestionResponseMessage)(nil), // 121: WAWebProtobufsE2E.QuestionResponseMessage
- (*StatusQuestionAnswerMessage)(nil), // 122: WAWebProtobufsE2E.StatusQuestionAnswerMessage
- (*PollResultSnapshotMessage)(nil), // 123: WAWebProtobufsE2E.PollResultSnapshotMessage
- (*PollVoteMessage)(nil), // 124: WAWebProtobufsE2E.PollVoteMessage
- (*PollEncValue)(nil), // 125: WAWebProtobufsE2E.PollEncValue
- (*PollUpdateMessageMetadata)(nil), // 126: WAWebProtobufsE2E.PollUpdateMessageMetadata
- (*PollUpdateMessage)(nil), // 127: WAWebProtobufsE2E.PollUpdateMessage
- (*PollCreationMessage)(nil), // 128: WAWebProtobufsE2E.PollCreationMessage
- (*StickerSyncRMRMessage)(nil), // 129: WAWebProtobufsE2E.StickerSyncRMRMessage
- (*ReactionMessage)(nil), // 130: WAWebProtobufsE2E.ReactionMessage
- (*FutureProofMessage)(nil), // 131: WAWebProtobufsE2E.FutureProofMessage
- (*DeviceSentMessage)(nil), // 132: WAWebProtobufsE2E.DeviceSentMessage
- (*RequestContactInfoMessage)(nil), // 133: WAWebProtobufsE2E.RequestContactInfoMessage
+ (WebLinkRenderConfig)(0), // 5: WAWebProtobufsE2E.WebLinkRenderConfig
+ (KeepType)(0), // 6: WAWebProtobufsE2E.KeepType
+ (StickerPackMessage_StickerPackOrigin)(0), // 7: WAWebProtobufsE2E.StickerPackMessage.StickerPackOrigin
+ (PlaceholderMessage_PlaceholderType)(0), // 8: WAWebProtobufsE2E.PlaceholderMessage.PlaceholderType
+ (BCallMessage_MediaType)(0), // 9: WAWebProtobufsE2E.BCallMessage.MediaType
+ (CallLogMessage_CallOutcome)(0), // 10: WAWebProtobufsE2E.CallLogMessage.CallOutcome
+ (CallLogMessage_CallType)(0), // 11: WAWebProtobufsE2E.CallLogMessage.CallType
+ (ScheduledCallEditMessage_EditType)(0), // 12: WAWebProtobufsE2E.ScheduledCallEditMessage.EditType
+ (ScheduledCallCreationMessage_CallType)(0), // 13: WAWebProtobufsE2E.ScheduledCallCreationMessage.CallType
+ (EventResponseMessage_EventResponseType)(0), // 14: WAWebProtobufsE2E.EventResponseMessage.EventResponseType
+ (PinInChatMessage_Type)(0), // 15: WAWebProtobufsE2E.PinInChatMessage.Type
+ (StatusStickerInteractionMessage_StatusStickerType)(0), // 16: WAWebProtobufsE2E.StatusStickerInteractionMessage.StatusStickerType
+ (ButtonsResponseMessage_Type)(0), // 17: WAWebProtobufsE2E.ButtonsResponseMessage.Type
+ (ButtonsMessage_HeaderType)(0), // 18: WAWebProtobufsE2E.ButtonsMessage.HeaderType
+ (ButtonsMessage_Button_Type)(0), // 19: WAWebProtobufsE2E.ButtonsMessage.Button.Type
+ (SecretEncryptedMessage_SecretEncType)(0), // 20: WAWebProtobufsE2E.SecretEncryptedMessage.SecretEncType
+ (GroupInviteMessage_GroupType)(0), // 21: WAWebProtobufsE2E.GroupInviteMessage.GroupType
+ (InteractiveResponseMessage_Body_Format)(0), // 22: WAWebProtobufsE2E.InteractiveResponseMessage.Body.Format
+ (InteractiveMessage_CarouselMessage_CarouselCardType)(0), // 23: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.CarouselCardType
+ (InteractiveMessage_ShopMessage_Surface)(0), // 24: WAWebProtobufsE2E.InteractiveMessage.ShopMessage.Surface
+ (ListResponseMessage_ListType)(0), // 25: WAWebProtobufsE2E.ListResponseMessage.ListType
+ (ListMessage_ListType)(0), // 26: WAWebProtobufsE2E.ListMessage.ListType
+ (OrderMessage_OrderSurface)(0), // 27: WAWebProtobufsE2E.OrderMessage.OrderSurface
+ (OrderMessage_OrderStatus)(0), // 28: WAWebProtobufsE2E.OrderMessage.OrderStatus
+ (StatusQuotedMessage_StatusQuotedMessageType)(0), // 29: WAWebProtobufsE2E.StatusQuotedMessage.StatusQuotedMessageType
+ (PaymentInviteMessage_ServiceType)(0), // 30: WAWebProtobufsE2E.PaymentInviteMessage.ServiceType
+ (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_CalendarType)(0), // 31: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType
+ (HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent_DayOfWeekType)(0), // 32: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType
+ (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponseCode)(0), // 33: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponseCode
+ (PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandResponseCode)(0), // 34: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandResponseCode
+ (PeerDataOperationRequestMessage_GalaxyFlowAction_GalaxyFlowActionType)(0), // 35: WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction.GalaxyFlowActionType
+ (RequestWelcomeMessageMetadata_LocalChatState)(0), // 36: WAWebProtobufsE2E.RequestWelcomeMessageMetadata.LocalChatState
+ (ProtocolMessage_Type)(0), // 37: WAWebProtobufsE2E.ProtocolMessage.Type
+ (CloudAPIThreadControlNotification_CloudAPIThreadControl)(0), // 38: WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControl
+ (VideoMessage_VideoSourceType)(0), // 39: WAWebProtobufsE2E.VideoMessage.VideoSourceType
+ (VideoMessage_Attribution)(0), // 40: WAWebProtobufsE2E.VideoMessage.Attribution
+ (ExtendedTextMessage_InviteLinkGroupType)(0), // 41: WAWebProtobufsE2E.ExtendedTextMessage.InviteLinkGroupType
+ (ExtendedTextMessage_PreviewType)(0), // 42: WAWebProtobufsE2E.ExtendedTextMessage.PreviewType
+ (ExtendedTextMessage_FontType)(0), // 43: WAWebProtobufsE2E.ExtendedTextMessage.FontType
+ (LinkPreviewMetadata_SocialMediaPostType)(0), // 44: WAWebProtobufsE2E.LinkPreviewMetadata.SocialMediaPostType
+ (PaymentLinkMetadata_PaymentLinkHeader_PaymentLinkHeaderType)(0), // 45: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader.PaymentLinkHeaderType
+ (StatusNotificationMessage_StatusNotificationType)(0), // 46: WAWebProtobufsE2E.StatusNotificationMessage.StatusNotificationType
+ (InvoiceMessage_AttachmentType)(0), // 47: WAWebProtobufsE2E.InvoiceMessage.AttachmentType
+ (ImageMessage_ImageSourceType)(0), // 48: WAWebProtobufsE2E.ImageMessage.ImageSourceType
+ (ContextInfo_QuotedType)(0), // 49: WAWebProtobufsE2E.ContextInfo.QuotedType
+ (ContextInfo_ForwardOrigin)(0), // 50: WAWebProtobufsE2E.ContextInfo.ForwardOrigin
+ (ContextInfo_StatusSourceType)(0), // 51: WAWebProtobufsE2E.ContextInfo.StatusSourceType
+ (ContextInfo_PairedMediaType)(0), // 52: WAWebProtobufsE2E.ContextInfo.PairedMediaType
+ (ContextInfo_StatusAttributionType)(0), // 53: WAWebProtobufsE2E.ContextInfo.StatusAttributionType
+ (ContextInfo_StatusAudienceMetadata_AudienceType)(0), // 54: WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata.AudienceType
+ (ContextInfo_DataSharingContext_DataSharingFlags)(0), // 55: WAWebProtobufsE2E.ContextInfo.DataSharingContext.DataSharingFlags
+ (ContextInfo_ForwardedNewsletterMessageInfo_ContentType)(0), // 56: WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo.ContentType
+ (ContextInfo_ExternalAdReplyInfo_AdType)(0), // 57: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.AdType
+ (ContextInfo_ExternalAdReplyInfo_MediaType)(0), // 58: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.MediaType
+ (ContextInfo_AdReplyInfo_MediaType)(0), // 59: WAWebProtobufsE2E.ContextInfo.AdReplyInfo.MediaType
+ (MessageAssociation_AssociationType)(0), // 60: WAWebProtobufsE2E.MessageAssociation.AssociationType
+ (ThreadID_ThreadType)(0), // 61: WAWebProtobufsE2E.ThreadID.ThreadType
+ (MessageContextInfo_MessageAddonExpiryType)(0), // 62: WAWebProtobufsE2E.MessageContextInfo.MessageAddonExpiryType
+ (InteractiveAnnotation_StatusLinkType)(0), // 63: WAWebProtobufsE2E.InteractiveAnnotation.StatusLinkType
+ (HydratedTemplateButton_HydratedURLButton_WebviewPresentationType)(0), // 64: WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton.WebviewPresentationType
+ (PaymentBackground_Type)(0), // 65: WAWebProtobufsE2E.PaymentBackground.Type
+ (DisappearingMode_Trigger)(0), // 66: WAWebProtobufsE2E.DisappearingMode.Trigger
+ (DisappearingMode_Initiator)(0), // 67: WAWebProtobufsE2E.DisappearingMode.Initiator
+ (ProcessedVideo_VideoQuality)(0), // 68: WAWebProtobufsE2E.ProcessedVideo.VideoQuality
+ (*StickerPackMessage)(nil), // 69: WAWebProtobufsE2E.StickerPackMessage
+ (*PlaceholderMessage)(nil), // 70: WAWebProtobufsE2E.PlaceholderMessage
+ (*BCallMessage)(nil), // 71: WAWebProtobufsE2E.BCallMessage
+ (*CallLogMessage)(nil), // 72: WAWebProtobufsE2E.CallLogMessage
+ (*ScheduledCallEditMessage)(nil), // 73: WAWebProtobufsE2E.ScheduledCallEditMessage
+ (*ScheduledCallCreationMessage)(nil), // 74: WAWebProtobufsE2E.ScheduledCallCreationMessage
+ (*EventResponseMessage)(nil), // 75: WAWebProtobufsE2E.EventResponseMessage
+ (*PinInChatMessage)(nil), // 76: WAWebProtobufsE2E.PinInChatMessage
+ (*StatusStickerInteractionMessage)(nil), // 77: WAWebProtobufsE2E.StatusStickerInteractionMessage
+ (*ButtonsResponseMessage)(nil), // 78: WAWebProtobufsE2E.ButtonsResponseMessage
+ (*ButtonsMessage)(nil), // 79: WAWebProtobufsE2E.ButtonsMessage
+ (*SecretEncryptedMessage)(nil), // 80: WAWebProtobufsE2E.SecretEncryptedMessage
+ (*GroupInviteMessage)(nil), // 81: WAWebProtobufsE2E.GroupInviteMessage
+ (*InteractiveResponseMessage)(nil), // 82: WAWebProtobufsE2E.InteractiveResponseMessage
+ (*InteractiveMessage)(nil), // 83: WAWebProtobufsE2E.InteractiveMessage
+ (*ListResponseMessage)(nil), // 84: WAWebProtobufsE2E.ListResponseMessage
+ (*ListMessage)(nil), // 85: WAWebProtobufsE2E.ListMessage
+ (*OrderMessage)(nil), // 86: WAWebProtobufsE2E.OrderMessage
+ (*StatusQuotedMessage)(nil), // 87: WAWebProtobufsE2E.StatusQuotedMessage
+ (*PaymentInviteMessage)(nil), // 88: WAWebProtobufsE2E.PaymentInviteMessage
+ (*HighlyStructuredMessage)(nil), // 89: WAWebProtobufsE2E.HighlyStructuredMessage
+ (*PeerDataOperationRequestResponseMessage)(nil), // 90: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage
+ (*PeerDataOperationRequestMessage)(nil), // 91: WAWebProtobufsE2E.PeerDataOperationRequestMessage
+ (*RequestWelcomeMessageMetadata)(nil), // 92: WAWebProtobufsE2E.RequestWelcomeMessageMetadata
+ (*ProtocolMessage)(nil), // 93: WAWebProtobufsE2E.ProtocolMessage
+ (*CloudAPIThreadControlNotification)(nil), // 94: WAWebProtobufsE2E.CloudAPIThreadControlNotification
+ (*VideoMessage)(nil), // 95: WAWebProtobufsE2E.VideoMessage
+ (*ExtendedTextMessage)(nil), // 96: WAWebProtobufsE2E.ExtendedTextMessage
+ (*LinkPreviewMetadata)(nil), // 97: WAWebProtobufsE2E.LinkPreviewMetadata
+ (*PaymentLinkMetadata)(nil), // 98: WAWebProtobufsE2E.PaymentLinkMetadata
+ (*StatusNotificationMessage)(nil), // 99: WAWebProtobufsE2E.StatusNotificationMessage
+ (*InvoiceMessage)(nil), // 100: WAWebProtobufsE2E.InvoiceMessage
+ (*ImageMessage)(nil), // 101: WAWebProtobufsE2E.ImageMessage
+ (*ContextInfo)(nil), // 102: WAWebProtobufsE2E.ContextInfo
+ (*MessageAssociation)(nil), // 103: WAWebProtobufsE2E.MessageAssociation
+ (*ThreadID)(nil), // 104: WAWebProtobufsE2E.ThreadID
+ (*MessageContextInfo)(nil), // 105: WAWebProtobufsE2E.MessageContextInfo
+ (*InteractiveAnnotation)(nil), // 106: WAWebProtobufsE2E.InteractiveAnnotation
+ (*HydratedTemplateButton)(nil), // 107: WAWebProtobufsE2E.HydratedTemplateButton
+ (*PaymentBackground)(nil), // 108: WAWebProtobufsE2E.PaymentBackground
+ (*DisappearingMode)(nil), // 109: WAWebProtobufsE2E.DisappearingMode
+ (*ProcessedVideo)(nil), // 110: WAWebProtobufsE2E.ProcessedVideo
+ (*Message)(nil), // 111: WAWebProtobufsE2E.Message
+ (*AlbumMessage)(nil), // 112: WAWebProtobufsE2E.AlbumMessage
+ (*MessageHistoryMetadata)(nil), // 113: WAWebProtobufsE2E.MessageHistoryMetadata
+ (*MessageHistoryNotice)(nil), // 114: WAWebProtobufsE2E.MessageHistoryNotice
+ (*MessageHistoryBundle)(nil), // 115: WAWebProtobufsE2E.MessageHistoryBundle
+ (*EncEventResponseMessage)(nil), // 116: WAWebProtobufsE2E.EncEventResponseMessage
+ (*EventMessage)(nil), // 117: WAWebProtobufsE2E.EventMessage
+ (*CommentMessage)(nil), // 118: WAWebProtobufsE2E.CommentMessage
+ (*EncCommentMessage)(nil), // 119: WAWebProtobufsE2E.EncCommentMessage
+ (*EncReactionMessage)(nil), // 120: WAWebProtobufsE2E.EncReactionMessage
+ (*KeepInChatMessage)(nil), // 121: WAWebProtobufsE2E.KeepInChatMessage
+ (*QuestionResponseMessage)(nil), // 122: WAWebProtobufsE2E.QuestionResponseMessage
+ (*StatusQuestionAnswerMessage)(nil), // 123: WAWebProtobufsE2E.StatusQuestionAnswerMessage
+ (*PollResultSnapshotMessage)(nil), // 124: WAWebProtobufsE2E.PollResultSnapshotMessage
+ (*PollVoteMessage)(nil), // 125: WAWebProtobufsE2E.PollVoteMessage
+ (*PollEncValue)(nil), // 126: WAWebProtobufsE2E.PollEncValue
+ (*PollUpdateMessageMetadata)(nil), // 127: WAWebProtobufsE2E.PollUpdateMessageMetadata
+ (*PollUpdateMessage)(nil), // 128: WAWebProtobufsE2E.PollUpdateMessage
+ (*PollCreationMessage)(nil), // 129: WAWebProtobufsE2E.PollCreationMessage
+ (*StickerSyncRMRMessage)(nil), // 130: WAWebProtobufsE2E.StickerSyncRMRMessage
+ (*ReactionMessage)(nil), // 131: WAWebProtobufsE2E.ReactionMessage
+ (*FutureProofMessage)(nil), // 132: WAWebProtobufsE2E.FutureProofMessage
+ (*DeviceSentMessage)(nil), // 133: WAWebProtobufsE2E.DeviceSentMessage
(*RequestPhoneNumberMessage)(nil), // 134: WAWebProtobufsE2E.RequestPhoneNumberMessage
(*NewsletterFollowerInviteMessage)(nil), // 135: WAWebProtobufsE2E.NewsletterFollowerInviteMessage
(*NewsletterAdminInviteMessage)(nil), // 136: WAWebProtobufsE2E.NewsletterAdminInviteMessage
@@ -22570,560 +22653,562 @@ var file_waE2E_WAWebProtobufsE2E_proto_goTypes = []any{
(*AppStateSyncKeyId)(nil), // 154: WAWebProtobufsE2E.AppStateSyncKeyId
(*AppStateSyncKey)(nil), // 155: WAWebProtobufsE2E.AppStateSyncKey
(*HistorySyncNotification)(nil), // 156: WAWebProtobufsE2E.HistorySyncNotification
- (*Chat)(nil), // 157: WAWebProtobufsE2E.Chat
- (*Call)(nil), // 158: WAWebProtobufsE2E.Call
- (*AudioMessage)(nil), // 159: WAWebProtobufsE2E.AudioMessage
- (*DocumentMessage)(nil), // 160: WAWebProtobufsE2E.DocumentMessage
- (*URLMetadata)(nil), // 161: WAWebProtobufsE2E.URLMetadata
- (*PaymentExtendedMetadata)(nil), // 162: WAWebProtobufsE2E.PaymentExtendedMetadata
- (*MMSThumbnailMetadata)(nil), // 163: WAWebProtobufsE2E.MMSThumbnailMetadata
- (*LocationMessage)(nil), // 164: WAWebProtobufsE2E.LocationMessage
- (*ContactMessage)(nil), // 165: WAWebProtobufsE2E.ContactMessage
- (*SenderKeyDistributionMessage)(nil), // 166: WAWebProtobufsE2E.SenderKeyDistributionMessage
- (*VideoEndCard)(nil), // 167: WAWebProtobufsE2E.VideoEndCard
- (*DeviceListMetadata)(nil), // 168: WAWebProtobufsE2E.DeviceListMetadata
- (*EmbeddedMessage)(nil), // 169: WAWebProtobufsE2E.EmbeddedMessage
- (*EmbeddedMusic)(nil), // 170: WAWebProtobufsE2E.EmbeddedMusic
- (*EmbeddedContent)(nil), // 171: WAWebProtobufsE2E.EmbeddedContent
- (*TapLinkAction)(nil), // 172: WAWebProtobufsE2E.TapLinkAction
- (*Point)(nil), // 173: WAWebProtobufsE2E.Point
- (*Location)(nil), // 174: WAWebProtobufsE2E.Location
- (*TemplateButton)(nil), // 175: WAWebProtobufsE2E.TemplateButton
- (*Money)(nil), // 176: WAWebProtobufsE2E.Money
- (*ActionLink)(nil), // 177: WAWebProtobufsE2E.ActionLink
- (*GroupMention)(nil), // 178: WAWebProtobufsE2E.GroupMention
- (*MessageSecretMessage)(nil), // 179: WAWebProtobufsE2E.MessageSecretMessage
- (*MediaNotifyMessage)(nil), // 180: WAWebProtobufsE2E.MediaNotifyMessage
- (*LIDMigrationMappingSyncMessage)(nil), // 181: WAWebProtobufsE2E.LIDMigrationMappingSyncMessage
- (*UrlTrackingMap)(nil), // 182: WAWebProtobufsE2E.UrlTrackingMap
- (*MemberLabel)(nil), // 183: WAWebProtobufsE2E.MemberLabel
- (*AIRichResponseMessage)(nil), // 184: WAWebProtobufsE2E.AIRichResponseMessage
- (*AIQueryFanout)(nil), // 185: WAWebProtobufsE2E.AIQueryFanout
- (*StickerPackMessage_Sticker)(nil), // 186: WAWebProtobufsE2E.StickerPackMessage.Sticker
- (*CallLogMessage_CallParticipant)(nil), // 187: WAWebProtobufsE2E.CallLogMessage.CallParticipant
- (*ButtonsMessage_Button)(nil), // 188: WAWebProtobufsE2E.ButtonsMessage.Button
- (*ButtonsMessage_Button_NativeFlowInfo)(nil), // 189: WAWebProtobufsE2E.ButtonsMessage.Button.NativeFlowInfo
- (*ButtonsMessage_Button_ButtonText)(nil), // 190: WAWebProtobufsE2E.ButtonsMessage.Button.ButtonText
- (*InteractiveResponseMessage_Body)(nil), // 191: WAWebProtobufsE2E.InteractiveResponseMessage.Body
- (*InteractiveResponseMessage_NativeFlowResponseMessage)(nil), // 192: WAWebProtobufsE2E.InteractiveResponseMessage.NativeFlowResponseMessage
- (*InteractiveMessage_CarouselMessage)(nil), // 193: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage
- (*InteractiveMessage_ShopMessage)(nil), // 194: WAWebProtobufsE2E.InteractiveMessage.ShopMessage
- (*InteractiveMessage_NativeFlowMessage)(nil), // 195: WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage
- (*InteractiveMessage_CollectionMessage)(nil), // 196: WAWebProtobufsE2E.InteractiveMessage.CollectionMessage
- (*InteractiveMessage_Footer)(nil), // 197: WAWebProtobufsE2E.InteractiveMessage.Footer
- (*InteractiveMessage_Body)(nil), // 198: WAWebProtobufsE2E.InteractiveMessage.Body
- (*InteractiveMessage_Header)(nil), // 199: WAWebProtobufsE2E.InteractiveMessage.Header
- (*InteractiveMessage_NativeFlowMessage_NativeFlowButton)(nil), // 200: WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage.NativeFlowButton
- (*ListResponseMessage_SingleSelectReply)(nil), // 201: WAWebProtobufsE2E.ListResponseMessage.SingleSelectReply
- (*ListMessage_ProductListInfo)(nil), // 202: WAWebProtobufsE2E.ListMessage.ProductListInfo
- (*ListMessage_ProductListHeaderImage)(nil), // 203: WAWebProtobufsE2E.ListMessage.ProductListHeaderImage
- (*ListMessage_ProductSection)(nil), // 204: WAWebProtobufsE2E.ListMessage.ProductSection
- (*ListMessage_Product)(nil), // 205: WAWebProtobufsE2E.ListMessage.Product
- (*ListMessage_Section)(nil), // 206: WAWebProtobufsE2E.ListMessage.Section
- (*ListMessage_Row)(nil), // 207: WAWebProtobufsE2E.ListMessage.Row
- (*HighlyStructuredMessage_HSMLocalizableParameter)(nil), // 208: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter
- (*HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime)(nil), // 209: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime
- (*HighlyStructuredMessage_HSMLocalizableParameter_HSMCurrency)(nil), // 210: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMCurrency
- (*HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent)(nil), // 211: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent
- (*HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeUnixEpoch)(nil), // 212: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeUnixEpoch
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult)(nil), // 213: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponse)(nil), // 214: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_SyncDSnapshotFatalRecoveryResponse)(nil), // 215: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.SyncDSnapshotFatalRecoveryResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_CompanionCanonicalUserNonceFetchResponse)(nil), // 216: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionCanonicalUserNonceFetchResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_CompanionMetaNonceFetchResponse)(nil), // 217: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionMetaNonceFetchResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_WaffleNonceFetchResponse)(nil), // 218: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.WaffleNonceFetchResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandRequestResponse)(nil), // 219: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_PlaceholderMessageResendResponse)(nil), // 220: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.PlaceholderMessageResendResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_LinkPreviewResponse)(nil), // 221: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_LinkPreviewResponse_PaymentLinkPreviewMetadata)(nil), // 222: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.PaymentLinkPreviewMetadata
- (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_LinkPreviewResponse_LinkPreviewHighQualityThumbnail)(nil), // 223: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.LinkPreviewHighQualityThumbnail
- (*PeerDataOperationRequestMessage_GalaxyFlowAction)(nil), // 224: WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction
- (*PeerDataOperationRequestMessage_HistorySyncChunkRetryRequest)(nil), // 225: WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncChunkRetryRequest
- (*PeerDataOperationRequestMessage_SyncDCollectionFatalRecoveryRequest)(nil), // 226: WAWebProtobufsE2E.PeerDataOperationRequestMessage.SyncDCollectionFatalRecoveryRequest
- (*PeerDataOperationRequestMessage_PlaceholderMessageResendRequest)(nil), // 227: WAWebProtobufsE2E.PeerDataOperationRequestMessage.PlaceholderMessageResendRequest
- (*PeerDataOperationRequestMessage_FullHistorySyncOnDemandRequest)(nil), // 228: WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest
- (*PeerDataOperationRequestMessage_HistorySyncOnDemandRequest)(nil), // 229: WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncOnDemandRequest
- (*PeerDataOperationRequestMessage_RequestUrlPreview)(nil), // 230: WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestUrlPreview
- (*PeerDataOperationRequestMessage_RequestStickerReupload)(nil), // 231: WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestStickerReupload
- (*CloudAPIThreadControlNotification_CloudAPIThreadControlNotificationContent)(nil), // 232: WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControlNotificationContent
- (*PaymentLinkMetadata_PaymentLinkHeader)(nil), // 233: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader
- (*PaymentLinkMetadata_PaymentLinkProvider)(nil), // 234: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkProvider
- (*PaymentLinkMetadata_PaymentLinkButton)(nil), // 235: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkButton
- (*ContextInfo_StatusAudienceMetadata)(nil), // 236: WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata
- (*ContextInfo_DataSharingContext)(nil), // 237: WAWebProtobufsE2E.ContextInfo.DataSharingContext
- (*ContextInfo_ForwardedNewsletterMessageInfo)(nil), // 238: WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo
- (*ContextInfo_ExternalAdReplyInfo)(nil), // 239: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo
- (*ContextInfo_AdReplyInfo)(nil), // 240: WAWebProtobufsE2E.ContextInfo.AdReplyInfo
- (*ContextInfo_FeatureEligibilities)(nil), // 241: WAWebProtobufsE2E.ContextInfo.FeatureEligibilities
- (*ContextInfo_QuestionReplyQuotedMessage)(nil), // 242: WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage
- (*ContextInfo_UTMInfo)(nil), // 243: WAWebProtobufsE2E.ContextInfo.UTMInfo
- (*ContextInfo_BusinessMessageForwardInfo)(nil), // 244: WAWebProtobufsE2E.ContextInfo.BusinessMessageForwardInfo
- (*ContextInfo_DataSharingContext_Parameters)(nil), // 245: WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters
- (*HydratedTemplateButton_HydratedURLButton)(nil), // 246: WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton
- (*HydratedTemplateButton_HydratedCallButton)(nil), // 247: WAWebProtobufsE2E.HydratedTemplateButton.HydratedCallButton
- (*HydratedTemplateButton_HydratedQuickReplyButton)(nil), // 248: WAWebProtobufsE2E.HydratedTemplateButton.HydratedQuickReplyButton
- (*PaymentBackground_MediaData)(nil), // 249: WAWebProtobufsE2E.PaymentBackground.MediaData
- (*PollResultSnapshotMessage_PollVote)(nil), // 250: WAWebProtobufsE2E.PollResultSnapshotMessage.PollVote
- (*PollCreationMessage_Option)(nil), // 251: WAWebProtobufsE2E.PollCreationMessage.Option
- (*ProductMessage_ProductSnapshot)(nil), // 252: WAWebProtobufsE2E.ProductMessage.ProductSnapshot
- (*ProductMessage_CatalogSnapshot)(nil), // 253: WAWebProtobufsE2E.ProductMessage.CatalogSnapshot
- (*TemplateMessage_HydratedFourRowTemplate)(nil), // 254: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate
- (*TemplateMessage_FourRowTemplate)(nil), // 255: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate
- (*TemplateButton_CallButton)(nil), // 256: WAWebProtobufsE2E.TemplateButton.CallButton
- (*TemplateButton_URLButton)(nil), // 257: WAWebProtobufsE2E.TemplateButton.URLButton
- (*TemplateButton_QuickReplyButton)(nil), // 258: WAWebProtobufsE2E.TemplateButton.QuickReplyButton
- (*UrlTrackingMap_UrlTrackingMapElement)(nil), // 259: WAWebProtobufsE2E.UrlTrackingMap.UrlTrackingMapElement
- (*waCommon.MessageKey)(nil), // 260: WACommon.MessageKey
- (*waAICommon.BotFeedbackMessage)(nil), // 261: WAAICommon.BotFeedbackMessage
- (*waCommon.LimitSharing)(nil), // 262: WACommon.LimitSharing
- (*waAICommon.ForwardedAIBotMessageInfo)(nil), // 263: WAAICommon.ForwardedAIBotMessageInfo
- (*waStatusAttributions.StatusAttribution)(nil), // 264: WAStatusAttributions.StatusAttribution
- (*waAICommon.BotMessageSharingInfo)(nil), // 265: WAAICommon.BotMessageSharingInfo
- (*waAICommon.BotMetadata)(nil), // 266: WAAICommon.BotMetadata
- (waAdv.ADVEncryptionType)(0), // 267: WAAdv.ADVEncryptionType
- (waAICommon.AIRichResponseMessageType)(0), // 268: WAAICommon.AIRichResponseMessageType
- (*waAICommon.AIRichResponseSubMessage)(nil), // 269: WAAICommon.AIRichResponseSubMessage
- (*waAICommon.AIRichResponseUnifiedResponse)(nil), // 270: WAAICommon.AIRichResponseUnifiedResponse
- (waMmsRetry.MediaRetryNotification_ResultType)(0), // 271: WAMmsRetry.MediaRetryNotification.ResultType
- (*waCompanionReg.DeviceProps_HistorySyncConfig)(nil), // 272: WACompanionReg.DeviceProps.HistorySyncConfig
+ (*HistorySyncMessageAccessStatus)(nil), // 157: WAWebProtobufsE2E.HistorySyncMessageAccessStatus
+ (*Chat)(nil), // 158: WAWebProtobufsE2E.Chat
+ (*Call)(nil), // 159: WAWebProtobufsE2E.Call
+ (*AudioMessage)(nil), // 160: WAWebProtobufsE2E.AudioMessage
+ (*DocumentMessage)(nil), // 161: WAWebProtobufsE2E.DocumentMessage
+ (*URLMetadata)(nil), // 162: WAWebProtobufsE2E.URLMetadata
+ (*PaymentExtendedMetadata)(nil), // 163: WAWebProtobufsE2E.PaymentExtendedMetadata
+ (*MMSThumbnailMetadata)(nil), // 164: WAWebProtobufsE2E.MMSThumbnailMetadata
+ (*LocationMessage)(nil), // 165: WAWebProtobufsE2E.LocationMessage
+ (*ContactMessage)(nil), // 166: WAWebProtobufsE2E.ContactMessage
+ (*SenderKeyDistributionMessage)(nil), // 167: WAWebProtobufsE2E.SenderKeyDistributionMessage
+ (*VideoEndCard)(nil), // 168: WAWebProtobufsE2E.VideoEndCard
+ (*DeviceListMetadata)(nil), // 169: WAWebProtobufsE2E.DeviceListMetadata
+ (*EmbeddedMessage)(nil), // 170: WAWebProtobufsE2E.EmbeddedMessage
+ (*EmbeddedMusic)(nil), // 171: WAWebProtobufsE2E.EmbeddedMusic
+ (*EmbeddedContent)(nil), // 172: WAWebProtobufsE2E.EmbeddedContent
+ (*TapLinkAction)(nil), // 173: WAWebProtobufsE2E.TapLinkAction
+ (*Point)(nil), // 174: WAWebProtobufsE2E.Point
+ (*Location)(nil), // 175: WAWebProtobufsE2E.Location
+ (*TemplateButton)(nil), // 176: WAWebProtobufsE2E.TemplateButton
+ (*Money)(nil), // 177: WAWebProtobufsE2E.Money
+ (*ActionLink)(nil), // 178: WAWebProtobufsE2E.ActionLink
+ (*GroupMention)(nil), // 179: WAWebProtobufsE2E.GroupMention
+ (*MessageSecretMessage)(nil), // 180: WAWebProtobufsE2E.MessageSecretMessage
+ (*MediaNotifyMessage)(nil), // 181: WAWebProtobufsE2E.MediaNotifyMessage
+ (*LIDMigrationMappingSyncMessage)(nil), // 182: WAWebProtobufsE2E.LIDMigrationMappingSyncMessage
+ (*UrlTrackingMap)(nil), // 183: WAWebProtobufsE2E.UrlTrackingMap
+ (*MemberLabel)(nil), // 184: WAWebProtobufsE2E.MemberLabel
+ (*AIRichResponseMessage)(nil), // 185: WAWebProtobufsE2E.AIRichResponseMessage
+ (*AIQueryFanout)(nil), // 186: WAWebProtobufsE2E.AIQueryFanout
+ (*StickerPackMessage_Sticker)(nil), // 187: WAWebProtobufsE2E.StickerPackMessage.Sticker
+ (*CallLogMessage_CallParticipant)(nil), // 188: WAWebProtobufsE2E.CallLogMessage.CallParticipant
+ (*ButtonsMessage_Button)(nil), // 189: WAWebProtobufsE2E.ButtonsMessage.Button
+ (*ButtonsMessage_Button_NativeFlowInfo)(nil), // 190: WAWebProtobufsE2E.ButtonsMessage.Button.NativeFlowInfo
+ (*ButtonsMessage_Button_ButtonText)(nil), // 191: WAWebProtobufsE2E.ButtonsMessage.Button.ButtonText
+ (*InteractiveResponseMessage_Body)(nil), // 192: WAWebProtobufsE2E.InteractiveResponseMessage.Body
+ (*InteractiveResponseMessage_NativeFlowResponseMessage)(nil), // 193: WAWebProtobufsE2E.InteractiveResponseMessage.NativeFlowResponseMessage
+ (*InteractiveMessage_CarouselMessage)(nil), // 194: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage
+ (*InteractiveMessage_ShopMessage)(nil), // 195: WAWebProtobufsE2E.InteractiveMessage.ShopMessage
+ (*InteractiveMessage_NativeFlowMessage)(nil), // 196: WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage
+ (*InteractiveMessage_CollectionMessage)(nil), // 197: WAWebProtobufsE2E.InteractiveMessage.CollectionMessage
+ (*InteractiveMessage_Footer)(nil), // 198: WAWebProtobufsE2E.InteractiveMessage.Footer
+ (*InteractiveMessage_Body)(nil), // 199: WAWebProtobufsE2E.InteractiveMessage.Body
+ (*InteractiveMessage_Header)(nil), // 200: WAWebProtobufsE2E.InteractiveMessage.Header
+ (*InteractiveMessage_NativeFlowMessage_NativeFlowButton)(nil), // 201: WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage.NativeFlowButton
+ (*ListResponseMessage_SingleSelectReply)(nil), // 202: WAWebProtobufsE2E.ListResponseMessage.SingleSelectReply
+ (*ListMessage_ProductListInfo)(nil), // 203: WAWebProtobufsE2E.ListMessage.ProductListInfo
+ (*ListMessage_ProductListHeaderImage)(nil), // 204: WAWebProtobufsE2E.ListMessage.ProductListHeaderImage
+ (*ListMessage_ProductSection)(nil), // 205: WAWebProtobufsE2E.ListMessage.ProductSection
+ (*ListMessage_Product)(nil), // 206: WAWebProtobufsE2E.ListMessage.Product
+ (*ListMessage_Section)(nil), // 207: WAWebProtobufsE2E.ListMessage.Section
+ (*ListMessage_Row)(nil), // 208: WAWebProtobufsE2E.ListMessage.Row
+ (*HighlyStructuredMessage_HSMLocalizableParameter)(nil), // 209: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter
+ (*HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime)(nil), // 210: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime
+ (*HighlyStructuredMessage_HSMLocalizableParameter_HSMCurrency)(nil), // 211: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMCurrency
+ (*HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeComponent)(nil), // 212: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent
+ (*HighlyStructuredMessage_HSMLocalizableParameter_HSMDateTime_HSMDateTimeUnixEpoch)(nil), // 213: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeUnixEpoch
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult)(nil), // 214: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_HistorySyncChunkRetryResponse)(nil), // 215: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_SyncDSnapshotFatalRecoveryResponse)(nil), // 216: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.SyncDSnapshotFatalRecoveryResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_CompanionCanonicalUserNonceFetchResponse)(nil), // 217: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionCanonicalUserNonceFetchResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_CompanionMetaNonceFetchResponse)(nil), // 218: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionMetaNonceFetchResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_WaffleNonceFetchResponse)(nil), // 219: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.WaffleNonceFetchResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_FullHistorySyncOnDemandRequestResponse)(nil), // 220: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_PlaceholderMessageResendResponse)(nil), // 221: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.PlaceholderMessageResendResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_LinkPreviewResponse)(nil), // 222: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_LinkPreviewResponse_PaymentLinkPreviewMetadata)(nil), // 223: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.PaymentLinkPreviewMetadata
+ (*PeerDataOperationRequestResponseMessage_PeerDataOperationResult_LinkPreviewResponse_LinkPreviewHighQualityThumbnail)(nil), // 224: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.LinkPreviewHighQualityThumbnail
+ (*PeerDataOperationRequestMessage_GalaxyFlowAction)(nil), // 225: WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction
+ (*PeerDataOperationRequestMessage_HistorySyncChunkRetryRequest)(nil), // 226: WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncChunkRetryRequest
+ (*PeerDataOperationRequestMessage_SyncDCollectionFatalRecoveryRequest)(nil), // 227: WAWebProtobufsE2E.PeerDataOperationRequestMessage.SyncDCollectionFatalRecoveryRequest
+ (*PeerDataOperationRequestMessage_PlaceholderMessageResendRequest)(nil), // 228: WAWebProtobufsE2E.PeerDataOperationRequestMessage.PlaceholderMessageResendRequest
+ (*PeerDataOperationRequestMessage_FullHistorySyncOnDemandRequest)(nil), // 229: WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest
+ (*PeerDataOperationRequestMessage_HistorySyncOnDemandRequest)(nil), // 230: WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncOnDemandRequest
+ (*PeerDataOperationRequestMessage_RequestUrlPreview)(nil), // 231: WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestUrlPreview
+ (*PeerDataOperationRequestMessage_RequestStickerReupload)(nil), // 232: WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestStickerReupload
+ (*CloudAPIThreadControlNotification_CloudAPIThreadControlNotificationContent)(nil), // 233: WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControlNotificationContent
+ (*PaymentLinkMetadata_PaymentLinkHeader)(nil), // 234: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader
+ (*PaymentLinkMetadata_PaymentLinkProvider)(nil), // 235: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkProvider
+ (*PaymentLinkMetadata_PaymentLinkButton)(nil), // 236: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkButton
+ (*ContextInfo_StatusAudienceMetadata)(nil), // 237: WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata
+ (*ContextInfo_DataSharingContext)(nil), // 238: WAWebProtobufsE2E.ContextInfo.DataSharingContext
+ (*ContextInfo_ForwardedNewsletterMessageInfo)(nil), // 239: WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo
+ (*ContextInfo_ExternalAdReplyInfo)(nil), // 240: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo
+ (*ContextInfo_AdReplyInfo)(nil), // 241: WAWebProtobufsE2E.ContextInfo.AdReplyInfo
+ (*ContextInfo_FeatureEligibilities)(nil), // 242: WAWebProtobufsE2E.ContextInfo.FeatureEligibilities
+ (*ContextInfo_QuestionReplyQuotedMessage)(nil), // 243: WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage
+ (*ContextInfo_UTMInfo)(nil), // 244: WAWebProtobufsE2E.ContextInfo.UTMInfo
+ (*ContextInfo_BusinessMessageForwardInfo)(nil), // 245: WAWebProtobufsE2E.ContextInfo.BusinessMessageForwardInfo
+ (*ContextInfo_DataSharingContext_Parameters)(nil), // 246: WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters
+ (*HydratedTemplateButton_HydratedURLButton)(nil), // 247: WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton
+ (*HydratedTemplateButton_HydratedCallButton)(nil), // 248: WAWebProtobufsE2E.HydratedTemplateButton.HydratedCallButton
+ (*HydratedTemplateButton_HydratedQuickReplyButton)(nil), // 249: WAWebProtobufsE2E.HydratedTemplateButton.HydratedQuickReplyButton
+ (*PaymentBackground_MediaData)(nil), // 250: WAWebProtobufsE2E.PaymentBackground.MediaData
+ (*PollResultSnapshotMessage_PollVote)(nil), // 251: WAWebProtobufsE2E.PollResultSnapshotMessage.PollVote
+ (*PollCreationMessage_Option)(nil), // 252: WAWebProtobufsE2E.PollCreationMessage.Option
+ (*ProductMessage_ProductSnapshot)(nil), // 253: WAWebProtobufsE2E.ProductMessage.ProductSnapshot
+ (*ProductMessage_CatalogSnapshot)(nil), // 254: WAWebProtobufsE2E.ProductMessage.CatalogSnapshot
+ (*TemplateMessage_HydratedFourRowTemplate)(nil), // 255: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate
+ (*TemplateMessage_FourRowTemplate)(nil), // 256: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate
+ (*TemplateButton_CallButton)(nil), // 257: WAWebProtobufsE2E.TemplateButton.CallButton
+ (*TemplateButton_URLButton)(nil), // 258: WAWebProtobufsE2E.TemplateButton.URLButton
+ (*TemplateButton_QuickReplyButton)(nil), // 259: WAWebProtobufsE2E.TemplateButton.QuickReplyButton
+ (*UrlTrackingMap_UrlTrackingMapElement)(nil), // 260: WAWebProtobufsE2E.UrlTrackingMap.UrlTrackingMapElement
+ (*waCommon.MessageKey)(nil), // 261: WACommon.MessageKey
+ (*waAICommon.BotFeedbackMessage)(nil), // 262: WAAICommon.BotFeedbackMessage
+ (*waCommon.LimitSharing)(nil), // 263: WACommon.LimitSharing
+ (*waAICommon.ForwardedAIBotMessageInfo)(nil), // 264: WAAICommon.ForwardedAIBotMessageInfo
+ (*waStatusAttributions.StatusAttribution)(nil), // 265: WAStatusAttributions.StatusAttribution
+ (*waAICommon.BotMessageSharingInfo)(nil), // 266: WAAICommon.BotMessageSharingInfo
+ (*waAICommon.BotMetadata)(nil), // 267: WAAICommon.BotMetadata
+ (waAdv.ADVEncryptionType)(0), // 268: WAAdv.ADVEncryptionType
+ (waAICommon.AIRichResponseMessageType)(0), // 269: WAAICommon.AIRichResponseMessageType
+ (*waAICommon.AIRichResponseSubMessage)(nil), // 270: WAAICommon.AIRichResponseSubMessage
+ (*waAICommon.AIRichResponseUnifiedResponse)(nil), // 271: WAAICommon.AIRichResponseUnifiedResponse
+ (waMmsRetry.MediaRetryNotification_ResultType)(0), // 272: WAMmsRetry.MediaRetryNotification.ResultType
+ (*waCompanionReg.DeviceProps_HistorySyncConfig)(nil), // 273: WACompanionReg.DeviceProps.HistorySyncConfig
}
var file_waE2E_WAWebProtobufsE2E_proto_depIdxs = []int32{
- 186, // 0: WAWebProtobufsE2E.StickerPackMessage.stickers:type_name -> WAWebProtobufsE2E.StickerPackMessage.Sticker
- 101, // 1: WAWebProtobufsE2E.StickerPackMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 6, // 2: WAWebProtobufsE2E.StickerPackMessage.stickerPackOrigin:type_name -> WAWebProtobufsE2E.StickerPackMessage.StickerPackOrigin
- 7, // 3: WAWebProtobufsE2E.PlaceholderMessage.type:type_name -> WAWebProtobufsE2E.PlaceholderMessage.PlaceholderType
- 8, // 4: WAWebProtobufsE2E.BCallMessage.mediaType:type_name -> WAWebProtobufsE2E.BCallMessage.MediaType
- 9, // 5: WAWebProtobufsE2E.CallLogMessage.callOutcome:type_name -> WAWebProtobufsE2E.CallLogMessage.CallOutcome
- 10, // 6: WAWebProtobufsE2E.CallLogMessage.callType:type_name -> WAWebProtobufsE2E.CallLogMessage.CallType
- 187, // 7: WAWebProtobufsE2E.CallLogMessage.participants:type_name -> WAWebProtobufsE2E.CallLogMessage.CallParticipant
- 260, // 8: WAWebProtobufsE2E.ScheduledCallEditMessage.key:type_name -> WACommon.MessageKey
- 11, // 9: WAWebProtobufsE2E.ScheduledCallEditMessage.editType:type_name -> WAWebProtobufsE2E.ScheduledCallEditMessage.EditType
- 12, // 10: WAWebProtobufsE2E.ScheduledCallCreationMessage.callType:type_name -> WAWebProtobufsE2E.ScheduledCallCreationMessage.CallType
- 13, // 11: WAWebProtobufsE2E.EventResponseMessage.response:type_name -> WAWebProtobufsE2E.EventResponseMessage.EventResponseType
- 260, // 12: WAWebProtobufsE2E.PinInChatMessage.key:type_name -> WACommon.MessageKey
- 14, // 13: WAWebProtobufsE2E.PinInChatMessage.type:type_name -> WAWebProtobufsE2E.PinInChatMessage.Type
- 260, // 14: WAWebProtobufsE2E.StatusStickerInteractionMessage.key:type_name -> WACommon.MessageKey
- 15, // 15: WAWebProtobufsE2E.StatusStickerInteractionMessage.type:type_name -> WAWebProtobufsE2E.StatusStickerInteractionMessage.StatusStickerType
- 101, // 16: WAWebProtobufsE2E.ButtonsResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 16, // 17: WAWebProtobufsE2E.ButtonsResponseMessage.type:type_name -> WAWebProtobufsE2E.ButtonsResponseMessage.Type
- 160, // 18: WAWebProtobufsE2E.ButtonsMessage.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
- 100, // 19: WAWebProtobufsE2E.ButtonsMessage.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
- 94, // 20: WAWebProtobufsE2E.ButtonsMessage.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
- 164, // 21: WAWebProtobufsE2E.ButtonsMessage.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
- 101, // 22: WAWebProtobufsE2E.ButtonsMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 188, // 23: WAWebProtobufsE2E.ButtonsMessage.buttons:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button
- 17, // 24: WAWebProtobufsE2E.ButtonsMessage.headerType:type_name -> WAWebProtobufsE2E.ButtonsMessage.HeaderType
- 260, // 25: WAWebProtobufsE2E.SecretEncryptedMessage.targetMessageKey:type_name -> WACommon.MessageKey
- 19, // 26: WAWebProtobufsE2E.SecretEncryptedMessage.secretEncType:type_name -> WAWebProtobufsE2E.SecretEncryptedMessage.SecretEncType
- 101, // 27: WAWebProtobufsE2E.GroupInviteMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 20, // 28: WAWebProtobufsE2E.GroupInviteMessage.groupType:type_name -> WAWebProtobufsE2E.GroupInviteMessage.GroupType
- 192, // 29: WAWebProtobufsE2E.InteractiveResponseMessage.nativeFlowResponseMessage:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage.NativeFlowResponseMessage
- 191, // 30: WAWebProtobufsE2E.InteractiveResponseMessage.body:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage.Body
- 101, // 31: WAWebProtobufsE2E.InteractiveResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 194, // 32: WAWebProtobufsE2E.InteractiveMessage.shopStorefrontMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.ShopMessage
- 196, // 33: WAWebProtobufsE2E.InteractiveMessage.collectionMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.CollectionMessage
- 195, // 34: WAWebProtobufsE2E.InteractiveMessage.nativeFlowMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage
- 193, // 35: WAWebProtobufsE2E.InteractiveMessage.carouselMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.CarouselMessage
- 199, // 36: WAWebProtobufsE2E.InteractiveMessage.header:type_name -> WAWebProtobufsE2E.InteractiveMessage.Header
- 198, // 37: WAWebProtobufsE2E.InteractiveMessage.body:type_name -> WAWebProtobufsE2E.InteractiveMessage.Body
- 197, // 38: WAWebProtobufsE2E.InteractiveMessage.footer:type_name -> WAWebProtobufsE2E.InteractiveMessage.Footer
- 101, // 39: WAWebProtobufsE2E.InteractiveMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 182, // 40: WAWebProtobufsE2E.InteractiveMessage.urlTrackingMap:type_name -> WAWebProtobufsE2E.UrlTrackingMap
- 24, // 41: WAWebProtobufsE2E.ListResponseMessage.listType:type_name -> WAWebProtobufsE2E.ListResponseMessage.ListType
- 201, // 42: WAWebProtobufsE2E.ListResponseMessage.singleSelectReply:type_name -> WAWebProtobufsE2E.ListResponseMessage.SingleSelectReply
- 101, // 43: WAWebProtobufsE2E.ListResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 25, // 44: WAWebProtobufsE2E.ListMessage.listType:type_name -> WAWebProtobufsE2E.ListMessage.ListType
- 206, // 45: WAWebProtobufsE2E.ListMessage.sections:type_name -> WAWebProtobufsE2E.ListMessage.Section
- 202, // 46: WAWebProtobufsE2E.ListMessage.productListInfo:type_name -> WAWebProtobufsE2E.ListMessage.ProductListInfo
- 101, // 47: WAWebProtobufsE2E.ListMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 27, // 48: WAWebProtobufsE2E.OrderMessage.status:type_name -> WAWebProtobufsE2E.OrderMessage.OrderStatus
- 26, // 49: WAWebProtobufsE2E.OrderMessage.surface:type_name -> WAWebProtobufsE2E.OrderMessage.OrderSurface
- 101, // 50: WAWebProtobufsE2E.OrderMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 260, // 51: WAWebProtobufsE2E.OrderMessage.orderRequestMessageID:type_name -> WACommon.MessageKey
- 28, // 52: WAWebProtobufsE2E.StatusQuotedMessage.type:type_name -> WAWebProtobufsE2E.StatusQuotedMessage.StatusQuotedMessageType
- 260, // 53: WAWebProtobufsE2E.StatusQuotedMessage.originalStatusID:type_name -> WACommon.MessageKey
- 29, // 54: WAWebProtobufsE2E.PaymentInviteMessage.serviceType:type_name -> WAWebProtobufsE2E.PaymentInviteMessage.ServiceType
- 208, // 55: WAWebProtobufsE2E.HighlyStructuredMessage.localizableParams:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter
+ 187, // 0: WAWebProtobufsE2E.StickerPackMessage.stickers:type_name -> WAWebProtobufsE2E.StickerPackMessage.Sticker
+ 102, // 1: WAWebProtobufsE2E.StickerPackMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 7, // 2: WAWebProtobufsE2E.StickerPackMessage.stickerPackOrigin:type_name -> WAWebProtobufsE2E.StickerPackMessage.StickerPackOrigin
+ 8, // 3: WAWebProtobufsE2E.PlaceholderMessage.type:type_name -> WAWebProtobufsE2E.PlaceholderMessage.PlaceholderType
+ 9, // 4: WAWebProtobufsE2E.BCallMessage.mediaType:type_name -> WAWebProtobufsE2E.BCallMessage.MediaType
+ 10, // 5: WAWebProtobufsE2E.CallLogMessage.callOutcome:type_name -> WAWebProtobufsE2E.CallLogMessage.CallOutcome
+ 11, // 6: WAWebProtobufsE2E.CallLogMessage.callType:type_name -> WAWebProtobufsE2E.CallLogMessage.CallType
+ 188, // 7: WAWebProtobufsE2E.CallLogMessage.participants:type_name -> WAWebProtobufsE2E.CallLogMessage.CallParticipant
+ 261, // 8: WAWebProtobufsE2E.ScheduledCallEditMessage.key:type_name -> WACommon.MessageKey
+ 12, // 9: WAWebProtobufsE2E.ScheduledCallEditMessage.editType:type_name -> WAWebProtobufsE2E.ScheduledCallEditMessage.EditType
+ 13, // 10: WAWebProtobufsE2E.ScheduledCallCreationMessage.callType:type_name -> WAWebProtobufsE2E.ScheduledCallCreationMessage.CallType
+ 14, // 11: WAWebProtobufsE2E.EventResponseMessage.response:type_name -> WAWebProtobufsE2E.EventResponseMessage.EventResponseType
+ 261, // 12: WAWebProtobufsE2E.PinInChatMessage.key:type_name -> WACommon.MessageKey
+ 15, // 13: WAWebProtobufsE2E.PinInChatMessage.type:type_name -> WAWebProtobufsE2E.PinInChatMessage.Type
+ 261, // 14: WAWebProtobufsE2E.StatusStickerInteractionMessage.key:type_name -> WACommon.MessageKey
+ 16, // 15: WAWebProtobufsE2E.StatusStickerInteractionMessage.type:type_name -> WAWebProtobufsE2E.StatusStickerInteractionMessage.StatusStickerType
+ 102, // 16: WAWebProtobufsE2E.ButtonsResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 17, // 17: WAWebProtobufsE2E.ButtonsResponseMessage.type:type_name -> WAWebProtobufsE2E.ButtonsResponseMessage.Type
+ 161, // 18: WAWebProtobufsE2E.ButtonsMessage.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
+ 101, // 19: WAWebProtobufsE2E.ButtonsMessage.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 95, // 20: WAWebProtobufsE2E.ButtonsMessage.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
+ 165, // 21: WAWebProtobufsE2E.ButtonsMessage.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
+ 102, // 22: WAWebProtobufsE2E.ButtonsMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 189, // 23: WAWebProtobufsE2E.ButtonsMessage.buttons:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button
+ 18, // 24: WAWebProtobufsE2E.ButtonsMessage.headerType:type_name -> WAWebProtobufsE2E.ButtonsMessage.HeaderType
+ 261, // 25: WAWebProtobufsE2E.SecretEncryptedMessage.targetMessageKey:type_name -> WACommon.MessageKey
+ 20, // 26: WAWebProtobufsE2E.SecretEncryptedMessage.secretEncType:type_name -> WAWebProtobufsE2E.SecretEncryptedMessage.SecretEncType
+ 102, // 27: WAWebProtobufsE2E.GroupInviteMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 21, // 28: WAWebProtobufsE2E.GroupInviteMessage.groupType:type_name -> WAWebProtobufsE2E.GroupInviteMessage.GroupType
+ 193, // 29: WAWebProtobufsE2E.InteractiveResponseMessage.nativeFlowResponseMessage:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage.NativeFlowResponseMessage
+ 192, // 30: WAWebProtobufsE2E.InteractiveResponseMessage.body:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage.Body
+ 102, // 31: WAWebProtobufsE2E.InteractiveResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 195, // 32: WAWebProtobufsE2E.InteractiveMessage.shopStorefrontMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.ShopMessage
+ 197, // 33: WAWebProtobufsE2E.InteractiveMessage.collectionMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.CollectionMessage
+ 196, // 34: WAWebProtobufsE2E.InteractiveMessage.nativeFlowMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage
+ 194, // 35: WAWebProtobufsE2E.InteractiveMessage.carouselMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage.CarouselMessage
+ 200, // 36: WAWebProtobufsE2E.InteractiveMessage.header:type_name -> WAWebProtobufsE2E.InteractiveMessage.Header
+ 199, // 37: WAWebProtobufsE2E.InteractiveMessage.body:type_name -> WAWebProtobufsE2E.InteractiveMessage.Body
+ 198, // 38: WAWebProtobufsE2E.InteractiveMessage.footer:type_name -> WAWebProtobufsE2E.InteractiveMessage.Footer
+ 102, // 39: WAWebProtobufsE2E.InteractiveMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 183, // 40: WAWebProtobufsE2E.InteractiveMessage.urlTrackingMap:type_name -> WAWebProtobufsE2E.UrlTrackingMap
+ 25, // 41: WAWebProtobufsE2E.ListResponseMessage.listType:type_name -> WAWebProtobufsE2E.ListResponseMessage.ListType
+ 202, // 42: WAWebProtobufsE2E.ListResponseMessage.singleSelectReply:type_name -> WAWebProtobufsE2E.ListResponseMessage.SingleSelectReply
+ 102, // 43: WAWebProtobufsE2E.ListResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 26, // 44: WAWebProtobufsE2E.ListMessage.listType:type_name -> WAWebProtobufsE2E.ListMessage.ListType
+ 207, // 45: WAWebProtobufsE2E.ListMessage.sections:type_name -> WAWebProtobufsE2E.ListMessage.Section
+ 203, // 46: WAWebProtobufsE2E.ListMessage.productListInfo:type_name -> WAWebProtobufsE2E.ListMessage.ProductListInfo
+ 102, // 47: WAWebProtobufsE2E.ListMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 28, // 48: WAWebProtobufsE2E.OrderMessage.status:type_name -> WAWebProtobufsE2E.OrderMessage.OrderStatus
+ 27, // 49: WAWebProtobufsE2E.OrderMessage.surface:type_name -> WAWebProtobufsE2E.OrderMessage.OrderSurface
+ 102, // 50: WAWebProtobufsE2E.OrderMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 261, // 51: WAWebProtobufsE2E.OrderMessage.orderRequestMessageID:type_name -> WACommon.MessageKey
+ 29, // 52: WAWebProtobufsE2E.StatusQuotedMessage.type:type_name -> WAWebProtobufsE2E.StatusQuotedMessage.StatusQuotedMessageType
+ 261, // 53: WAWebProtobufsE2E.StatusQuotedMessage.originalStatusID:type_name -> WACommon.MessageKey
+ 30, // 54: WAWebProtobufsE2E.PaymentInviteMessage.serviceType:type_name -> WAWebProtobufsE2E.PaymentInviteMessage.ServiceType
+ 209, // 55: WAWebProtobufsE2E.HighlyStructuredMessage.localizableParams:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter
139, // 56: WAWebProtobufsE2E.HighlyStructuredMessage.hydratedHsm:type_name -> WAWebProtobufsE2E.TemplateMessage
2, // 57: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.peerDataOperationRequestType:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestType
- 213, // 58: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.peerDataOperationResult:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult
+ 214, // 58: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.peerDataOperationResult:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult
2, // 59: WAWebProtobufsE2E.PeerDataOperationRequestMessage.peerDataOperationRequestType:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestType
- 231, // 60: WAWebProtobufsE2E.PeerDataOperationRequestMessage.requestStickerReupload:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestStickerReupload
- 230, // 61: WAWebProtobufsE2E.PeerDataOperationRequestMessage.requestURLPreview:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestUrlPreview
- 229, // 62: WAWebProtobufsE2E.PeerDataOperationRequestMessage.historySyncOnDemandRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncOnDemandRequest
- 227, // 63: WAWebProtobufsE2E.PeerDataOperationRequestMessage.placeholderMessageResendRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.PlaceholderMessageResendRequest
- 228, // 64: WAWebProtobufsE2E.PeerDataOperationRequestMessage.fullHistorySyncOnDemandRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest
- 226, // 65: WAWebProtobufsE2E.PeerDataOperationRequestMessage.syncdCollectionFatalRecoveryRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.SyncDCollectionFatalRecoveryRequest
- 225, // 66: WAWebProtobufsE2E.PeerDataOperationRequestMessage.historySyncChunkRetryRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncChunkRetryRequest
- 224, // 67: WAWebProtobufsE2E.PeerDataOperationRequestMessage.galaxyFlowAction:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction
- 35, // 68: WAWebProtobufsE2E.RequestWelcomeMessageMetadata.localChatState:type_name -> WAWebProtobufsE2E.RequestWelcomeMessageMetadata.LocalChatState
- 260, // 69: WAWebProtobufsE2E.ProtocolMessage.key:type_name -> WACommon.MessageKey
- 36, // 70: WAWebProtobufsE2E.ProtocolMessage.type:type_name -> WAWebProtobufsE2E.ProtocolMessage.Type
+ 232, // 60: WAWebProtobufsE2E.PeerDataOperationRequestMessage.requestStickerReupload:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestStickerReupload
+ 231, // 61: WAWebProtobufsE2E.PeerDataOperationRequestMessage.requestURLPreview:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.RequestUrlPreview
+ 230, // 62: WAWebProtobufsE2E.PeerDataOperationRequestMessage.historySyncOnDemandRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncOnDemandRequest
+ 228, // 63: WAWebProtobufsE2E.PeerDataOperationRequestMessage.placeholderMessageResendRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.PlaceholderMessageResendRequest
+ 229, // 64: WAWebProtobufsE2E.PeerDataOperationRequestMessage.fullHistorySyncOnDemandRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest
+ 227, // 65: WAWebProtobufsE2E.PeerDataOperationRequestMessage.syncdCollectionFatalRecoveryRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.SyncDCollectionFatalRecoveryRequest
+ 226, // 66: WAWebProtobufsE2E.PeerDataOperationRequestMessage.historySyncChunkRetryRequest:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncChunkRetryRequest
+ 225, // 67: WAWebProtobufsE2E.PeerDataOperationRequestMessage.galaxyFlowAction:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction
+ 36, // 68: WAWebProtobufsE2E.RequestWelcomeMessageMetadata.localChatState:type_name -> WAWebProtobufsE2E.RequestWelcomeMessageMetadata.LocalChatState
+ 261, // 69: WAWebProtobufsE2E.ProtocolMessage.key:type_name -> WACommon.MessageKey
+ 37, // 70: WAWebProtobufsE2E.ProtocolMessage.type:type_name -> WAWebProtobufsE2E.ProtocolMessage.Type
156, // 71: WAWebProtobufsE2E.ProtocolMessage.historySyncNotification:type_name -> WAWebProtobufsE2E.HistorySyncNotification
151, // 72: WAWebProtobufsE2E.ProtocolMessage.appStateSyncKeyShare:type_name -> WAWebProtobufsE2E.AppStateSyncKeyShare
150, // 73: WAWebProtobufsE2E.ProtocolMessage.appStateSyncKeyRequest:type_name -> WAWebProtobufsE2E.AppStateSyncKeyRequest
147, // 74: WAWebProtobufsE2E.ProtocolMessage.initialSecurityNotificationSettingSync:type_name -> WAWebProtobufsE2E.InitialSecurityNotificationSettingSync
149, // 75: WAWebProtobufsE2E.ProtocolMessage.appStateFatalExceptionNotification:type_name -> WAWebProtobufsE2E.AppStateFatalExceptionNotification
- 108, // 76: WAWebProtobufsE2E.ProtocolMessage.disappearingMode:type_name -> WAWebProtobufsE2E.DisappearingMode
- 110, // 77: WAWebProtobufsE2E.ProtocolMessage.editedMessage:type_name -> WAWebProtobufsE2E.Message
- 90, // 78: WAWebProtobufsE2E.ProtocolMessage.peerDataOperationRequestMessage:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage
- 89, // 79: WAWebProtobufsE2E.ProtocolMessage.peerDataOperationRequestResponseMessage:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage
- 261, // 80: WAWebProtobufsE2E.ProtocolMessage.botFeedbackMessage:type_name -> WAAICommon.BotFeedbackMessage
- 91, // 81: WAWebProtobufsE2E.ProtocolMessage.requestWelcomeMessageMetadata:type_name -> WAWebProtobufsE2E.RequestWelcomeMessageMetadata
- 180, // 82: WAWebProtobufsE2E.ProtocolMessage.mediaNotifyMessage:type_name -> WAWebProtobufsE2E.MediaNotifyMessage
- 93, // 83: WAWebProtobufsE2E.ProtocolMessage.cloudApiThreadControlNotification:type_name -> WAWebProtobufsE2E.CloudAPIThreadControlNotification
- 181, // 84: WAWebProtobufsE2E.ProtocolMessage.lidMigrationMappingSyncMessage:type_name -> WAWebProtobufsE2E.LIDMigrationMappingSyncMessage
- 262, // 85: WAWebProtobufsE2E.ProtocolMessage.limitSharing:type_name -> WACommon.LimitSharing
- 185, // 86: WAWebProtobufsE2E.ProtocolMessage.aiQueryFanout:type_name -> WAWebProtobufsE2E.AIQueryFanout
- 183, // 87: WAWebProtobufsE2E.ProtocolMessage.memberLabel:type_name -> WAWebProtobufsE2E.MemberLabel
- 37, // 88: WAWebProtobufsE2E.CloudAPIThreadControlNotification.status:type_name -> WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControl
- 232, // 89: WAWebProtobufsE2E.CloudAPIThreadControlNotification.notificationContent:type_name -> WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControlNotificationContent
- 105, // 90: WAWebProtobufsE2E.VideoMessage.interactiveAnnotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
- 101, // 91: WAWebProtobufsE2E.VideoMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 39, // 92: WAWebProtobufsE2E.VideoMessage.gifAttribution:type_name -> WAWebProtobufsE2E.VideoMessage.Attribution
- 105, // 93: WAWebProtobufsE2E.VideoMessage.annotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
- 109, // 94: WAWebProtobufsE2E.VideoMessage.processedVideos:type_name -> WAWebProtobufsE2E.ProcessedVideo
- 38, // 95: WAWebProtobufsE2E.VideoMessage.videoSourceType:type_name -> WAWebProtobufsE2E.VideoMessage.VideoSourceType
+ 109, // 76: WAWebProtobufsE2E.ProtocolMessage.disappearingMode:type_name -> WAWebProtobufsE2E.DisappearingMode
+ 111, // 77: WAWebProtobufsE2E.ProtocolMessage.editedMessage:type_name -> WAWebProtobufsE2E.Message
+ 91, // 78: WAWebProtobufsE2E.ProtocolMessage.peerDataOperationRequestMessage:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage
+ 90, // 79: WAWebProtobufsE2E.ProtocolMessage.peerDataOperationRequestResponseMessage:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage
+ 262, // 80: WAWebProtobufsE2E.ProtocolMessage.botFeedbackMessage:type_name -> WAAICommon.BotFeedbackMessage
+ 92, // 81: WAWebProtobufsE2E.ProtocolMessage.requestWelcomeMessageMetadata:type_name -> WAWebProtobufsE2E.RequestWelcomeMessageMetadata
+ 181, // 82: WAWebProtobufsE2E.ProtocolMessage.mediaNotifyMessage:type_name -> WAWebProtobufsE2E.MediaNotifyMessage
+ 94, // 83: WAWebProtobufsE2E.ProtocolMessage.cloudApiThreadControlNotification:type_name -> WAWebProtobufsE2E.CloudAPIThreadControlNotification
+ 182, // 84: WAWebProtobufsE2E.ProtocolMessage.lidMigrationMappingSyncMessage:type_name -> WAWebProtobufsE2E.LIDMigrationMappingSyncMessage
+ 263, // 85: WAWebProtobufsE2E.ProtocolMessage.limitSharing:type_name -> WACommon.LimitSharing
+ 186, // 86: WAWebProtobufsE2E.ProtocolMessage.aiQueryFanout:type_name -> WAWebProtobufsE2E.AIQueryFanout
+ 184, // 87: WAWebProtobufsE2E.ProtocolMessage.memberLabel:type_name -> WAWebProtobufsE2E.MemberLabel
+ 38, // 88: WAWebProtobufsE2E.CloudAPIThreadControlNotification.status:type_name -> WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControl
+ 233, // 89: WAWebProtobufsE2E.CloudAPIThreadControlNotification.notificationContent:type_name -> WAWebProtobufsE2E.CloudAPIThreadControlNotification.CloudAPIThreadControlNotificationContent
+ 106, // 90: WAWebProtobufsE2E.VideoMessage.interactiveAnnotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
+ 102, // 91: WAWebProtobufsE2E.VideoMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 40, // 92: WAWebProtobufsE2E.VideoMessage.gifAttribution:type_name -> WAWebProtobufsE2E.VideoMessage.Attribution
+ 106, // 93: WAWebProtobufsE2E.VideoMessage.annotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
+ 110, // 94: WAWebProtobufsE2E.VideoMessage.processedVideos:type_name -> WAWebProtobufsE2E.ProcessedVideo
+ 39, // 95: WAWebProtobufsE2E.VideoMessage.videoSourceType:type_name -> WAWebProtobufsE2E.VideoMessage.VideoSourceType
4, // 96: WAWebProtobufsE2E.VideoMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
- 42, // 97: WAWebProtobufsE2E.ExtendedTextMessage.font:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.FontType
- 41, // 98: WAWebProtobufsE2E.ExtendedTextMessage.previewType:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.PreviewType
- 101, // 99: WAWebProtobufsE2E.ExtendedTextMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 40, // 100: WAWebProtobufsE2E.ExtendedTextMessage.inviteLinkGroupType:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.InviteLinkGroupType
- 40, // 101: WAWebProtobufsE2E.ExtendedTextMessage.inviteLinkGroupTypeV2:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.InviteLinkGroupType
- 163, // 102: WAWebProtobufsE2E.ExtendedTextMessage.faviconMMSMetadata:type_name -> WAWebProtobufsE2E.MMSThumbnailMetadata
- 96, // 103: WAWebProtobufsE2E.ExtendedTextMessage.linkPreviewMetadata:type_name -> WAWebProtobufsE2E.LinkPreviewMetadata
- 97, // 104: WAWebProtobufsE2E.ExtendedTextMessage.paymentLinkMetadata:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata
- 167, // 105: WAWebProtobufsE2E.ExtendedTextMessage.endCardTiles:type_name -> WAWebProtobufsE2E.VideoEndCard
- 170, // 106: WAWebProtobufsE2E.ExtendedTextMessage.musicMetadata:type_name -> WAWebProtobufsE2E.EmbeddedMusic
- 162, // 107: WAWebProtobufsE2E.ExtendedTextMessage.paymentExtendedMetadata:type_name -> WAWebProtobufsE2E.PaymentExtendedMetadata
- 97, // 108: WAWebProtobufsE2E.LinkPreviewMetadata.paymentLinkMetadata:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata
- 161, // 109: WAWebProtobufsE2E.LinkPreviewMetadata.urlMetadata:type_name -> WAWebProtobufsE2E.URLMetadata
- 43, // 110: WAWebProtobufsE2E.LinkPreviewMetadata.socialMediaPostType:type_name -> WAWebProtobufsE2E.LinkPreviewMetadata.SocialMediaPostType
- 170, // 111: WAWebProtobufsE2E.LinkPreviewMetadata.musicMetadata:type_name -> WAWebProtobufsE2E.EmbeddedMusic
- 235, // 112: WAWebProtobufsE2E.PaymentLinkMetadata.button:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkButton
- 233, // 113: WAWebProtobufsE2E.PaymentLinkMetadata.header:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader
- 234, // 114: WAWebProtobufsE2E.PaymentLinkMetadata.provider:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkProvider
- 260, // 115: WAWebProtobufsE2E.StatusNotificationMessage.responseMessageKey:type_name -> WACommon.MessageKey
- 260, // 116: WAWebProtobufsE2E.StatusNotificationMessage.originalMessageKey:type_name -> WACommon.MessageKey
- 45, // 117: WAWebProtobufsE2E.StatusNotificationMessage.type:type_name -> WAWebProtobufsE2E.StatusNotificationMessage.StatusNotificationType
- 46, // 118: WAWebProtobufsE2E.InvoiceMessage.attachmentType:type_name -> WAWebProtobufsE2E.InvoiceMessage.AttachmentType
- 105, // 119: WAWebProtobufsE2E.ImageMessage.interactiveAnnotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
- 101, // 120: WAWebProtobufsE2E.ImageMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 105, // 121: WAWebProtobufsE2E.ImageMessage.annotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
- 47, // 122: WAWebProtobufsE2E.ImageMessage.imageSourceType:type_name -> WAWebProtobufsE2E.ImageMessage.ImageSourceType
+ 43, // 97: WAWebProtobufsE2E.ExtendedTextMessage.font:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.FontType
+ 42, // 98: WAWebProtobufsE2E.ExtendedTextMessage.previewType:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.PreviewType
+ 102, // 99: WAWebProtobufsE2E.ExtendedTextMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 41, // 100: WAWebProtobufsE2E.ExtendedTextMessage.inviteLinkGroupType:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.InviteLinkGroupType
+ 41, // 101: WAWebProtobufsE2E.ExtendedTextMessage.inviteLinkGroupTypeV2:type_name -> WAWebProtobufsE2E.ExtendedTextMessage.InviteLinkGroupType
+ 164, // 102: WAWebProtobufsE2E.ExtendedTextMessage.faviconMMSMetadata:type_name -> WAWebProtobufsE2E.MMSThumbnailMetadata
+ 97, // 103: WAWebProtobufsE2E.ExtendedTextMessage.linkPreviewMetadata:type_name -> WAWebProtobufsE2E.LinkPreviewMetadata
+ 98, // 104: WAWebProtobufsE2E.ExtendedTextMessage.paymentLinkMetadata:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata
+ 168, // 105: WAWebProtobufsE2E.ExtendedTextMessage.endCardTiles:type_name -> WAWebProtobufsE2E.VideoEndCard
+ 171, // 106: WAWebProtobufsE2E.ExtendedTextMessage.musicMetadata:type_name -> WAWebProtobufsE2E.EmbeddedMusic
+ 163, // 107: WAWebProtobufsE2E.ExtendedTextMessage.paymentExtendedMetadata:type_name -> WAWebProtobufsE2E.PaymentExtendedMetadata
+ 98, // 108: WAWebProtobufsE2E.LinkPreviewMetadata.paymentLinkMetadata:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata
+ 162, // 109: WAWebProtobufsE2E.LinkPreviewMetadata.urlMetadata:type_name -> WAWebProtobufsE2E.URLMetadata
+ 44, // 110: WAWebProtobufsE2E.LinkPreviewMetadata.socialMediaPostType:type_name -> WAWebProtobufsE2E.LinkPreviewMetadata.SocialMediaPostType
+ 171, // 111: WAWebProtobufsE2E.LinkPreviewMetadata.musicMetadata:type_name -> WAWebProtobufsE2E.EmbeddedMusic
+ 236, // 112: WAWebProtobufsE2E.PaymentLinkMetadata.button:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkButton
+ 234, // 113: WAWebProtobufsE2E.PaymentLinkMetadata.header:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader
+ 235, // 114: WAWebProtobufsE2E.PaymentLinkMetadata.provider:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkProvider
+ 261, // 115: WAWebProtobufsE2E.StatusNotificationMessage.responseMessageKey:type_name -> WACommon.MessageKey
+ 261, // 116: WAWebProtobufsE2E.StatusNotificationMessage.originalMessageKey:type_name -> WACommon.MessageKey
+ 46, // 117: WAWebProtobufsE2E.StatusNotificationMessage.type:type_name -> WAWebProtobufsE2E.StatusNotificationMessage.StatusNotificationType
+ 47, // 118: WAWebProtobufsE2E.InvoiceMessage.attachmentType:type_name -> WAWebProtobufsE2E.InvoiceMessage.AttachmentType
+ 106, // 119: WAWebProtobufsE2E.ImageMessage.interactiveAnnotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
+ 102, // 120: WAWebProtobufsE2E.ImageMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 106, // 121: WAWebProtobufsE2E.ImageMessage.annotations:type_name -> WAWebProtobufsE2E.InteractiveAnnotation
+ 48, // 122: WAWebProtobufsE2E.ImageMessage.imageSourceType:type_name -> WAWebProtobufsE2E.ImageMessage.ImageSourceType
4, // 123: WAWebProtobufsE2E.ImageMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
- 110, // 124: WAWebProtobufsE2E.ContextInfo.quotedMessage:type_name -> WAWebProtobufsE2E.Message
- 240, // 125: WAWebProtobufsE2E.ContextInfo.quotedAd:type_name -> WAWebProtobufsE2E.ContextInfo.AdReplyInfo
- 260, // 126: WAWebProtobufsE2E.ContextInfo.placeholderKey:type_name -> WACommon.MessageKey
- 239, // 127: WAWebProtobufsE2E.ContextInfo.externalAdReply:type_name -> WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo
- 108, // 128: WAWebProtobufsE2E.ContextInfo.disappearingMode:type_name -> WAWebProtobufsE2E.DisappearingMode
- 177, // 129: WAWebProtobufsE2E.ContextInfo.actionLink:type_name -> WAWebProtobufsE2E.ActionLink
- 178, // 130: WAWebProtobufsE2E.ContextInfo.groupMentions:type_name -> WAWebProtobufsE2E.GroupMention
- 243, // 131: WAWebProtobufsE2E.ContextInfo.utm:type_name -> WAWebProtobufsE2E.ContextInfo.UTMInfo
- 238, // 132: WAWebProtobufsE2E.ContextInfo.forwardedNewsletterMessageInfo:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo
- 244, // 133: WAWebProtobufsE2E.ContextInfo.businessMessageForwardInfo:type_name -> WAWebProtobufsE2E.ContextInfo.BusinessMessageForwardInfo
- 237, // 134: WAWebProtobufsE2E.ContextInfo.dataSharingContext:type_name -> WAWebProtobufsE2E.ContextInfo.DataSharingContext
- 241, // 135: WAWebProtobufsE2E.ContextInfo.featureEligibilities:type_name -> WAWebProtobufsE2E.ContextInfo.FeatureEligibilities
- 263, // 136: WAWebProtobufsE2E.ContextInfo.forwardedAiBotMessageInfo:type_name -> WAAICommon.ForwardedAIBotMessageInfo
- 52, // 137: WAWebProtobufsE2E.ContextInfo.statusAttributionType:type_name -> WAWebProtobufsE2E.ContextInfo.StatusAttributionType
- 182, // 138: WAWebProtobufsE2E.ContextInfo.urlTrackingMap:type_name -> WAWebProtobufsE2E.UrlTrackingMap
- 51, // 139: WAWebProtobufsE2E.ContextInfo.pairedMediaType:type_name -> WAWebProtobufsE2E.ContextInfo.PairedMediaType
- 183, // 140: WAWebProtobufsE2E.ContextInfo.memberLabel:type_name -> WAWebProtobufsE2E.MemberLabel
- 50, // 141: WAWebProtobufsE2E.ContextInfo.statusSourceType:type_name -> WAWebProtobufsE2E.ContextInfo.StatusSourceType
- 264, // 142: WAWebProtobufsE2E.ContextInfo.statusAttributions:type_name -> WAStatusAttributions.StatusAttribution
- 49, // 143: WAWebProtobufsE2E.ContextInfo.forwardOrigin:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardOrigin
- 242, // 144: WAWebProtobufsE2E.ContextInfo.questionReplyQuotedMessage:type_name -> WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage
- 236, // 145: WAWebProtobufsE2E.ContextInfo.statusAudienceMetadata:type_name -> WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata
- 48, // 146: WAWebProtobufsE2E.ContextInfo.quotedType:type_name -> WAWebProtobufsE2E.ContextInfo.QuotedType
- 265, // 147: WAWebProtobufsE2E.ContextInfo.botMessageSharingInfo:type_name -> WAAICommon.BotMessageSharingInfo
- 59, // 148: WAWebProtobufsE2E.MessageAssociation.associationType:type_name -> WAWebProtobufsE2E.MessageAssociation.AssociationType
- 260, // 149: WAWebProtobufsE2E.MessageAssociation.parentMessageKey:type_name -> WACommon.MessageKey
- 60, // 150: WAWebProtobufsE2E.ThreadID.threadType:type_name -> WAWebProtobufsE2E.ThreadID.ThreadType
- 260, // 151: WAWebProtobufsE2E.ThreadID.threadKey:type_name -> WACommon.MessageKey
- 168, // 152: WAWebProtobufsE2E.MessageContextInfo.deviceListMetadata:type_name -> WAWebProtobufsE2E.DeviceListMetadata
- 266, // 153: WAWebProtobufsE2E.MessageContextInfo.botMetadata:type_name -> WAAICommon.BotMetadata
- 61, // 154: WAWebProtobufsE2E.MessageContextInfo.messageAddOnExpiryType:type_name -> WAWebProtobufsE2E.MessageContextInfo.MessageAddonExpiryType
- 102, // 155: WAWebProtobufsE2E.MessageContextInfo.messageAssociation:type_name -> WAWebProtobufsE2E.MessageAssociation
- 262, // 156: WAWebProtobufsE2E.MessageContextInfo.limitSharing:type_name -> WACommon.LimitSharing
- 262, // 157: WAWebProtobufsE2E.MessageContextInfo.limitSharingV2:type_name -> WACommon.LimitSharing
- 103, // 158: WAWebProtobufsE2E.MessageContextInfo.threadID:type_name -> WAWebProtobufsE2E.ThreadID
- 174, // 159: WAWebProtobufsE2E.InteractiveAnnotation.location:type_name -> WAWebProtobufsE2E.Location
- 238, // 160: WAWebProtobufsE2E.InteractiveAnnotation.newsletter:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo
- 172, // 161: WAWebProtobufsE2E.InteractiveAnnotation.tapAction:type_name -> WAWebProtobufsE2E.TapLinkAction
- 173, // 162: WAWebProtobufsE2E.InteractiveAnnotation.polygonVertices:type_name -> WAWebProtobufsE2E.Point
- 171, // 163: WAWebProtobufsE2E.InteractiveAnnotation.embeddedContent:type_name -> WAWebProtobufsE2E.EmbeddedContent
- 62, // 164: WAWebProtobufsE2E.InteractiveAnnotation.statusLinkType:type_name -> WAWebProtobufsE2E.InteractiveAnnotation.StatusLinkType
- 248, // 165: WAWebProtobufsE2E.HydratedTemplateButton.quickReplyButton:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedQuickReplyButton
- 246, // 166: WAWebProtobufsE2E.HydratedTemplateButton.urlButton:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton
- 247, // 167: WAWebProtobufsE2E.HydratedTemplateButton.callButton:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedCallButton
- 249, // 168: WAWebProtobufsE2E.PaymentBackground.mediaData:type_name -> WAWebProtobufsE2E.PaymentBackground.MediaData
- 64, // 169: WAWebProtobufsE2E.PaymentBackground.type:type_name -> WAWebProtobufsE2E.PaymentBackground.Type
- 66, // 170: WAWebProtobufsE2E.DisappearingMode.initiator:type_name -> WAWebProtobufsE2E.DisappearingMode.Initiator
- 65, // 171: WAWebProtobufsE2E.DisappearingMode.trigger:type_name -> WAWebProtobufsE2E.DisappearingMode.Trigger
- 67, // 172: WAWebProtobufsE2E.ProcessedVideo.quality:type_name -> WAWebProtobufsE2E.ProcessedVideo.VideoQuality
- 166, // 173: WAWebProtobufsE2E.Message.senderKeyDistributionMessage:type_name -> WAWebProtobufsE2E.SenderKeyDistributionMessage
- 100, // 174: WAWebProtobufsE2E.Message.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
- 165, // 175: WAWebProtobufsE2E.Message.contactMessage:type_name -> WAWebProtobufsE2E.ContactMessage
- 164, // 176: WAWebProtobufsE2E.Message.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
- 95, // 177: WAWebProtobufsE2E.Message.extendedTextMessage:type_name -> WAWebProtobufsE2E.ExtendedTextMessage
- 160, // 178: WAWebProtobufsE2E.Message.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
- 159, // 179: WAWebProtobufsE2E.Message.audioMessage:type_name -> WAWebProtobufsE2E.AudioMessage
- 94, // 180: WAWebProtobufsE2E.Message.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
- 158, // 181: WAWebProtobufsE2E.Message.call:type_name -> WAWebProtobufsE2E.Call
- 157, // 182: WAWebProtobufsE2E.Message.chat:type_name -> WAWebProtobufsE2E.Chat
- 92, // 183: WAWebProtobufsE2E.Message.protocolMessage:type_name -> WAWebProtobufsE2E.ProtocolMessage
- 146, // 184: WAWebProtobufsE2E.Message.contactsArrayMessage:type_name -> WAWebProtobufsE2E.ContactsArrayMessage
- 88, // 185: WAWebProtobufsE2E.Message.highlyStructuredMessage:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 166, // 186: WAWebProtobufsE2E.Message.fastRatchetKeySenderKeyDistributionMessage:type_name -> WAWebProtobufsE2E.SenderKeyDistributionMessage
- 145, // 187: WAWebProtobufsE2E.Message.sendPaymentMessage:type_name -> WAWebProtobufsE2E.SendPaymentMessage
- 141, // 188: WAWebProtobufsE2E.Message.liveLocationMessage:type_name -> WAWebProtobufsE2E.LiveLocationMessage
- 144, // 189: WAWebProtobufsE2E.Message.requestPaymentMessage:type_name -> WAWebProtobufsE2E.RequestPaymentMessage
- 143, // 190: WAWebProtobufsE2E.Message.declinePaymentRequestMessage:type_name -> WAWebProtobufsE2E.DeclinePaymentRequestMessage
- 142, // 191: WAWebProtobufsE2E.Message.cancelPaymentRequestMessage:type_name -> WAWebProtobufsE2E.CancelPaymentRequestMessage
- 139, // 192: WAWebProtobufsE2E.Message.templateMessage:type_name -> WAWebProtobufsE2E.TemplateMessage
- 140, // 193: WAWebProtobufsE2E.Message.stickerMessage:type_name -> WAWebProtobufsE2E.StickerMessage
- 80, // 194: WAWebProtobufsE2E.Message.groupInviteMessage:type_name -> WAWebProtobufsE2E.GroupInviteMessage
- 138, // 195: WAWebProtobufsE2E.Message.templateButtonReplyMessage:type_name -> WAWebProtobufsE2E.TemplateButtonReplyMessage
- 137, // 196: WAWebProtobufsE2E.Message.productMessage:type_name -> WAWebProtobufsE2E.ProductMessage
- 132, // 197: WAWebProtobufsE2E.Message.deviceSentMessage:type_name -> WAWebProtobufsE2E.DeviceSentMessage
- 104, // 198: WAWebProtobufsE2E.Message.messageContextInfo:type_name -> WAWebProtobufsE2E.MessageContextInfo
- 84, // 199: WAWebProtobufsE2E.Message.listMessage:type_name -> WAWebProtobufsE2E.ListMessage
- 131, // 200: WAWebProtobufsE2E.Message.viewOnceMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 85, // 201: WAWebProtobufsE2E.Message.orderMessage:type_name -> WAWebProtobufsE2E.OrderMessage
- 83, // 202: WAWebProtobufsE2E.Message.listResponseMessage:type_name -> WAWebProtobufsE2E.ListResponseMessage
- 131, // 203: WAWebProtobufsE2E.Message.ephemeralMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 99, // 204: WAWebProtobufsE2E.Message.invoiceMessage:type_name -> WAWebProtobufsE2E.InvoiceMessage
- 78, // 205: WAWebProtobufsE2E.Message.buttonsMessage:type_name -> WAWebProtobufsE2E.ButtonsMessage
- 77, // 206: WAWebProtobufsE2E.Message.buttonsResponseMessage:type_name -> WAWebProtobufsE2E.ButtonsResponseMessage
- 87, // 207: WAWebProtobufsE2E.Message.paymentInviteMessage:type_name -> WAWebProtobufsE2E.PaymentInviteMessage
- 82, // 208: WAWebProtobufsE2E.Message.interactiveMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage
- 130, // 209: WAWebProtobufsE2E.Message.reactionMessage:type_name -> WAWebProtobufsE2E.ReactionMessage
- 129, // 210: WAWebProtobufsE2E.Message.stickerSyncRmrMessage:type_name -> WAWebProtobufsE2E.StickerSyncRMRMessage
- 81, // 211: WAWebProtobufsE2E.Message.interactiveResponseMessage:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage
- 128, // 212: WAWebProtobufsE2E.Message.pollCreationMessage:type_name -> WAWebProtobufsE2E.PollCreationMessage
- 127, // 213: WAWebProtobufsE2E.Message.pollUpdateMessage:type_name -> WAWebProtobufsE2E.PollUpdateMessage
- 120, // 214: WAWebProtobufsE2E.Message.keepInChatMessage:type_name -> WAWebProtobufsE2E.KeepInChatMessage
- 131, // 215: WAWebProtobufsE2E.Message.documentWithCaptionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 134, // 216: WAWebProtobufsE2E.Message.requestPhoneNumberMessage:type_name -> WAWebProtobufsE2E.RequestPhoneNumberMessage
- 131, // 217: WAWebProtobufsE2E.Message.viewOnceMessageV2:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 119, // 218: WAWebProtobufsE2E.Message.encReactionMessage:type_name -> WAWebProtobufsE2E.EncReactionMessage
- 131, // 219: WAWebProtobufsE2E.Message.editedMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 220: WAWebProtobufsE2E.Message.viewOnceMessageV2Extension:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 128, // 221: WAWebProtobufsE2E.Message.pollCreationMessageV2:type_name -> WAWebProtobufsE2E.PollCreationMessage
- 73, // 222: WAWebProtobufsE2E.Message.scheduledCallCreationMessage:type_name -> WAWebProtobufsE2E.ScheduledCallCreationMessage
- 131, // 223: WAWebProtobufsE2E.Message.groupMentionedMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 75, // 224: WAWebProtobufsE2E.Message.pinInChatMessage:type_name -> WAWebProtobufsE2E.PinInChatMessage
- 128, // 225: WAWebProtobufsE2E.Message.pollCreationMessageV3:type_name -> WAWebProtobufsE2E.PollCreationMessage
- 72, // 226: WAWebProtobufsE2E.Message.scheduledCallEditMessage:type_name -> WAWebProtobufsE2E.ScheduledCallEditMessage
- 94, // 227: WAWebProtobufsE2E.Message.ptvMessage:type_name -> WAWebProtobufsE2E.VideoMessage
- 131, // 228: WAWebProtobufsE2E.Message.botInvokeMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 71, // 229: WAWebProtobufsE2E.Message.callLogMesssage:type_name -> WAWebProtobufsE2E.CallLogMessage
- 114, // 230: WAWebProtobufsE2E.Message.messageHistoryBundle:type_name -> WAWebProtobufsE2E.MessageHistoryBundle
- 118, // 231: WAWebProtobufsE2E.Message.encCommentMessage:type_name -> WAWebProtobufsE2E.EncCommentMessage
- 70, // 232: WAWebProtobufsE2E.Message.bcallMessage:type_name -> WAWebProtobufsE2E.BCallMessage
- 131, // 233: WAWebProtobufsE2E.Message.lottieStickerMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 116, // 234: WAWebProtobufsE2E.Message.eventMessage:type_name -> WAWebProtobufsE2E.EventMessage
- 115, // 235: WAWebProtobufsE2E.Message.encEventResponseMessage:type_name -> WAWebProtobufsE2E.EncEventResponseMessage
- 117, // 236: WAWebProtobufsE2E.Message.commentMessage:type_name -> WAWebProtobufsE2E.CommentMessage
- 136, // 237: WAWebProtobufsE2E.Message.newsletterAdminInviteMessage:type_name -> WAWebProtobufsE2E.NewsletterAdminInviteMessage
- 69, // 238: WAWebProtobufsE2E.Message.placeholderMessage:type_name -> WAWebProtobufsE2E.PlaceholderMessage
- 79, // 239: WAWebProtobufsE2E.Message.secretEncryptedMessage:type_name -> WAWebProtobufsE2E.SecretEncryptedMessage
- 111, // 240: WAWebProtobufsE2E.Message.albumMessage:type_name -> WAWebProtobufsE2E.AlbumMessage
- 131, // 241: WAWebProtobufsE2E.Message.eventCoverImage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 68, // 242: WAWebProtobufsE2E.Message.stickerPackMessage:type_name -> WAWebProtobufsE2E.StickerPackMessage
- 131, // 243: WAWebProtobufsE2E.Message.statusMentionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 123, // 244: WAWebProtobufsE2E.Message.pollResultSnapshotMessage:type_name -> WAWebProtobufsE2E.PollResultSnapshotMessage
- 131, // 245: WAWebProtobufsE2E.Message.pollCreationOptionImageMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 246: WAWebProtobufsE2E.Message.associatedChildMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 247: WAWebProtobufsE2E.Message.groupStatusMentionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 248: WAWebProtobufsE2E.Message.pollCreationMessageV4:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 249: WAWebProtobufsE2E.Message.statusAddYours:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 250: WAWebProtobufsE2E.Message.groupStatusMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 184, // 251: WAWebProtobufsE2E.Message.richResponseMessage:type_name -> WAWebProtobufsE2E.AIRichResponseMessage
- 98, // 252: WAWebProtobufsE2E.Message.statusNotificationMessage:type_name -> WAWebProtobufsE2E.StatusNotificationMessage
- 131, // 253: WAWebProtobufsE2E.Message.limitSharingMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 254: WAWebProtobufsE2E.Message.botTaskMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 255: WAWebProtobufsE2E.Message.questionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 113, // 256: WAWebProtobufsE2E.Message.messageHistoryNotice:type_name -> WAWebProtobufsE2E.MessageHistoryNotice
- 131, // 257: WAWebProtobufsE2E.Message.groupStatusMessageV2:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 131, // 258: WAWebProtobufsE2E.Message.botForwardedMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 122, // 259: WAWebProtobufsE2E.Message.statusQuestionAnswerMessage:type_name -> WAWebProtobufsE2E.StatusQuestionAnswerMessage
- 131, // 260: WAWebProtobufsE2E.Message.questionReplyMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
- 121, // 261: WAWebProtobufsE2E.Message.questionResponseMessage:type_name -> WAWebProtobufsE2E.QuestionResponseMessage
- 86, // 262: WAWebProtobufsE2E.Message.statusQuotedMessage:type_name -> WAWebProtobufsE2E.StatusQuotedMessage
- 76, // 263: WAWebProtobufsE2E.Message.statusStickerInteractionMessage:type_name -> WAWebProtobufsE2E.StatusStickerInteractionMessage
- 128, // 264: WAWebProtobufsE2E.Message.pollCreationMessageV5:type_name -> WAWebProtobufsE2E.PollCreationMessage
- 123, // 265: WAWebProtobufsE2E.Message.pollResultSnapshotMessageV2:type_name -> WAWebProtobufsE2E.PollResultSnapshotMessage
+ 111, // 124: WAWebProtobufsE2E.ContextInfo.quotedMessage:type_name -> WAWebProtobufsE2E.Message
+ 241, // 125: WAWebProtobufsE2E.ContextInfo.quotedAd:type_name -> WAWebProtobufsE2E.ContextInfo.AdReplyInfo
+ 261, // 126: WAWebProtobufsE2E.ContextInfo.placeholderKey:type_name -> WACommon.MessageKey
+ 240, // 127: WAWebProtobufsE2E.ContextInfo.externalAdReply:type_name -> WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo
+ 109, // 128: WAWebProtobufsE2E.ContextInfo.disappearingMode:type_name -> WAWebProtobufsE2E.DisappearingMode
+ 178, // 129: WAWebProtobufsE2E.ContextInfo.actionLink:type_name -> WAWebProtobufsE2E.ActionLink
+ 179, // 130: WAWebProtobufsE2E.ContextInfo.groupMentions:type_name -> WAWebProtobufsE2E.GroupMention
+ 244, // 131: WAWebProtobufsE2E.ContextInfo.utm:type_name -> WAWebProtobufsE2E.ContextInfo.UTMInfo
+ 239, // 132: WAWebProtobufsE2E.ContextInfo.forwardedNewsletterMessageInfo:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo
+ 245, // 133: WAWebProtobufsE2E.ContextInfo.businessMessageForwardInfo:type_name -> WAWebProtobufsE2E.ContextInfo.BusinessMessageForwardInfo
+ 238, // 134: WAWebProtobufsE2E.ContextInfo.dataSharingContext:type_name -> WAWebProtobufsE2E.ContextInfo.DataSharingContext
+ 242, // 135: WAWebProtobufsE2E.ContextInfo.featureEligibilities:type_name -> WAWebProtobufsE2E.ContextInfo.FeatureEligibilities
+ 264, // 136: WAWebProtobufsE2E.ContextInfo.forwardedAiBotMessageInfo:type_name -> WAAICommon.ForwardedAIBotMessageInfo
+ 53, // 137: WAWebProtobufsE2E.ContextInfo.statusAttributionType:type_name -> WAWebProtobufsE2E.ContextInfo.StatusAttributionType
+ 183, // 138: WAWebProtobufsE2E.ContextInfo.urlTrackingMap:type_name -> WAWebProtobufsE2E.UrlTrackingMap
+ 52, // 139: WAWebProtobufsE2E.ContextInfo.pairedMediaType:type_name -> WAWebProtobufsE2E.ContextInfo.PairedMediaType
+ 184, // 140: WAWebProtobufsE2E.ContextInfo.memberLabel:type_name -> WAWebProtobufsE2E.MemberLabel
+ 51, // 141: WAWebProtobufsE2E.ContextInfo.statusSourceType:type_name -> WAWebProtobufsE2E.ContextInfo.StatusSourceType
+ 265, // 142: WAWebProtobufsE2E.ContextInfo.statusAttributions:type_name -> WAStatusAttributions.StatusAttribution
+ 50, // 143: WAWebProtobufsE2E.ContextInfo.forwardOrigin:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardOrigin
+ 243, // 144: WAWebProtobufsE2E.ContextInfo.questionReplyQuotedMessage:type_name -> WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage
+ 237, // 145: WAWebProtobufsE2E.ContextInfo.statusAudienceMetadata:type_name -> WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata
+ 49, // 146: WAWebProtobufsE2E.ContextInfo.quotedType:type_name -> WAWebProtobufsE2E.ContextInfo.QuotedType
+ 266, // 147: WAWebProtobufsE2E.ContextInfo.botMessageSharingInfo:type_name -> WAAICommon.BotMessageSharingInfo
+ 60, // 148: WAWebProtobufsE2E.MessageAssociation.associationType:type_name -> WAWebProtobufsE2E.MessageAssociation.AssociationType
+ 261, // 149: WAWebProtobufsE2E.MessageAssociation.parentMessageKey:type_name -> WACommon.MessageKey
+ 61, // 150: WAWebProtobufsE2E.ThreadID.threadType:type_name -> WAWebProtobufsE2E.ThreadID.ThreadType
+ 261, // 151: WAWebProtobufsE2E.ThreadID.threadKey:type_name -> WACommon.MessageKey
+ 169, // 152: WAWebProtobufsE2E.MessageContextInfo.deviceListMetadata:type_name -> WAWebProtobufsE2E.DeviceListMetadata
+ 267, // 153: WAWebProtobufsE2E.MessageContextInfo.botMetadata:type_name -> WAAICommon.BotMetadata
+ 62, // 154: WAWebProtobufsE2E.MessageContextInfo.messageAddOnExpiryType:type_name -> WAWebProtobufsE2E.MessageContextInfo.MessageAddonExpiryType
+ 103, // 155: WAWebProtobufsE2E.MessageContextInfo.messageAssociation:type_name -> WAWebProtobufsE2E.MessageAssociation
+ 263, // 156: WAWebProtobufsE2E.MessageContextInfo.limitSharing:type_name -> WACommon.LimitSharing
+ 263, // 157: WAWebProtobufsE2E.MessageContextInfo.limitSharingV2:type_name -> WACommon.LimitSharing
+ 104, // 158: WAWebProtobufsE2E.MessageContextInfo.threadID:type_name -> WAWebProtobufsE2E.ThreadID
+ 5, // 159: WAWebProtobufsE2E.MessageContextInfo.weblinkRenderConfig:type_name -> WAWebProtobufsE2E.WebLinkRenderConfig
+ 175, // 160: WAWebProtobufsE2E.InteractiveAnnotation.location:type_name -> WAWebProtobufsE2E.Location
+ 239, // 161: WAWebProtobufsE2E.InteractiveAnnotation.newsletter:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo
+ 173, // 162: WAWebProtobufsE2E.InteractiveAnnotation.tapAction:type_name -> WAWebProtobufsE2E.TapLinkAction
+ 174, // 163: WAWebProtobufsE2E.InteractiveAnnotation.polygonVertices:type_name -> WAWebProtobufsE2E.Point
+ 172, // 164: WAWebProtobufsE2E.InteractiveAnnotation.embeddedContent:type_name -> WAWebProtobufsE2E.EmbeddedContent
+ 63, // 165: WAWebProtobufsE2E.InteractiveAnnotation.statusLinkType:type_name -> WAWebProtobufsE2E.InteractiveAnnotation.StatusLinkType
+ 249, // 166: WAWebProtobufsE2E.HydratedTemplateButton.quickReplyButton:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedQuickReplyButton
+ 247, // 167: WAWebProtobufsE2E.HydratedTemplateButton.urlButton:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton
+ 248, // 168: WAWebProtobufsE2E.HydratedTemplateButton.callButton:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedCallButton
+ 250, // 169: WAWebProtobufsE2E.PaymentBackground.mediaData:type_name -> WAWebProtobufsE2E.PaymentBackground.MediaData
+ 65, // 170: WAWebProtobufsE2E.PaymentBackground.type:type_name -> WAWebProtobufsE2E.PaymentBackground.Type
+ 67, // 171: WAWebProtobufsE2E.DisappearingMode.initiator:type_name -> WAWebProtobufsE2E.DisappearingMode.Initiator
+ 66, // 172: WAWebProtobufsE2E.DisappearingMode.trigger:type_name -> WAWebProtobufsE2E.DisappearingMode.Trigger
+ 68, // 173: WAWebProtobufsE2E.ProcessedVideo.quality:type_name -> WAWebProtobufsE2E.ProcessedVideo.VideoQuality
+ 167, // 174: WAWebProtobufsE2E.Message.senderKeyDistributionMessage:type_name -> WAWebProtobufsE2E.SenderKeyDistributionMessage
+ 101, // 175: WAWebProtobufsE2E.Message.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 166, // 176: WAWebProtobufsE2E.Message.contactMessage:type_name -> WAWebProtobufsE2E.ContactMessage
+ 165, // 177: WAWebProtobufsE2E.Message.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
+ 96, // 178: WAWebProtobufsE2E.Message.extendedTextMessage:type_name -> WAWebProtobufsE2E.ExtendedTextMessage
+ 161, // 179: WAWebProtobufsE2E.Message.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
+ 160, // 180: WAWebProtobufsE2E.Message.audioMessage:type_name -> WAWebProtobufsE2E.AudioMessage
+ 95, // 181: WAWebProtobufsE2E.Message.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
+ 159, // 182: WAWebProtobufsE2E.Message.call:type_name -> WAWebProtobufsE2E.Call
+ 158, // 183: WAWebProtobufsE2E.Message.chat:type_name -> WAWebProtobufsE2E.Chat
+ 93, // 184: WAWebProtobufsE2E.Message.protocolMessage:type_name -> WAWebProtobufsE2E.ProtocolMessage
+ 146, // 185: WAWebProtobufsE2E.Message.contactsArrayMessage:type_name -> WAWebProtobufsE2E.ContactsArrayMessage
+ 89, // 186: WAWebProtobufsE2E.Message.highlyStructuredMessage:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 167, // 187: WAWebProtobufsE2E.Message.fastRatchetKeySenderKeyDistributionMessage:type_name -> WAWebProtobufsE2E.SenderKeyDistributionMessage
+ 145, // 188: WAWebProtobufsE2E.Message.sendPaymentMessage:type_name -> WAWebProtobufsE2E.SendPaymentMessage
+ 141, // 189: WAWebProtobufsE2E.Message.liveLocationMessage:type_name -> WAWebProtobufsE2E.LiveLocationMessage
+ 144, // 190: WAWebProtobufsE2E.Message.requestPaymentMessage:type_name -> WAWebProtobufsE2E.RequestPaymentMessage
+ 143, // 191: WAWebProtobufsE2E.Message.declinePaymentRequestMessage:type_name -> WAWebProtobufsE2E.DeclinePaymentRequestMessage
+ 142, // 192: WAWebProtobufsE2E.Message.cancelPaymentRequestMessage:type_name -> WAWebProtobufsE2E.CancelPaymentRequestMessage
+ 139, // 193: WAWebProtobufsE2E.Message.templateMessage:type_name -> WAWebProtobufsE2E.TemplateMessage
+ 140, // 194: WAWebProtobufsE2E.Message.stickerMessage:type_name -> WAWebProtobufsE2E.StickerMessage
+ 81, // 195: WAWebProtobufsE2E.Message.groupInviteMessage:type_name -> WAWebProtobufsE2E.GroupInviteMessage
+ 138, // 196: WAWebProtobufsE2E.Message.templateButtonReplyMessage:type_name -> WAWebProtobufsE2E.TemplateButtonReplyMessage
+ 137, // 197: WAWebProtobufsE2E.Message.productMessage:type_name -> WAWebProtobufsE2E.ProductMessage
+ 133, // 198: WAWebProtobufsE2E.Message.deviceSentMessage:type_name -> WAWebProtobufsE2E.DeviceSentMessage
+ 105, // 199: WAWebProtobufsE2E.Message.messageContextInfo:type_name -> WAWebProtobufsE2E.MessageContextInfo
+ 85, // 200: WAWebProtobufsE2E.Message.listMessage:type_name -> WAWebProtobufsE2E.ListMessage
+ 132, // 201: WAWebProtobufsE2E.Message.viewOnceMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 86, // 202: WAWebProtobufsE2E.Message.orderMessage:type_name -> WAWebProtobufsE2E.OrderMessage
+ 84, // 203: WAWebProtobufsE2E.Message.listResponseMessage:type_name -> WAWebProtobufsE2E.ListResponseMessage
+ 132, // 204: WAWebProtobufsE2E.Message.ephemeralMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 100, // 205: WAWebProtobufsE2E.Message.invoiceMessage:type_name -> WAWebProtobufsE2E.InvoiceMessage
+ 79, // 206: WAWebProtobufsE2E.Message.buttonsMessage:type_name -> WAWebProtobufsE2E.ButtonsMessage
+ 78, // 207: WAWebProtobufsE2E.Message.buttonsResponseMessage:type_name -> WAWebProtobufsE2E.ButtonsResponseMessage
+ 88, // 208: WAWebProtobufsE2E.Message.paymentInviteMessage:type_name -> WAWebProtobufsE2E.PaymentInviteMessage
+ 83, // 209: WAWebProtobufsE2E.Message.interactiveMessage:type_name -> WAWebProtobufsE2E.InteractiveMessage
+ 131, // 210: WAWebProtobufsE2E.Message.reactionMessage:type_name -> WAWebProtobufsE2E.ReactionMessage
+ 130, // 211: WAWebProtobufsE2E.Message.stickerSyncRmrMessage:type_name -> WAWebProtobufsE2E.StickerSyncRMRMessage
+ 82, // 212: WAWebProtobufsE2E.Message.interactiveResponseMessage:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage
+ 129, // 213: WAWebProtobufsE2E.Message.pollCreationMessage:type_name -> WAWebProtobufsE2E.PollCreationMessage
+ 128, // 214: WAWebProtobufsE2E.Message.pollUpdateMessage:type_name -> WAWebProtobufsE2E.PollUpdateMessage
+ 121, // 215: WAWebProtobufsE2E.Message.keepInChatMessage:type_name -> WAWebProtobufsE2E.KeepInChatMessage
+ 132, // 216: WAWebProtobufsE2E.Message.documentWithCaptionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 134, // 217: WAWebProtobufsE2E.Message.requestPhoneNumberMessage:type_name -> WAWebProtobufsE2E.RequestPhoneNumberMessage
+ 132, // 218: WAWebProtobufsE2E.Message.viewOnceMessageV2:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 120, // 219: WAWebProtobufsE2E.Message.encReactionMessage:type_name -> WAWebProtobufsE2E.EncReactionMessage
+ 132, // 220: WAWebProtobufsE2E.Message.editedMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 221: WAWebProtobufsE2E.Message.viewOnceMessageV2Extension:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 129, // 222: WAWebProtobufsE2E.Message.pollCreationMessageV2:type_name -> WAWebProtobufsE2E.PollCreationMessage
+ 74, // 223: WAWebProtobufsE2E.Message.scheduledCallCreationMessage:type_name -> WAWebProtobufsE2E.ScheduledCallCreationMessage
+ 132, // 224: WAWebProtobufsE2E.Message.groupMentionedMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 76, // 225: WAWebProtobufsE2E.Message.pinInChatMessage:type_name -> WAWebProtobufsE2E.PinInChatMessage
+ 129, // 226: WAWebProtobufsE2E.Message.pollCreationMessageV3:type_name -> WAWebProtobufsE2E.PollCreationMessage
+ 73, // 227: WAWebProtobufsE2E.Message.scheduledCallEditMessage:type_name -> WAWebProtobufsE2E.ScheduledCallEditMessage
+ 95, // 228: WAWebProtobufsE2E.Message.ptvMessage:type_name -> WAWebProtobufsE2E.VideoMessage
+ 132, // 229: WAWebProtobufsE2E.Message.botInvokeMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 72, // 230: WAWebProtobufsE2E.Message.callLogMesssage:type_name -> WAWebProtobufsE2E.CallLogMessage
+ 115, // 231: WAWebProtobufsE2E.Message.messageHistoryBundle:type_name -> WAWebProtobufsE2E.MessageHistoryBundle
+ 119, // 232: WAWebProtobufsE2E.Message.encCommentMessage:type_name -> WAWebProtobufsE2E.EncCommentMessage
+ 71, // 233: WAWebProtobufsE2E.Message.bcallMessage:type_name -> WAWebProtobufsE2E.BCallMessage
+ 132, // 234: WAWebProtobufsE2E.Message.lottieStickerMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 117, // 235: WAWebProtobufsE2E.Message.eventMessage:type_name -> WAWebProtobufsE2E.EventMessage
+ 116, // 236: WAWebProtobufsE2E.Message.encEventResponseMessage:type_name -> WAWebProtobufsE2E.EncEventResponseMessage
+ 118, // 237: WAWebProtobufsE2E.Message.commentMessage:type_name -> WAWebProtobufsE2E.CommentMessage
+ 136, // 238: WAWebProtobufsE2E.Message.newsletterAdminInviteMessage:type_name -> WAWebProtobufsE2E.NewsletterAdminInviteMessage
+ 70, // 239: WAWebProtobufsE2E.Message.placeholderMessage:type_name -> WAWebProtobufsE2E.PlaceholderMessage
+ 80, // 240: WAWebProtobufsE2E.Message.secretEncryptedMessage:type_name -> WAWebProtobufsE2E.SecretEncryptedMessage
+ 112, // 241: WAWebProtobufsE2E.Message.albumMessage:type_name -> WAWebProtobufsE2E.AlbumMessage
+ 132, // 242: WAWebProtobufsE2E.Message.eventCoverImage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 69, // 243: WAWebProtobufsE2E.Message.stickerPackMessage:type_name -> WAWebProtobufsE2E.StickerPackMessage
+ 132, // 244: WAWebProtobufsE2E.Message.statusMentionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 124, // 245: WAWebProtobufsE2E.Message.pollResultSnapshotMessage:type_name -> WAWebProtobufsE2E.PollResultSnapshotMessage
+ 132, // 246: WAWebProtobufsE2E.Message.pollCreationOptionImageMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 247: WAWebProtobufsE2E.Message.associatedChildMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 248: WAWebProtobufsE2E.Message.groupStatusMentionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 249: WAWebProtobufsE2E.Message.pollCreationMessageV4:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 250: WAWebProtobufsE2E.Message.statusAddYours:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 251: WAWebProtobufsE2E.Message.groupStatusMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 185, // 252: WAWebProtobufsE2E.Message.richResponseMessage:type_name -> WAWebProtobufsE2E.AIRichResponseMessage
+ 99, // 253: WAWebProtobufsE2E.Message.statusNotificationMessage:type_name -> WAWebProtobufsE2E.StatusNotificationMessage
+ 132, // 254: WAWebProtobufsE2E.Message.limitSharingMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 255: WAWebProtobufsE2E.Message.botTaskMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 256: WAWebProtobufsE2E.Message.questionMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 114, // 257: WAWebProtobufsE2E.Message.messageHistoryNotice:type_name -> WAWebProtobufsE2E.MessageHistoryNotice
+ 132, // 258: WAWebProtobufsE2E.Message.groupStatusMessageV2:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 132, // 259: WAWebProtobufsE2E.Message.botForwardedMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 123, // 260: WAWebProtobufsE2E.Message.statusQuestionAnswerMessage:type_name -> WAWebProtobufsE2E.StatusQuestionAnswerMessage
+ 132, // 261: WAWebProtobufsE2E.Message.questionReplyMessage:type_name -> WAWebProtobufsE2E.FutureProofMessage
+ 122, // 262: WAWebProtobufsE2E.Message.questionResponseMessage:type_name -> WAWebProtobufsE2E.QuestionResponseMessage
+ 87, // 263: WAWebProtobufsE2E.Message.statusQuotedMessage:type_name -> WAWebProtobufsE2E.StatusQuotedMessage
+ 77, // 264: WAWebProtobufsE2E.Message.statusStickerInteractionMessage:type_name -> WAWebProtobufsE2E.StatusStickerInteractionMessage
+ 129, // 265: WAWebProtobufsE2E.Message.pollCreationMessageV5:type_name -> WAWebProtobufsE2E.PollCreationMessage
135, // 266: WAWebProtobufsE2E.Message.newsletterFollowerInviteMessageV2:type_name -> WAWebProtobufsE2E.NewsletterFollowerInviteMessage
- 133, // 267: WAWebProtobufsE2E.Message.requestContactInfoMessage:type_name -> WAWebProtobufsE2E.RequestContactInfoMessage
- 101, // 268: WAWebProtobufsE2E.AlbumMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 269: WAWebProtobufsE2E.MessageHistoryNotice.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 112, // 270: WAWebProtobufsE2E.MessageHistoryNotice.messageHistoryMetadata:type_name -> WAWebProtobufsE2E.MessageHistoryMetadata
- 101, // 271: WAWebProtobufsE2E.MessageHistoryBundle.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 112, // 272: WAWebProtobufsE2E.MessageHistoryBundle.messageHistoryMetadata:type_name -> WAWebProtobufsE2E.MessageHistoryMetadata
- 260, // 273: WAWebProtobufsE2E.EncEventResponseMessage.eventCreationMessageKey:type_name -> WACommon.MessageKey
- 101, // 274: WAWebProtobufsE2E.EventMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 164, // 275: WAWebProtobufsE2E.EventMessage.location:type_name -> WAWebProtobufsE2E.LocationMessage
- 110, // 276: WAWebProtobufsE2E.CommentMessage.message:type_name -> WAWebProtobufsE2E.Message
- 260, // 277: WAWebProtobufsE2E.CommentMessage.targetMessageKey:type_name -> WACommon.MessageKey
- 260, // 278: WAWebProtobufsE2E.EncCommentMessage.targetMessageKey:type_name -> WACommon.MessageKey
- 260, // 279: WAWebProtobufsE2E.EncReactionMessage.targetMessageKey:type_name -> WACommon.MessageKey
- 260, // 280: WAWebProtobufsE2E.KeepInChatMessage.key:type_name -> WACommon.MessageKey
- 5, // 281: WAWebProtobufsE2E.KeepInChatMessage.keepType:type_name -> WAWebProtobufsE2E.KeepType
- 260, // 282: WAWebProtobufsE2E.QuestionResponseMessage.key:type_name -> WACommon.MessageKey
- 260, // 283: WAWebProtobufsE2E.StatusQuestionAnswerMessage.key:type_name -> WACommon.MessageKey
- 250, // 284: WAWebProtobufsE2E.PollResultSnapshotMessage.pollVotes:type_name -> WAWebProtobufsE2E.PollResultSnapshotMessage.PollVote
- 101, // 285: WAWebProtobufsE2E.PollResultSnapshotMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 124, // 267: WAWebProtobufsE2E.Message.pollResultSnapshotMessageV3:type_name -> WAWebProtobufsE2E.PollResultSnapshotMessage
+ 102, // 268: WAWebProtobufsE2E.AlbumMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 102, // 269: WAWebProtobufsE2E.MessageHistoryNotice.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 113, // 270: WAWebProtobufsE2E.MessageHistoryNotice.messageHistoryMetadata:type_name -> WAWebProtobufsE2E.MessageHistoryMetadata
+ 102, // 271: WAWebProtobufsE2E.MessageHistoryBundle.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 113, // 272: WAWebProtobufsE2E.MessageHistoryBundle.messageHistoryMetadata:type_name -> WAWebProtobufsE2E.MessageHistoryMetadata
+ 261, // 273: WAWebProtobufsE2E.EncEventResponseMessage.eventCreationMessageKey:type_name -> WACommon.MessageKey
+ 102, // 274: WAWebProtobufsE2E.EventMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 165, // 275: WAWebProtobufsE2E.EventMessage.location:type_name -> WAWebProtobufsE2E.LocationMessage
+ 111, // 276: WAWebProtobufsE2E.CommentMessage.message:type_name -> WAWebProtobufsE2E.Message
+ 261, // 277: WAWebProtobufsE2E.CommentMessage.targetMessageKey:type_name -> WACommon.MessageKey
+ 261, // 278: WAWebProtobufsE2E.EncCommentMessage.targetMessageKey:type_name -> WACommon.MessageKey
+ 261, // 279: WAWebProtobufsE2E.EncReactionMessage.targetMessageKey:type_name -> WACommon.MessageKey
+ 261, // 280: WAWebProtobufsE2E.KeepInChatMessage.key:type_name -> WACommon.MessageKey
+ 6, // 281: WAWebProtobufsE2E.KeepInChatMessage.keepType:type_name -> WAWebProtobufsE2E.KeepType
+ 261, // 282: WAWebProtobufsE2E.QuestionResponseMessage.key:type_name -> WACommon.MessageKey
+ 261, // 283: WAWebProtobufsE2E.StatusQuestionAnswerMessage.key:type_name -> WACommon.MessageKey
+ 251, // 284: WAWebProtobufsE2E.PollResultSnapshotMessage.pollVotes:type_name -> WAWebProtobufsE2E.PollResultSnapshotMessage.PollVote
+ 102, // 285: WAWebProtobufsE2E.PollResultSnapshotMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
0, // 286: WAWebProtobufsE2E.PollResultSnapshotMessage.pollType:type_name -> WAWebProtobufsE2E.PollType
- 260, // 287: WAWebProtobufsE2E.PollUpdateMessage.pollCreationMessageKey:type_name -> WACommon.MessageKey
- 125, // 288: WAWebProtobufsE2E.PollUpdateMessage.vote:type_name -> WAWebProtobufsE2E.PollEncValue
- 126, // 289: WAWebProtobufsE2E.PollUpdateMessage.metadata:type_name -> WAWebProtobufsE2E.PollUpdateMessageMetadata
- 251, // 290: WAWebProtobufsE2E.PollCreationMessage.options:type_name -> WAWebProtobufsE2E.PollCreationMessage.Option
- 101, // 291: WAWebProtobufsE2E.PollCreationMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 261, // 287: WAWebProtobufsE2E.PollUpdateMessage.pollCreationMessageKey:type_name -> WACommon.MessageKey
+ 126, // 288: WAWebProtobufsE2E.PollUpdateMessage.vote:type_name -> WAWebProtobufsE2E.PollEncValue
+ 127, // 289: WAWebProtobufsE2E.PollUpdateMessage.metadata:type_name -> WAWebProtobufsE2E.PollUpdateMessageMetadata
+ 252, // 290: WAWebProtobufsE2E.PollCreationMessage.options:type_name -> WAWebProtobufsE2E.PollCreationMessage.Option
+ 102, // 291: WAWebProtobufsE2E.PollCreationMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
1, // 292: WAWebProtobufsE2E.PollCreationMessage.pollContentType:type_name -> WAWebProtobufsE2E.PollContentType
0, // 293: WAWebProtobufsE2E.PollCreationMessage.pollType:type_name -> WAWebProtobufsE2E.PollType
- 251, // 294: WAWebProtobufsE2E.PollCreationMessage.correctAnswer:type_name -> WAWebProtobufsE2E.PollCreationMessage.Option
- 260, // 295: WAWebProtobufsE2E.ReactionMessage.key:type_name -> WACommon.MessageKey
- 110, // 296: WAWebProtobufsE2E.FutureProofMessage.message:type_name -> WAWebProtobufsE2E.Message
- 110, // 297: WAWebProtobufsE2E.DeviceSentMessage.message:type_name -> WAWebProtobufsE2E.Message
- 101, // 298: WAWebProtobufsE2E.RequestContactInfoMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 299: WAWebProtobufsE2E.RequestPhoneNumberMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 300: WAWebProtobufsE2E.NewsletterFollowerInviteMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 301: WAWebProtobufsE2E.NewsletterAdminInviteMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 252, // 302: WAWebProtobufsE2E.ProductMessage.product:type_name -> WAWebProtobufsE2E.ProductMessage.ProductSnapshot
- 253, // 303: WAWebProtobufsE2E.ProductMessage.catalog:type_name -> WAWebProtobufsE2E.ProductMessage.CatalogSnapshot
- 101, // 304: WAWebProtobufsE2E.ProductMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 305: WAWebProtobufsE2E.TemplateButtonReplyMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 255, // 306: WAWebProtobufsE2E.TemplateMessage.fourRowTemplate:type_name -> WAWebProtobufsE2E.TemplateMessage.FourRowTemplate
- 254, // 307: WAWebProtobufsE2E.TemplateMessage.hydratedFourRowTemplate:type_name -> WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate
- 82, // 308: WAWebProtobufsE2E.TemplateMessage.interactiveMessageTemplate:type_name -> WAWebProtobufsE2E.InteractiveMessage
- 101, // 309: WAWebProtobufsE2E.TemplateMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 254, // 310: WAWebProtobufsE2E.TemplateMessage.hydratedTemplate:type_name -> WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate
- 101, // 311: WAWebProtobufsE2E.StickerMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 4, // 312: WAWebProtobufsE2E.StickerMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
- 101, // 313: WAWebProtobufsE2E.LiveLocationMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 260, // 314: WAWebProtobufsE2E.CancelPaymentRequestMessage.key:type_name -> WACommon.MessageKey
- 260, // 315: WAWebProtobufsE2E.DeclinePaymentRequestMessage.key:type_name -> WACommon.MessageKey
- 110, // 316: WAWebProtobufsE2E.RequestPaymentMessage.noteMessage:type_name -> WAWebProtobufsE2E.Message
- 176, // 317: WAWebProtobufsE2E.RequestPaymentMessage.amount:type_name -> WAWebProtobufsE2E.Money
- 107, // 318: WAWebProtobufsE2E.RequestPaymentMessage.background:type_name -> WAWebProtobufsE2E.PaymentBackground
- 110, // 319: WAWebProtobufsE2E.SendPaymentMessage.noteMessage:type_name -> WAWebProtobufsE2E.Message
- 260, // 320: WAWebProtobufsE2E.SendPaymentMessage.requestMessageKey:type_name -> WACommon.MessageKey
- 107, // 321: WAWebProtobufsE2E.SendPaymentMessage.background:type_name -> WAWebProtobufsE2E.PaymentBackground
- 165, // 322: WAWebProtobufsE2E.ContactsArrayMessage.contacts:type_name -> WAWebProtobufsE2E.ContactMessage
- 101, // 323: WAWebProtobufsE2E.ContactsArrayMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 154, // 324: WAWebProtobufsE2E.AppStateSyncKeyRequest.keyIDs:type_name -> WAWebProtobufsE2E.AppStateSyncKeyId
- 155, // 325: WAWebProtobufsE2E.AppStateSyncKeyShare.keys:type_name -> WAWebProtobufsE2E.AppStateSyncKey
- 153, // 326: WAWebProtobufsE2E.AppStateSyncKeyData.fingerprint:type_name -> WAWebProtobufsE2E.AppStateSyncKeyFingerprint
- 154, // 327: WAWebProtobufsE2E.AppStateSyncKey.keyID:type_name -> WAWebProtobufsE2E.AppStateSyncKeyId
- 152, // 328: WAWebProtobufsE2E.AppStateSyncKey.keyData:type_name -> WAWebProtobufsE2E.AppStateSyncKeyData
- 3, // 329: WAWebProtobufsE2E.HistorySyncNotification.syncType:type_name -> WAWebProtobufsE2E.HistorySyncType
- 148, // 330: WAWebProtobufsE2E.HistorySyncNotification.fullHistorySyncOnDemandRequestMetadata:type_name -> WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadata
- 101, // 331: WAWebProtobufsE2E.Call.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 332: WAWebProtobufsE2E.AudioMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 4, // 333: WAWebProtobufsE2E.AudioMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
- 101, // 334: WAWebProtobufsE2E.DocumentMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 4, // 335: WAWebProtobufsE2E.DocumentMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
- 4, // 336: WAWebProtobufsE2E.MMSThumbnailMetadata.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
- 101, // 337: WAWebProtobufsE2E.LocationMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 101, // 338: WAWebProtobufsE2E.ContactMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 267, // 339: WAWebProtobufsE2E.DeviceListMetadata.senderAccountType:type_name -> WAAdv.ADVEncryptionType
- 267, // 340: WAWebProtobufsE2E.DeviceListMetadata.receiverAccountType:type_name -> WAAdv.ADVEncryptionType
- 110, // 341: WAWebProtobufsE2E.EmbeddedMessage.message:type_name -> WAWebProtobufsE2E.Message
- 169, // 342: WAWebProtobufsE2E.EmbeddedContent.embeddedMessage:type_name -> WAWebProtobufsE2E.EmbeddedMessage
- 170, // 343: WAWebProtobufsE2E.EmbeddedContent.embeddedMusic:type_name -> WAWebProtobufsE2E.EmbeddedMusic
- 258, // 344: WAWebProtobufsE2E.TemplateButton.quickReplyButton:type_name -> WAWebProtobufsE2E.TemplateButton.QuickReplyButton
- 257, // 345: WAWebProtobufsE2E.TemplateButton.urlButton:type_name -> WAWebProtobufsE2E.TemplateButton.URLButton
- 256, // 346: WAWebProtobufsE2E.TemplateButton.callButton:type_name -> WAWebProtobufsE2E.TemplateButton.CallButton
- 259, // 347: WAWebProtobufsE2E.UrlTrackingMap.urlTrackingMapElements:type_name -> WAWebProtobufsE2E.UrlTrackingMap.UrlTrackingMapElement
- 268, // 348: WAWebProtobufsE2E.AIRichResponseMessage.messageType:type_name -> WAAICommon.AIRichResponseMessageType
- 269, // 349: WAWebProtobufsE2E.AIRichResponseMessage.submessages:type_name -> WAAICommon.AIRichResponseSubMessage
- 270, // 350: WAWebProtobufsE2E.AIRichResponseMessage.unifiedResponse:type_name -> WAAICommon.AIRichResponseUnifiedResponse
- 101, // 351: WAWebProtobufsE2E.AIRichResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
- 260, // 352: WAWebProtobufsE2E.AIQueryFanout.messageKey:type_name -> WACommon.MessageKey
- 110, // 353: WAWebProtobufsE2E.AIQueryFanout.message:type_name -> WAWebProtobufsE2E.Message
- 9, // 354: WAWebProtobufsE2E.CallLogMessage.CallParticipant.callOutcome:type_name -> WAWebProtobufsE2E.CallLogMessage.CallOutcome
- 190, // 355: WAWebProtobufsE2E.ButtonsMessage.Button.buttonText:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button.ButtonText
- 18, // 356: WAWebProtobufsE2E.ButtonsMessage.Button.type:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button.Type
- 189, // 357: WAWebProtobufsE2E.ButtonsMessage.Button.nativeFlowInfo:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button.NativeFlowInfo
- 21, // 358: WAWebProtobufsE2E.InteractiveResponseMessage.Body.format:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage.Body.Format
- 82, // 359: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.cards:type_name -> WAWebProtobufsE2E.InteractiveMessage
- 22, // 360: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.carouselCardType:type_name -> WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.CarouselCardType
- 23, // 361: WAWebProtobufsE2E.InteractiveMessage.ShopMessage.surface:type_name -> WAWebProtobufsE2E.InteractiveMessage.ShopMessage.Surface
- 200, // 362: WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage.buttons:type_name -> WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage.NativeFlowButton
- 159, // 363: WAWebProtobufsE2E.InteractiveMessage.Footer.audioMessage:type_name -> WAWebProtobufsE2E.AudioMessage
- 160, // 364: WAWebProtobufsE2E.InteractiveMessage.Header.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
- 100, // 365: WAWebProtobufsE2E.InteractiveMessage.Header.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
- 94, // 366: WAWebProtobufsE2E.InteractiveMessage.Header.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
- 164, // 367: WAWebProtobufsE2E.InteractiveMessage.Header.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
- 137, // 368: WAWebProtobufsE2E.InteractiveMessage.Header.productMessage:type_name -> WAWebProtobufsE2E.ProductMessage
- 204, // 369: WAWebProtobufsE2E.ListMessage.ProductListInfo.productSections:type_name -> WAWebProtobufsE2E.ListMessage.ProductSection
- 203, // 370: WAWebProtobufsE2E.ListMessage.ProductListInfo.headerImage:type_name -> WAWebProtobufsE2E.ListMessage.ProductListHeaderImage
- 205, // 371: WAWebProtobufsE2E.ListMessage.ProductSection.products:type_name -> WAWebProtobufsE2E.ListMessage.Product
- 207, // 372: WAWebProtobufsE2E.ListMessage.Section.rows:type_name -> WAWebProtobufsE2E.ListMessage.Row
- 210, // 373: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.currency:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMCurrency
- 209, // 374: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.dateTime:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime
- 211, // 375: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.component:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent
- 212, // 376: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.unixEpoch:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeUnixEpoch
- 31, // 377: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.dayOfWeek:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType
- 30, // 378: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.calendar:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType
- 271, // 379: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.mediaUploadResult:type_name -> WAMmsRetry.MediaRetryNotification.ResultType
- 140, // 380: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.stickerMessage:type_name -> WAWebProtobufsE2E.StickerMessage
- 221, // 381: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.linkPreviewResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse
- 220, // 382: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.placeholderMessageResendResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.PlaceholderMessageResendResponse
- 218, // 383: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.waffleNonceFetchRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.WaffleNonceFetchResponse
- 219, // 384: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.fullHistorySyncOnDemandRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse
- 217, // 385: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.companionMetaNonceFetchRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionMetaNonceFetchResponse
- 215, // 386: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.syncdSnapshotFatalRecoveryResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.SyncDSnapshotFatalRecoveryResponse
- 216, // 387: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.companionCanonicalUserNonceFetchRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionCanonicalUserNonceFetchResponse
- 214, // 388: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.historySyncChunkRetryResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse
- 3, // 389: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse.syncType:type_name -> WAWebProtobufsE2E.HistorySyncType
- 32, // 390: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse.responseCode:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponseCode
- 148, // 391: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse.requestMetadata:type_name -> WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadata
- 33, // 392: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse.responseCode:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandResponseCode
- 223, // 393: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.hqThumbnail:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.LinkPreviewHighQualityThumbnail
- 222, // 394: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.previewMetadata:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.PaymentLinkPreviewMetadata
- 34, // 395: WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction.type:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction.GalaxyFlowActionType
- 3, // 396: WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncChunkRetryRequest.syncType:type_name -> WAWebProtobufsE2E.HistorySyncType
- 260, // 397: WAWebProtobufsE2E.PeerDataOperationRequestMessage.PlaceholderMessageResendRequest.messageKey:type_name -> WACommon.MessageKey
- 148, // 398: WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest.requestMetadata:type_name -> WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadata
- 272, // 399: WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest.historySyncConfig:type_name -> WACompanionReg.DeviceProps.HistorySyncConfig
- 44, // 400: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader.headerType:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader.PaymentLinkHeaderType
- 53, // 401: WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata.audienceType:type_name -> WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata.AudienceType
- 245, // 402: WAWebProtobufsE2E.ContextInfo.DataSharingContext.parameters:type_name -> WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters
- 55, // 403: WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo.contentType:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo.ContentType
- 57, // 404: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.mediaType:type_name -> WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.MediaType
- 56, // 405: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.adType:type_name -> WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.AdType
- 58, // 406: WAWebProtobufsE2E.ContextInfo.AdReplyInfo.mediaType:type_name -> WAWebProtobufsE2E.ContextInfo.AdReplyInfo.MediaType
- 110, // 407: WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage.quotedQuestion:type_name -> WAWebProtobufsE2E.Message
- 110, // 408: WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage.quotedResponse:type_name -> WAWebProtobufsE2E.Message
- 245, // 409: WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters.contents:type_name -> WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters
- 63, // 410: WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton.webviewPresentation:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton.WebviewPresentationType
- 100, // 411: WAWebProtobufsE2E.ProductMessage.ProductSnapshot.productImage:type_name -> WAWebProtobufsE2E.ImageMessage
- 100, // 412: WAWebProtobufsE2E.ProductMessage.CatalogSnapshot.catalogImage:type_name -> WAWebProtobufsE2E.ImageMessage
- 160, // 413: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
- 100, // 414: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
- 94, // 415: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
- 164, // 416: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
- 106, // 417: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.hydratedButtons:type_name -> WAWebProtobufsE2E.HydratedTemplateButton
- 160, // 418: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
- 88, // 419: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.highlyStructuredMessage:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 100, // 420: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
- 94, // 421: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
- 164, // 422: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
- 88, // 423: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.content:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 88, // 424: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.footer:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 175, // 425: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.buttons:type_name -> WAWebProtobufsE2E.TemplateButton
- 88, // 426: WAWebProtobufsE2E.TemplateButton.CallButton.displayText:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 88, // 427: WAWebProtobufsE2E.TemplateButton.CallButton.phoneNumber:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 88, // 428: WAWebProtobufsE2E.TemplateButton.URLButton.displayText:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 88, // 429: WAWebProtobufsE2E.TemplateButton.URLButton.URL:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 88, // 430: WAWebProtobufsE2E.TemplateButton.QuickReplyButton.displayText:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
- 431, // [431:431] is the sub-list for method output_type
- 431, // [431:431] is the sub-list for method input_type
- 431, // [431:431] is the sub-list for extension type_name
- 431, // [431:431] is the sub-list for extension extendee
- 0, // [0:431] is the sub-list for field type_name
+ 252, // 294: WAWebProtobufsE2E.PollCreationMessage.correctAnswer:type_name -> WAWebProtobufsE2E.PollCreationMessage.Option
+ 261, // 295: WAWebProtobufsE2E.ReactionMessage.key:type_name -> WACommon.MessageKey
+ 111, // 296: WAWebProtobufsE2E.FutureProofMessage.message:type_name -> WAWebProtobufsE2E.Message
+ 111, // 297: WAWebProtobufsE2E.DeviceSentMessage.message:type_name -> WAWebProtobufsE2E.Message
+ 102, // 298: WAWebProtobufsE2E.RequestPhoneNumberMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 102, // 299: WAWebProtobufsE2E.NewsletterFollowerInviteMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 102, // 300: WAWebProtobufsE2E.NewsletterAdminInviteMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 253, // 301: WAWebProtobufsE2E.ProductMessage.product:type_name -> WAWebProtobufsE2E.ProductMessage.ProductSnapshot
+ 254, // 302: WAWebProtobufsE2E.ProductMessage.catalog:type_name -> WAWebProtobufsE2E.ProductMessage.CatalogSnapshot
+ 102, // 303: WAWebProtobufsE2E.ProductMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 102, // 304: WAWebProtobufsE2E.TemplateButtonReplyMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 256, // 305: WAWebProtobufsE2E.TemplateMessage.fourRowTemplate:type_name -> WAWebProtobufsE2E.TemplateMessage.FourRowTemplate
+ 255, // 306: WAWebProtobufsE2E.TemplateMessage.hydratedFourRowTemplate:type_name -> WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate
+ 83, // 307: WAWebProtobufsE2E.TemplateMessage.interactiveMessageTemplate:type_name -> WAWebProtobufsE2E.InteractiveMessage
+ 102, // 308: WAWebProtobufsE2E.TemplateMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 255, // 309: WAWebProtobufsE2E.TemplateMessage.hydratedTemplate:type_name -> WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate
+ 102, // 310: WAWebProtobufsE2E.StickerMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 4, // 311: WAWebProtobufsE2E.StickerMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
+ 102, // 312: WAWebProtobufsE2E.LiveLocationMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 261, // 313: WAWebProtobufsE2E.CancelPaymentRequestMessage.key:type_name -> WACommon.MessageKey
+ 261, // 314: WAWebProtobufsE2E.DeclinePaymentRequestMessage.key:type_name -> WACommon.MessageKey
+ 111, // 315: WAWebProtobufsE2E.RequestPaymentMessage.noteMessage:type_name -> WAWebProtobufsE2E.Message
+ 177, // 316: WAWebProtobufsE2E.RequestPaymentMessage.amount:type_name -> WAWebProtobufsE2E.Money
+ 108, // 317: WAWebProtobufsE2E.RequestPaymentMessage.background:type_name -> WAWebProtobufsE2E.PaymentBackground
+ 111, // 318: WAWebProtobufsE2E.SendPaymentMessage.noteMessage:type_name -> WAWebProtobufsE2E.Message
+ 261, // 319: WAWebProtobufsE2E.SendPaymentMessage.requestMessageKey:type_name -> WACommon.MessageKey
+ 108, // 320: WAWebProtobufsE2E.SendPaymentMessage.background:type_name -> WAWebProtobufsE2E.PaymentBackground
+ 166, // 321: WAWebProtobufsE2E.ContactsArrayMessage.contacts:type_name -> WAWebProtobufsE2E.ContactMessage
+ 102, // 322: WAWebProtobufsE2E.ContactsArrayMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 154, // 323: WAWebProtobufsE2E.AppStateSyncKeyRequest.keyIDs:type_name -> WAWebProtobufsE2E.AppStateSyncKeyId
+ 155, // 324: WAWebProtobufsE2E.AppStateSyncKeyShare.keys:type_name -> WAWebProtobufsE2E.AppStateSyncKey
+ 153, // 325: WAWebProtobufsE2E.AppStateSyncKeyData.fingerprint:type_name -> WAWebProtobufsE2E.AppStateSyncKeyFingerprint
+ 154, // 326: WAWebProtobufsE2E.AppStateSyncKey.keyID:type_name -> WAWebProtobufsE2E.AppStateSyncKeyId
+ 152, // 327: WAWebProtobufsE2E.AppStateSyncKey.keyData:type_name -> WAWebProtobufsE2E.AppStateSyncKeyData
+ 3, // 328: WAWebProtobufsE2E.HistorySyncNotification.syncType:type_name -> WAWebProtobufsE2E.HistorySyncType
+ 148, // 329: WAWebProtobufsE2E.HistorySyncNotification.fullHistorySyncOnDemandRequestMetadata:type_name -> WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadata
+ 157, // 330: WAWebProtobufsE2E.HistorySyncNotification.messageAccessStatus:type_name -> WAWebProtobufsE2E.HistorySyncMessageAccessStatus
+ 102, // 331: WAWebProtobufsE2E.Call.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 105, // 332: WAWebProtobufsE2E.Call.messageContextInfo:type_name -> WAWebProtobufsE2E.MessageContextInfo
+ 102, // 333: WAWebProtobufsE2E.AudioMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 4, // 334: WAWebProtobufsE2E.AudioMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
+ 102, // 335: WAWebProtobufsE2E.DocumentMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 4, // 336: WAWebProtobufsE2E.DocumentMessage.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
+ 4, // 337: WAWebProtobufsE2E.MMSThumbnailMetadata.mediaKeyDomain:type_name -> WAWebProtobufsE2E.MediaKeyDomain
+ 102, // 338: WAWebProtobufsE2E.LocationMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 102, // 339: WAWebProtobufsE2E.ContactMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 268, // 340: WAWebProtobufsE2E.DeviceListMetadata.senderAccountType:type_name -> WAAdv.ADVEncryptionType
+ 268, // 341: WAWebProtobufsE2E.DeviceListMetadata.receiverAccountType:type_name -> WAAdv.ADVEncryptionType
+ 111, // 342: WAWebProtobufsE2E.EmbeddedMessage.message:type_name -> WAWebProtobufsE2E.Message
+ 170, // 343: WAWebProtobufsE2E.EmbeddedContent.embeddedMessage:type_name -> WAWebProtobufsE2E.EmbeddedMessage
+ 171, // 344: WAWebProtobufsE2E.EmbeddedContent.embeddedMusic:type_name -> WAWebProtobufsE2E.EmbeddedMusic
+ 259, // 345: WAWebProtobufsE2E.TemplateButton.quickReplyButton:type_name -> WAWebProtobufsE2E.TemplateButton.QuickReplyButton
+ 258, // 346: WAWebProtobufsE2E.TemplateButton.urlButton:type_name -> WAWebProtobufsE2E.TemplateButton.URLButton
+ 257, // 347: WAWebProtobufsE2E.TemplateButton.callButton:type_name -> WAWebProtobufsE2E.TemplateButton.CallButton
+ 260, // 348: WAWebProtobufsE2E.UrlTrackingMap.urlTrackingMapElements:type_name -> WAWebProtobufsE2E.UrlTrackingMap.UrlTrackingMapElement
+ 269, // 349: WAWebProtobufsE2E.AIRichResponseMessage.messageType:type_name -> WAAICommon.AIRichResponseMessageType
+ 270, // 350: WAWebProtobufsE2E.AIRichResponseMessage.submessages:type_name -> WAAICommon.AIRichResponseSubMessage
+ 271, // 351: WAWebProtobufsE2E.AIRichResponseMessage.unifiedResponse:type_name -> WAAICommon.AIRichResponseUnifiedResponse
+ 102, // 352: WAWebProtobufsE2E.AIRichResponseMessage.contextInfo:type_name -> WAWebProtobufsE2E.ContextInfo
+ 261, // 353: WAWebProtobufsE2E.AIQueryFanout.messageKey:type_name -> WACommon.MessageKey
+ 111, // 354: WAWebProtobufsE2E.AIQueryFanout.message:type_name -> WAWebProtobufsE2E.Message
+ 10, // 355: WAWebProtobufsE2E.CallLogMessage.CallParticipant.callOutcome:type_name -> WAWebProtobufsE2E.CallLogMessage.CallOutcome
+ 191, // 356: WAWebProtobufsE2E.ButtonsMessage.Button.buttonText:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button.ButtonText
+ 19, // 357: WAWebProtobufsE2E.ButtonsMessage.Button.type:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button.Type
+ 190, // 358: WAWebProtobufsE2E.ButtonsMessage.Button.nativeFlowInfo:type_name -> WAWebProtobufsE2E.ButtonsMessage.Button.NativeFlowInfo
+ 22, // 359: WAWebProtobufsE2E.InteractiveResponseMessage.Body.format:type_name -> WAWebProtobufsE2E.InteractiveResponseMessage.Body.Format
+ 83, // 360: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.cards:type_name -> WAWebProtobufsE2E.InteractiveMessage
+ 23, // 361: WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.carouselCardType:type_name -> WAWebProtobufsE2E.InteractiveMessage.CarouselMessage.CarouselCardType
+ 24, // 362: WAWebProtobufsE2E.InteractiveMessage.ShopMessage.surface:type_name -> WAWebProtobufsE2E.InteractiveMessage.ShopMessage.Surface
+ 201, // 363: WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage.buttons:type_name -> WAWebProtobufsE2E.InteractiveMessage.NativeFlowMessage.NativeFlowButton
+ 160, // 364: WAWebProtobufsE2E.InteractiveMessage.Footer.audioMessage:type_name -> WAWebProtobufsE2E.AudioMessage
+ 161, // 365: WAWebProtobufsE2E.InteractiveMessage.Header.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
+ 101, // 366: WAWebProtobufsE2E.InteractiveMessage.Header.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 95, // 367: WAWebProtobufsE2E.InteractiveMessage.Header.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
+ 165, // 368: WAWebProtobufsE2E.InteractiveMessage.Header.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
+ 137, // 369: WAWebProtobufsE2E.InteractiveMessage.Header.productMessage:type_name -> WAWebProtobufsE2E.ProductMessage
+ 205, // 370: WAWebProtobufsE2E.ListMessage.ProductListInfo.productSections:type_name -> WAWebProtobufsE2E.ListMessage.ProductSection
+ 204, // 371: WAWebProtobufsE2E.ListMessage.ProductListInfo.headerImage:type_name -> WAWebProtobufsE2E.ListMessage.ProductListHeaderImage
+ 206, // 372: WAWebProtobufsE2E.ListMessage.ProductSection.products:type_name -> WAWebProtobufsE2E.ListMessage.Product
+ 208, // 373: WAWebProtobufsE2E.ListMessage.Section.rows:type_name -> WAWebProtobufsE2E.ListMessage.Row
+ 211, // 374: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.currency:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMCurrency
+ 210, // 375: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.dateTime:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime
+ 212, // 376: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.component:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent
+ 213, // 377: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.unixEpoch:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeUnixEpoch
+ 32, // 378: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.dayOfWeek:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType
+ 31, // 379: WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.calendar:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType
+ 272, // 380: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.mediaUploadResult:type_name -> WAMmsRetry.MediaRetryNotification.ResultType
+ 140, // 381: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.stickerMessage:type_name -> WAWebProtobufsE2E.StickerMessage
+ 222, // 382: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.linkPreviewResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse
+ 221, // 383: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.placeholderMessageResendResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.PlaceholderMessageResendResponse
+ 219, // 384: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.waffleNonceFetchRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.WaffleNonceFetchResponse
+ 220, // 385: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.fullHistorySyncOnDemandRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse
+ 218, // 386: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.companionMetaNonceFetchRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionMetaNonceFetchResponse
+ 216, // 387: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.syncdSnapshotFatalRecoveryResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.SyncDSnapshotFatalRecoveryResponse
+ 217, // 388: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.companionCanonicalUserNonceFetchRequestResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.CompanionCanonicalUserNonceFetchResponse
+ 215, // 389: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.historySyncChunkRetryResponse:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse
+ 3, // 390: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse.syncType:type_name -> WAWebProtobufsE2E.HistorySyncType
+ 33, // 391: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponse.responseCode:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.HistorySyncChunkRetryResponseCode
+ 148, // 392: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse.requestMetadata:type_name -> WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadata
+ 34, // 393: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandRequestResponse.responseCode:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.FullHistorySyncOnDemandResponseCode
+ 224, // 394: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.hqThumbnail:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.LinkPreviewHighQualityThumbnail
+ 223, // 395: WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.previewMetadata:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.PaymentLinkPreviewMetadata
+ 35, // 396: WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction.type:type_name -> WAWebProtobufsE2E.PeerDataOperationRequestMessage.GalaxyFlowAction.GalaxyFlowActionType
+ 3, // 397: WAWebProtobufsE2E.PeerDataOperationRequestMessage.HistorySyncChunkRetryRequest.syncType:type_name -> WAWebProtobufsE2E.HistorySyncType
+ 261, // 398: WAWebProtobufsE2E.PeerDataOperationRequestMessage.PlaceholderMessageResendRequest.messageKey:type_name -> WACommon.MessageKey
+ 148, // 399: WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest.requestMetadata:type_name -> WAWebProtobufsE2E.FullHistorySyncOnDemandRequestMetadata
+ 273, // 400: WAWebProtobufsE2E.PeerDataOperationRequestMessage.FullHistorySyncOnDemandRequest.historySyncConfig:type_name -> WACompanionReg.DeviceProps.HistorySyncConfig
+ 45, // 401: WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader.headerType:type_name -> WAWebProtobufsE2E.PaymentLinkMetadata.PaymentLinkHeader.PaymentLinkHeaderType
+ 54, // 402: WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata.audienceType:type_name -> WAWebProtobufsE2E.ContextInfo.StatusAudienceMetadata.AudienceType
+ 246, // 403: WAWebProtobufsE2E.ContextInfo.DataSharingContext.parameters:type_name -> WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters
+ 56, // 404: WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo.contentType:type_name -> WAWebProtobufsE2E.ContextInfo.ForwardedNewsletterMessageInfo.ContentType
+ 58, // 405: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.mediaType:type_name -> WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.MediaType
+ 57, // 406: WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.adType:type_name -> WAWebProtobufsE2E.ContextInfo.ExternalAdReplyInfo.AdType
+ 59, // 407: WAWebProtobufsE2E.ContextInfo.AdReplyInfo.mediaType:type_name -> WAWebProtobufsE2E.ContextInfo.AdReplyInfo.MediaType
+ 111, // 408: WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage.quotedQuestion:type_name -> WAWebProtobufsE2E.Message
+ 111, // 409: WAWebProtobufsE2E.ContextInfo.QuestionReplyQuotedMessage.quotedResponse:type_name -> WAWebProtobufsE2E.Message
+ 246, // 410: WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters.contents:type_name -> WAWebProtobufsE2E.ContextInfo.DataSharingContext.Parameters
+ 64, // 411: WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton.webviewPresentation:type_name -> WAWebProtobufsE2E.HydratedTemplateButton.HydratedURLButton.WebviewPresentationType
+ 101, // 412: WAWebProtobufsE2E.ProductMessage.ProductSnapshot.productImage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 101, // 413: WAWebProtobufsE2E.ProductMessage.CatalogSnapshot.catalogImage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 161, // 414: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
+ 101, // 415: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 95, // 416: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
+ 165, // 417: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
+ 107, // 418: WAWebProtobufsE2E.TemplateMessage.HydratedFourRowTemplate.hydratedButtons:type_name -> WAWebProtobufsE2E.HydratedTemplateButton
+ 161, // 419: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.documentMessage:type_name -> WAWebProtobufsE2E.DocumentMessage
+ 89, // 420: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.highlyStructuredMessage:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 101, // 421: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.imageMessage:type_name -> WAWebProtobufsE2E.ImageMessage
+ 95, // 422: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.videoMessage:type_name -> WAWebProtobufsE2E.VideoMessage
+ 165, // 423: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.locationMessage:type_name -> WAWebProtobufsE2E.LocationMessage
+ 89, // 424: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.content:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 89, // 425: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.footer:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 176, // 426: WAWebProtobufsE2E.TemplateMessage.FourRowTemplate.buttons:type_name -> WAWebProtobufsE2E.TemplateButton
+ 89, // 427: WAWebProtobufsE2E.TemplateButton.CallButton.displayText:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 89, // 428: WAWebProtobufsE2E.TemplateButton.CallButton.phoneNumber:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 89, // 429: WAWebProtobufsE2E.TemplateButton.URLButton.displayText:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 89, // 430: WAWebProtobufsE2E.TemplateButton.URLButton.URL:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 89, // 431: WAWebProtobufsE2E.TemplateButton.QuickReplyButton.displayText:type_name -> WAWebProtobufsE2E.HighlyStructuredMessage
+ 432, // [432:432] is the sub-list for method output_type
+ 432, // [432:432] is the sub-list for method input_type
+ 432, // [432:432] is the sub-list for extension type_name
+ 432, // [432:432] is the sub-list for extension extendee
+ 0, // [0:432] is the sub-list for field type_name
}
func init() { file_waE2E_WAWebProtobufsE2E_proto_init() }
@@ -23161,7 +23246,7 @@ func file_waE2E_WAWebProtobufsE2E_proto_init() {
(*HydratedTemplateButton_UrlButton)(nil),
(*HydratedTemplateButton_CallButton)(nil),
}
- file_waE2E_WAWebProtobufsE2E_proto_msgTypes[71].OneofWrappers = []any{
+ file_waE2E_WAWebProtobufsE2E_proto_msgTypes[70].OneofWrappers = []any{
(*TemplateMessage_FourRowTemplate_)(nil),
(*TemplateMessage_HydratedFourRowTemplate_)(nil),
(*TemplateMessage_InteractiveMessageTemplate)(nil),
@@ -23213,7 +23298,7 @@ func file_waE2E_WAWebProtobufsE2E_proto_init() {
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_waE2E_WAWebProtobufsE2E_proto_rawDesc), len(file_waE2E_WAWebProtobufsE2E_proto_rawDesc)),
- NumEnums: 68,
+ NumEnums: 69,
NumMessages: 192,
NumExtensions: 0,
NumServices: 0,
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto b/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto
index 712d0bb6..8fc4a820 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto
@@ -44,6 +44,7 @@ enum HistorySyncType {
NON_BLOCKING_DATA = 5;
ON_DEMAND = 6;
NO_HISTORY = 7;
+ MESSAGE_ACCESS_STATUS = 8;
}
enum MediaKeyDomain {
@@ -54,6 +55,11 @@ enum MediaKeyDomain {
BOT = 4;
}
+enum WebLinkRenderConfig {
+ WEBVIEW = 0;
+ SYSTEM = 1;
+}
+
enum KeepType {
UNKNOWN_KEEP_TYPE = 0;
KEEP_FOR_ALL = 1;
@@ -1342,6 +1348,7 @@ message MessageContextInfo {
optional WACommon.LimitSharing limitSharing = 13;
optional WACommon.LimitSharing limitSharingV2 = 14;
repeated ThreadID threadID = 15;
+ optional WebLinkRenderConfig weblinkRenderConfig = 16;
}
message InteractiveAnnotation {
@@ -1558,9 +1565,8 @@ message Message {
optional StatusQuotedMessage statusQuotedMessage = 109;
optional StatusStickerInteractionMessage statusStickerInteractionMessage = 110;
optional PollCreationMessage pollCreationMessageV5 = 111;
- optional PollResultSnapshotMessage pollResultSnapshotMessageV2 = 112;
optional NewsletterFollowerInviteMessage newsletterFollowerInviteMessageV2 = 113;
- optional RequestContactInfoMessage requestContactInfoMessage = 114;
+ optional PollResultSnapshotMessage pollResultSnapshotMessageV3 = 115;
}
message AlbumMessage {
@@ -1608,6 +1614,8 @@ message EventMessage {
optional int64 endTime = 8;
optional bool extraGuestsAllowed = 9;
optional bool isScheduleCall = 10;
+ optional bool hasReminder = 11;
+ optional int64 reminderOffsetSec = 12;
}
message CommentMessage {
@@ -1713,12 +1721,6 @@ message DeviceSentMessage {
optional string phash = 3;
}
-message RequestContactInfoMessage {
- optional string text = 1;
- optional string ctaButtonText = 2;
- optional ContextInfo contextInfo = 3;
-}
-
message RequestPhoneNumberMessage {
optional ContextInfo contextInfo = 1;
}
@@ -1945,6 +1947,11 @@ message HistorySyncNotification {
optional string peerDataRequestSessionID = 12;
optional FullHistorySyncOnDemandRequestMetadata fullHistorySyncOnDemandRequestMetadata = 13;
optional string encHandle = 14;
+ optional HistorySyncMessageAccessStatus messageAccessStatus = 15;
+}
+
+message HistorySyncMessageAccessStatus {
+ optional bool completeAccessGranted = 1;
}
message Chat {
@@ -1962,6 +1969,7 @@ message Call {
optional ContextInfo contextInfo = 7;
optional string nativeFlowCallButtonPayload = 8;
optional string deeplinkPayload = 9;
+ optional MessageContextInfo messageContextInfo = 10;
}
message AudioMessage {
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waE2E/legacy.go b/vendor/go.mau.fi/whatsmeow/proto/waE2E/legacy.go
deleted file mode 100644
index c5af65f1..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waE2E/legacy.go
+++ /dev/null
@@ -1,31 +0,0 @@
-package waE2E
-
-// Deprecated: Use GetKeyID
-func (x *AppStateSyncKey) GetKeyId() *AppStateSyncKeyId {
- return x.GetKeyID()
-}
-
-// Deprecated: Use GetKeyID
-func (x *AppStateSyncKeyId) GetKeyId() []byte {
- return x.GetKeyID()
-}
-
-// Deprecated: Use GetStanzaID
-func (x *PeerDataOperationRequestResponseMessage) GetStanzaId() string {
- return x.GetStanzaID()
-}
-
-// Deprecated: Use GetMentionedJID
-func (x *ContextInfo) GetMentionedJid() []string {
- return x.GetMentionedJID()
-}
-
-// Deprecated: Use GetRemoteJID
-func (x *ContextInfo) GetRemoteJid() string {
- return x.GetRemoteJID()
-}
-
-// Deprecated: Use GetStanzaID
-func (x *ContextInfo) GetStanzaId() string {
- return x.GetStanzaID()
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go
index c9e07e0c..dcd8b454 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go
@@ -2087,7 +2087,7 @@ var File_waHistorySync_WAWebProtobufsHistorySync_proto protoreflect.FileDescript
const file_waHistorySync_WAWebProtobufsHistorySync_proto_rawDesc = "" +
"\n" +
- "-waHistorySync/WAWebProtobufsHistorySync.proto\x12\x19WAWebProtobufsHistorySync\x1a\x1fwaSyncAction/WASyncAction.proto\x1a4waChatLockSettings/WAProtobufsChatLockSettings.proto\x1a\x1dwaE2E/WAWebProtobufsE2E.proto\x1a\x17waCommon/WACommon.proto\x1a\x1dwaWeb/WAWebProtobufsWeb.proto\"\x8c\v\n" +
+ "-waHistorySync/WAWebProtobufsHistorySync.proto\x12\x19WAWebProtobufsHistorySync\x1a*waSyncAction/WAWebProtobufSyncAction.proto\x1a7waChatLockSettings/WAWebProtobufsChatLockSettings.proto\x1a\x1dwaE2E/WAWebProtobufsE2E.proto\x1a\x17waCommon/WACommon.proto\x1a\x1dwaWeb/WAWebProtobufsWeb.proto\"\x97\v\n" +
"\vHistorySync\x12R\n" +
"\bsyncType\x18\x01 \x02(\x0e26.WAWebProtobufsHistorySync.HistorySync.HistorySyncTypeR\bsyncType\x12M\n" +
"\rconversations\x18\x02 \x03(\v2'.WAWebProtobufsHistorySync.ConversationR\rconversations\x12M\n" +
@@ -2102,8 +2102,8 @@ const file_waHistorySync_WAWebProtobufsHistorySync_proto_rawDesc = "" +
"\x17threadDsTimeframeOffset\x18\n" +
" \x01(\rR\x17threadDsTimeframeOffset\x12R\n" +
"\x0erecentStickers\x18\v \x03(\v2*.WAWebProtobufsHistorySync.StickerMetadataR\x0erecentStickers\x12W\n" +
- "\x10pastParticipants\x18\f \x03(\v2+.WAWebProtobufsHistorySync.PastParticipantsR\x10pastParticipants\x12C\n" +
- "\x0ecallLogRecords\x18\r \x03(\v2\x1b.WASyncAction.CallLogRecordR\x0ecallLogRecords\x12c\n" +
+ "\x10pastParticipants\x18\f \x03(\v2+.WAWebProtobufsHistorySync.PastParticipantsR\x10pastParticipants\x12N\n" +
+ "\x0ecallLogRecords\x18\r \x03(\v2&.WAWebProtobufSyncAction.CallLogRecordR\x0ecallLogRecords\x12c\n" +
"\x0faiWaitListState\x18\x0e \x01(\x0e29.WAWebProtobufsHistorySync.HistorySync.BotAIWaitListStateR\x0faiWaitListState\x12n\n" +
"\x18phoneNumberToLidMappings\x18\x0f \x03(\v22.WAWebProtobufsHistorySync.PhoneNumberToLIDMappingR\x18phoneNumberToLidMappings\x12.\n" +
"\x12companionMetaNonce\x18\x10 \x01(\tR\x12companionMetaNonce\x12R\n" +
@@ -2221,7 +2221,7 @@ const file_waHistorySync_WAWebProtobufsHistorySync_proto_rawDesc = "" +
"\bpushname\x18\x02 \x01(\tR\bpushname\"I\n" +
"\x11WallpaperSettings\x12\x1a\n" +
"\bfilename\x18\x01 \x01(\tR\bfilename\x12\x18\n" +
- "\aopacity\x18\x02 \x01(\rR\aopacity\"\x97\f\n" +
+ "\aopacity\x18\x02 \x01(\rR\aopacity\"\x9a\f\n" +
"\x0eGlobalSettings\x12^\n" +
"\x13lightThemeWallpaper\x18\x01 \x01(\v2,.WAWebProtobufsHistorySync.WallpaperSettingsR\x13lightThemeWallpaper\x12T\n" +
"\x0fmediaVisibility\x18\x02 \x01(\x0e2*.WAWebProtobufsHistorySync.MediaVisibilityR\x0fmediaVisibility\x12\\\n" +
@@ -2241,8 +2241,8 @@ const file_waHistorySync_WAWebProtobufsHistorySync_proto_rawDesc = "" +
"\x10videoQualityMode\x18\x0f \x01(\x05R\x10videoQualityMode\x12*\n" +
"\x10photoQualityMode\x18\x10 \x01(\x05R\x10photoQualityMode\x12w\n" +
"\x1eindividualNotificationSettings\x18\x11 \x01(\v2/.WAWebProtobufsHistorySync.NotificationSettingsR\x1eindividualNotificationSettings\x12m\n" +
- "\x19groupNotificationSettings\x18\x12 \x01(\v2/.WAWebProtobufsHistorySync.NotificationSettingsR\x19groupNotificationSettings\x12Y\n" +
- "\x10chatLockSettings\x18\x13 \x01(\v2-.WAProtobufsChatLockSettings.ChatLockSettingsR\x10chatLockSettings\x12@\n" +
+ "\x19groupNotificationSettings\x18\x12 \x01(\v2/.WAWebProtobufsHistorySync.NotificationSettingsR\x19groupNotificationSettings\x12\\\n" +
+ "\x10chatLockSettings\x18\x13 \x01(\v20.WAWebProtobufsChatLockSettings.ChatLockSettingsR\x10chatLockSettings\x12@\n" +
"\x1bchatDbLidMigrationTimestamp\x18\x14 \x01(\x03R\x1bchatDbLidMigrationTimestamp\"\xb8\x01\n" +
"\x14AutoDownloadSettings\x12&\n" +
"\x0edownloadImages\x18\x01 \x01(\bR\x0edownloadImages\x12$\n" +
@@ -2332,11 +2332,11 @@ var file_waHistorySync_WAWebProtobufsHistorySync_proto_goTypes = []any{
(*AvatarUserSettings)(nil), // 20: WAWebProtobufsHistorySync.AvatarUserSettings
(*NotificationSettings)(nil), // 21: WAWebProtobufsHistorySync.NotificationSettings
(*waWeb.WebMessageInfo)(nil), // 22: WAWebProtobufsWeb.WebMessageInfo
- (*waSyncAction.CallLogRecord)(nil), // 23: WASyncAction.CallLogRecord
+ (*waSyncAction.CallLogRecord)(nil), // 23: WAWebProtobufSyncAction.CallLogRecord
(*waE2E.DisappearingMode)(nil), // 24: WAWebProtobufsE2E.DisappearingMode
(waCommon.LimitSharing_Trigger)(0), // 25: WACommon.LimitSharing.Trigger
(*waE2E.MemberLabel)(nil), // 26: WAWebProtobufsE2E.MemberLabel
- (*waChatLockSettings.ChatLockSettings)(nil), // 27: WAProtobufsChatLockSettings.ChatLockSettings
+ (*waChatLockSettings.ChatLockSettings)(nil), // 27: WAWebProtobufsChatLockSettings.ChatLockSettings
}
var file_waHistorySync_WAWebProtobufsHistorySync_proto_depIdxs = []int32{
3, // 0: WAWebProtobufsHistorySync.HistorySync.syncType:type_name -> WAWebProtobufsHistorySync.HistorySync.HistorySyncType
@@ -2346,7 +2346,7 @@ var file_waHistorySync_WAWebProtobufsHistorySync_proto_depIdxs = []int32{
16, // 4: WAWebProtobufsHistorySync.HistorySync.globalSettings:type_name -> WAWebProtobufsHistorySync.GlobalSettings
18, // 5: WAWebProtobufsHistorySync.HistorySync.recentStickers:type_name -> WAWebProtobufsHistorySync.StickerMetadata
19, // 6: WAWebProtobufsHistorySync.HistorySync.pastParticipants:type_name -> WAWebProtobufsHistorySync.PastParticipants
- 23, // 7: WAWebProtobufsHistorySync.HistorySync.callLogRecords:type_name -> WASyncAction.CallLogRecord
+ 23, // 7: WAWebProtobufsHistorySync.HistorySync.callLogRecords:type_name -> WAWebProtobufSyncAction.CallLogRecord
2, // 8: WAWebProtobufsHistorySync.HistorySync.aiWaitListState:type_name -> WAWebProtobufsHistorySync.HistorySync.BotAIWaitListState
11, // 9: WAWebProtobufsHistorySync.HistorySync.phoneNumberToLidMappings:type_name -> WAWebProtobufsHistorySync.PhoneNumberToLIDMapping
12, // 10: WAWebProtobufsHistorySync.HistorySync.accounts:type_name -> WAWebProtobufsHistorySync.Account
@@ -2371,7 +2371,7 @@ var file_waHistorySync_WAWebProtobufsHistorySync_proto_depIdxs = []int32{
20, // 29: WAWebProtobufsHistorySync.GlobalSettings.avatarUserSettings:type_name -> WAWebProtobufsHistorySync.AvatarUserSettings
21, // 30: WAWebProtobufsHistorySync.GlobalSettings.individualNotificationSettings:type_name -> WAWebProtobufsHistorySync.NotificationSettings
21, // 31: WAWebProtobufsHistorySync.GlobalSettings.groupNotificationSettings:type_name -> WAWebProtobufsHistorySync.NotificationSettings
- 27, // 32: WAWebProtobufsHistorySync.GlobalSettings.chatLockSettings:type_name -> WAProtobufsChatLockSettings.ChatLockSettings
+ 27, // 32: WAWebProtobufsHistorySync.GlobalSettings.chatLockSettings:type_name -> WAWebProtobufsChatLockSettings.ChatLockSettings
10, // 33: WAWebProtobufsHistorySync.PastParticipants.pastParticipants:type_name -> WAWebProtobufsHistorySync.PastParticipant
34, // [34:34] is the sub-list for method output_type
34, // [34:34] is the sub-list for method input_type
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto b/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto
index a4f34c6a..08d21f26 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto
@@ -2,8 +2,8 @@ syntax = "proto2";
package WAWebProtobufsHistorySync;
option go_package = "go.mau.fi/whatsmeow/proto/waHistorySync";
-import "waSyncAction/WASyncAction.proto";
-import "waChatLockSettings/WAProtobufsChatLockSettings.proto";
+import "waSyncAction/WAWebProtobufSyncAction.proto";
+import "waChatLockSettings/WAWebProtobufsChatLockSettings.proto";
import "waE2E/WAWebProtobufsE2E.proto";
import "waCommon/WACommon.proto";
import "waWeb/WAWebProtobufsWeb.proto";
@@ -47,7 +47,7 @@ message HistorySync {
optional uint32 threadDsTimeframeOffset = 10;
repeated StickerMetadata recentStickers = 11;
repeated PastParticipants pastParticipants = 12;
- repeated WASyncAction.CallLogRecord callLogRecords = 13;
+ repeated WAWebProtobufSyncAction.CallLogRecord callLogRecords = 13;
optional BotAIWaitListState aiWaitListState = 14;
repeated PhoneNumberToLIDMapping phoneNumberToLidMappings = 15;
optional string companionMetaNonce = 16;
@@ -187,7 +187,7 @@ message GlobalSettings {
optional int32 photoQualityMode = 16;
optional NotificationSettings individualNotificationSettings = 17;
optional NotificationSettings groupNotificationSettings = 18;
- optional WAProtobufsChatLockSettings.ChatLockSettings chatLockSettings = 19;
+ optional WAWebProtobufsChatLockSettings.ChatLockSettings chatLockSettings = 19;
optional int64 chatDbLidMigrationTimestamp = 20;
}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/legacy.go b/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/legacy.go
deleted file mode 100644
index 410a80fe..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/legacy.go
+++ /dev/null
@@ -1,11 +0,0 @@
-package waHistorySync
-
-// Deprecated: Use GetID
-func (x *Conversation) GetId() string {
- return x.GetID()
-}
-
-// Deprecated: Use GetID
-func (x *Pushname) GetId() string {
- return x.GetID()
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waServerSync/legacy.go b/vendor/go.mau.fi/whatsmeow/proto/waServerSync/legacy.go
deleted file mode 100644
index 5c3af3d3..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waServerSync/legacy.go
+++ /dev/null
@@ -1,31 +0,0 @@
-package waServerSync
-
-// Deprecated: Use GetKeyID
-func (x *SyncdRecord) GetKeyId() *KeyId {
- return x.GetKeyID()
-}
-
-// Deprecated: Use GetKeyID
-func (x *SyncdSnapshot) GetKeyId() *KeyId {
- return x.GetKeyID()
-}
-
-// Deprecated: Use GetKeyID
-func (x *SyncdPatch) GetKeyId() *KeyId {
- return x.GetKeyID()
-}
-
-// Deprecated: Use GetSnapshotMAC
-func (x *SyncdPatch) GetSnapshotMac() []byte {
- return x.GetSnapshotMAC()
-}
-
-// Deprecated: Use GetPatchMAC
-func (x *SyncdPatch) GetPatchMac() []byte {
- return x.GetPatchMAC()
-}
-
-// Deprecated: Use GetID
-func (x *KeyId) GetId() []byte {
- return x.GetID()
-}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.pb.go
index 92e4db85..5b529c23 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.pb.go
@@ -220,43 +220,46 @@ func (StatusAttribution_RLAttribution_Source) EnumDescriptor() ([]byte, []int) {
type StatusAttribution_ExternalShare_Source int32
const (
- StatusAttribution_ExternalShare_UNKNOWN StatusAttribution_ExternalShare_Source = 0
- StatusAttribution_ExternalShare_INSTAGRAM StatusAttribution_ExternalShare_Source = 1
- StatusAttribution_ExternalShare_FACEBOOK StatusAttribution_ExternalShare_Source = 2
- StatusAttribution_ExternalShare_MESSENGER StatusAttribution_ExternalShare_Source = 3
- StatusAttribution_ExternalShare_SPOTIFY StatusAttribution_ExternalShare_Source = 4
- StatusAttribution_ExternalShare_YOUTUBE StatusAttribution_ExternalShare_Source = 5
- StatusAttribution_ExternalShare_PINTEREST StatusAttribution_ExternalShare_Source = 6
- StatusAttribution_ExternalShare_THREADS StatusAttribution_ExternalShare_Source = 7
- StatusAttribution_ExternalShare_APPLE_MUSIC StatusAttribution_ExternalShare_Source = 8
- StatusAttribution_ExternalShare_SHARECHAT StatusAttribution_ExternalShare_Source = 9
+ StatusAttribution_ExternalShare_UNKNOWN StatusAttribution_ExternalShare_Source = 0
+ StatusAttribution_ExternalShare_INSTAGRAM StatusAttribution_ExternalShare_Source = 1
+ StatusAttribution_ExternalShare_FACEBOOK StatusAttribution_ExternalShare_Source = 2
+ StatusAttribution_ExternalShare_MESSENGER StatusAttribution_ExternalShare_Source = 3
+ StatusAttribution_ExternalShare_SPOTIFY StatusAttribution_ExternalShare_Source = 4
+ StatusAttribution_ExternalShare_YOUTUBE StatusAttribution_ExternalShare_Source = 5
+ StatusAttribution_ExternalShare_PINTEREST StatusAttribution_ExternalShare_Source = 6
+ StatusAttribution_ExternalShare_THREADS StatusAttribution_ExternalShare_Source = 7
+ StatusAttribution_ExternalShare_APPLE_MUSIC StatusAttribution_ExternalShare_Source = 8
+ StatusAttribution_ExternalShare_SHARECHAT StatusAttribution_ExternalShare_Source = 9
+ StatusAttribution_ExternalShare_GOOGLE_PHOTOS StatusAttribution_ExternalShare_Source = 10
)
// Enum value maps for StatusAttribution_ExternalShare_Source.
var (
StatusAttribution_ExternalShare_Source_name = map[int32]string{
- 0: "UNKNOWN",
- 1: "INSTAGRAM",
- 2: "FACEBOOK",
- 3: "MESSENGER",
- 4: "SPOTIFY",
- 5: "YOUTUBE",
- 6: "PINTEREST",
- 7: "THREADS",
- 8: "APPLE_MUSIC",
- 9: "SHARECHAT",
+ 0: "UNKNOWN",
+ 1: "INSTAGRAM",
+ 2: "FACEBOOK",
+ 3: "MESSENGER",
+ 4: "SPOTIFY",
+ 5: "YOUTUBE",
+ 6: "PINTEREST",
+ 7: "THREADS",
+ 8: "APPLE_MUSIC",
+ 9: "SHARECHAT",
+ 10: "GOOGLE_PHOTOS",
}
StatusAttribution_ExternalShare_Source_value = map[string]int32{
- "UNKNOWN": 0,
- "INSTAGRAM": 1,
- "FACEBOOK": 2,
- "MESSENGER": 3,
- "SPOTIFY": 4,
- "YOUTUBE": 5,
- "PINTEREST": 6,
- "THREADS": 7,
- "APPLE_MUSIC": 8,
- "SHARECHAT": 9,
+ "UNKNOWN": 0,
+ "INSTAGRAM": 1,
+ "FACEBOOK": 2,
+ "MESSENGER": 3,
+ "SPOTIFY": 4,
+ "YOUTUBE": 5,
+ "PINTEREST": 6,
+ "THREADS": 7,
+ "APPLE_MUSIC": 8,
+ "SHARECHAT": 9,
+ "GOOGLE_PHOTOS": 10,
}
)
@@ -932,7 +935,7 @@ var File_waStatusAttributions_WAStatusAttributions_proto protoreflect.FileDescri
const file_waStatusAttributions_WAStatusAttributions_proto_rawDesc = "" +
"\n" +
- "/waStatusAttributions/WAStatusAttributions.proto\x12\x14WAStatusAttributions\"\xde\x11\n" +
+ "/waStatusAttributions/WAStatusAttributions.proto\x12\x14WAStatusAttributions\"\xf1\x11\n" +
"\x11StatusAttribution\x12]\n" +
"\rstatusReshare\x18\x03 \x01(\v25.WAStatusAttributions.StatusAttribution.StatusReshareH\x00R\rstatusReshare\x12]\n" +
"\rexternalShare\x18\x04 \x01(\v25.WAStatusAttributions.StatusAttribution.ExternalShareH\x00R\rexternalShare\x12E\n" +
@@ -953,12 +956,12 @@ const file_waStatusAttributions_WAStatusAttributions_proto_rawDesc = "" +
"\aUNKNOWN\x10\x00\x12\x18\n" +
"\x14RAY_BAN_META_GLASSES\x10\x01\x12\x17\n" +
"\x13OAKLEY_META_GLASSES\x10\x02\x12\x15\n" +
- "\x11HYPERNOVA_GLASSES\x10\x03\x1a\xe7\x02\n" +
+ "\x11HYPERNOVA_GLASSES\x10\x03\x1a\xfa\x02\n" +
"\rExternalShare\x12\x1c\n" +
"\tactionURL\x18\x01 \x01(\tR\tactionURL\x12T\n" +
"\x06source\x18\x02 \x01(\x0e2<.WAStatusAttributions.StatusAttribution.ExternalShare.SourceR\x06source\x12\x1a\n" +
"\bduration\x18\x03 \x01(\x05R\bduration\x12,\n" +
- "\x11actionFallbackURL\x18\x04 \x01(\tR\x11actionFallbackURL\"\x97\x01\n" +
+ "\x11actionFallbackURL\x18\x04 \x01(\tR\x11actionFallbackURL\"\xaa\x01\n" +
"\x06Source\x12\v\n" +
"\aUNKNOWN\x10\x00\x12\r\n" +
"\tINSTAGRAM\x10\x01\x12\f\n" +
@@ -969,7 +972,9 @@ const file_waStatusAttributions_WAStatusAttributions_proto_rawDesc = "" +
"\tPINTEREST\x10\x06\x12\v\n" +
"\aTHREADS\x10\a\x12\x0f\n" +
"\vAPPLE_MUSIC\x10\b\x12\r\n" +
- "\tSHARECHAT\x10\t\x1a\xcc\x03\n" +
+ "\tSHARECHAT\x10\t\x12\x11\n" +
+ "\rGOOGLE_PHOTOS\x10\n" +
+ "\x1a\xcc\x03\n" +
"\rStatusReshare\x12T\n" +
"\x06source\x18\x01 \x01(\x0e2<.WAStatusAttributions.StatusAttribution.StatusReshare.SourceR\x06source\x12Z\n" +
"\bmetadata\x18\x02 \x01(\v2>.WAStatusAttributions.StatusAttribution.StatusReshare.MetadataR\bmetadata\x1a\xa4\x01\n" +
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.proto b/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.proto
index 69a08de6..617a8d25 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.proto
@@ -47,6 +47,7 @@ message StatusAttribution {
THREADS = 7;
APPLE_MUSIC = 8;
SHARECHAT = 9;
+ GOOGLE_PHOTOS = 10;
}
optional string actionURL = 1;
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WAWebProtobufSyncAction.pb.go
similarity index 64%
rename from vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.go
rename to vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WAWebProtobufSyncAction.pb.go
index db8a94f3..5a97ddfc 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WAWebProtobufSyncAction.pb.go
@@ -2,7 +2,7 @@
// versions:
// protoc-gen-go v1.36.10
// protoc v3.21.12
-// source: waSyncAction/WASyncAction.proto
+// source: waSyncAction/WAWebProtobufSyncAction.proto
package waSyncAction
@@ -26,6 +26,343 @@ const (
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
+type CollectionName int32
+
+const (
+ CollectionName_COLLECTION_NAME_UNKNOWN CollectionName = 0
+ CollectionName_REGULAR CollectionName = 1
+ CollectionName_REGULAR_LOW CollectionName = 2
+ CollectionName_REGULAR_HIGH CollectionName = 3
+ CollectionName_CRITICAL_BLOCK CollectionName = 4
+ CollectionName_CRITICAL_UNBLOCK_LOW CollectionName = 5
+)
+
+// Enum value maps for CollectionName.
+var (
+ CollectionName_name = map[int32]string{
+ 0: "COLLECTION_NAME_UNKNOWN",
+ 1: "REGULAR",
+ 2: "REGULAR_LOW",
+ 3: "REGULAR_HIGH",
+ 4: "CRITICAL_BLOCK",
+ 5: "CRITICAL_UNBLOCK_LOW",
+ }
+ CollectionName_value = map[string]int32{
+ "COLLECTION_NAME_UNKNOWN": 0,
+ "REGULAR": 1,
+ "REGULAR_LOW": 2,
+ "REGULAR_HIGH": 3,
+ "CRITICAL_BLOCK": 4,
+ "CRITICAL_UNBLOCK_LOW": 5,
+ }
+)
+
+func (x CollectionName) Enum() *CollectionName {
+ p := new(CollectionName)
+ *p = x
+ return p
+}
+
+func (x CollectionName) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (CollectionName) Descriptor() protoreflect.EnumDescriptor {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[0].Descriptor()
+}
+
+func (CollectionName) Type() protoreflect.EnumType {
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[0]
+}
+
+func (x CollectionName) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *CollectionName) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = CollectionName(num)
+ return nil
+}
+
+// Deprecated: Use CollectionName.Descriptor instead.
+func (CollectionName) EnumDescriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{0}
+}
+
+type MutationProps int32
+
+const (
+ MutationProps_STAR_ACTION MutationProps = 2
+ MutationProps_CONTACT_ACTION MutationProps = 3
+ MutationProps_MUTE_ACTION MutationProps = 4
+ MutationProps_PIN_ACTION MutationProps = 5
+ MutationProps_SECURITY_NOTIFICATION_SETTING MutationProps = 6
+ MutationProps_PUSH_NAME_SETTING MutationProps = 7
+ MutationProps_QUICK_REPLY_ACTION MutationProps = 8
+ MutationProps_RECENT_EMOJI_WEIGHTS_ACTION MutationProps = 11
+ MutationProps_LABEL_MESSAGE_ACTION MutationProps = 13
+ MutationProps_LABEL_EDIT_ACTION MutationProps = 14
+ MutationProps_LABEL_ASSOCIATION_ACTION MutationProps = 15
+ MutationProps_LOCALE_SETTING MutationProps = 16
+ MutationProps_ARCHIVE_CHAT_ACTION MutationProps = 17
+ MutationProps_DELETE_MESSAGE_FOR_ME_ACTION MutationProps = 18
+ MutationProps_KEY_EXPIRATION MutationProps = 19
+ MutationProps_MARK_CHAT_AS_READ_ACTION MutationProps = 20
+ MutationProps_CLEAR_CHAT_ACTION MutationProps = 21
+ MutationProps_DELETE_CHAT_ACTION MutationProps = 22
+ MutationProps_UNARCHIVE_CHATS_SETTING MutationProps = 23
+ MutationProps_PRIMARY_FEATURE MutationProps = 24
+ MutationProps_ANDROID_UNSUPPORTED_ACTIONS MutationProps = 26
+ MutationProps_AGENT_ACTION MutationProps = 27
+ MutationProps_SUBSCRIPTION_ACTION MutationProps = 28
+ MutationProps_USER_STATUS_MUTE_ACTION MutationProps = 29
+ MutationProps_TIME_FORMAT_ACTION MutationProps = 30
+ MutationProps_NUX_ACTION MutationProps = 31
+ MutationProps_PRIMARY_VERSION_ACTION MutationProps = 32
+ MutationProps_STICKER_ACTION MutationProps = 33
+ MutationProps_REMOVE_RECENT_STICKER_ACTION MutationProps = 34
+ MutationProps_CHAT_ASSIGNMENT MutationProps = 35
+ MutationProps_CHAT_ASSIGNMENT_OPENED_STATUS MutationProps = 36
+ MutationProps_PN_FOR_LID_CHAT_ACTION MutationProps = 37
+ MutationProps_MARKETING_MESSAGE_ACTION MutationProps = 38
+ MutationProps_MARKETING_MESSAGE_BROADCAST_ACTION MutationProps = 39
+ MutationProps_EXTERNAL_WEB_BETA_ACTION MutationProps = 40
+ MutationProps_PRIVACY_SETTING_RELAY_ALL_CALLS MutationProps = 41
+ MutationProps_CALL_LOG_ACTION MutationProps = 42
+ MutationProps_UGC_BOT MutationProps = 43
+ MutationProps_STATUS_PRIVACY MutationProps = 44
+ MutationProps_BOT_WELCOME_REQUEST_ACTION MutationProps = 45
+ MutationProps_DELETE_INDIVIDUAL_CALL_LOG MutationProps = 46
+ MutationProps_LABEL_REORDERING_ACTION MutationProps = 47
+ MutationProps_PAYMENT_INFO_ACTION MutationProps = 48
+ MutationProps_CUSTOM_PAYMENT_METHODS_ACTION MutationProps = 49
+ MutationProps_LOCK_CHAT_ACTION MutationProps = 50
+ MutationProps_CHAT_LOCK_SETTINGS MutationProps = 51
+ MutationProps_WAMO_USER_IDENTIFIER_ACTION MutationProps = 52
+ MutationProps_PRIVACY_SETTING_DISABLE_LINK_PREVIEWS_ACTION MutationProps = 53
+ MutationProps_DEVICE_CAPABILITIES MutationProps = 54
+ MutationProps_NOTE_EDIT_ACTION MutationProps = 55
+ MutationProps_FAVORITES_ACTION MutationProps = 56
+ MutationProps_MERCHANT_PAYMENT_PARTNER_ACTION MutationProps = 57
+ MutationProps_WAFFLE_ACCOUNT_LINK_STATE_ACTION MutationProps = 58
+ MutationProps_USERNAME_CHAT_START_MODE MutationProps = 59
+ MutationProps_NOTIFICATION_ACTIVITY_SETTING_ACTION MutationProps = 60
+ MutationProps_LID_CONTACT_ACTION MutationProps = 61
+ MutationProps_CTWA_PER_CUSTOMER_DATA_SHARING_ACTION MutationProps = 62
+ MutationProps_PAYMENT_TOS_ACTION MutationProps = 63
+ MutationProps_PRIVACY_SETTING_CHANNELS_PERSONALISED_RECOMMENDATION_ACTION MutationProps = 64
+ MutationProps_BUSINESS_BROADCAST_ASSOCIATION_ACTION MutationProps = 65
+ MutationProps_DETECTED_OUTCOMES_STATUS_ACTION MutationProps = 66
+ MutationProps_MAIBA_AI_FEATURES_CONTROL_ACTION MutationProps = 68
+ MutationProps_BUSINESS_BROADCAST_LIST_ACTION MutationProps = 69
+ MutationProps_MUSIC_USER_ID_ACTION MutationProps = 70
+ MutationProps_STATUS_POST_OPT_IN_NOTIFICATION_PREFERENCES_ACTION MutationProps = 71
+ MutationProps_AVATAR_UPDATED_ACTION MutationProps = 72
+ MutationProps_GALAXY_FLOW_ACTION MutationProps = 73
+ MutationProps_PRIVATE_PROCESSING_SETTING_ACTION MutationProps = 74
+ MutationProps_NEWSLETTER_SAVED_INTERESTS_ACTION MutationProps = 75
+ MutationProps_AI_THREAD_RENAME_ACTION MutationProps = 76
+ MutationProps_INTERACTIVE_MESSAGE_ACTION MutationProps = 77
+ MutationProps_SHARE_OWN_PN MutationProps = 10001
+ MutationProps_BUSINESS_BROADCAST_ACTION MutationProps = 10002
+)
+
+// Enum value maps for MutationProps.
+var (
+ MutationProps_name = map[int32]string{
+ 2: "STAR_ACTION",
+ 3: "CONTACT_ACTION",
+ 4: "MUTE_ACTION",
+ 5: "PIN_ACTION",
+ 6: "SECURITY_NOTIFICATION_SETTING",
+ 7: "PUSH_NAME_SETTING",
+ 8: "QUICK_REPLY_ACTION",
+ 11: "RECENT_EMOJI_WEIGHTS_ACTION",
+ 13: "LABEL_MESSAGE_ACTION",
+ 14: "LABEL_EDIT_ACTION",
+ 15: "LABEL_ASSOCIATION_ACTION",
+ 16: "LOCALE_SETTING",
+ 17: "ARCHIVE_CHAT_ACTION",
+ 18: "DELETE_MESSAGE_FOR_ME_ACTION",
+ 19: "KEY_EXPIRATION",
+ 20: "MARK_CHAT_AS_READ_ACTION",
+ 21: "CLEAR_CHAT_ACTION",
+ 22: "DELETE_CHAT_ACTION",
+ 23: "UNARCHIVE_CHATS_SETTING",
+ 24: "PRIMARY_FEATURE",
+ 26: "ANDROID_UNSUPPORTED_ACTIONS",
+ 27: "AGENT_ACTION",
+ 28: "SUBSCRIPTION_ACTION",
+ 29: "USER_STATUS_MUTE_ACTION",
+ 30: "TIME_FORMAT_ACTION",
+ 31: "NUX_ACTION",
+ 32: "PRIMARY_VERSION_ACTION",
+ 33: "STICKER_ACTION",
+ 34: "REMOVE_RECENT_STICKER_ACTION",
+ 35: "CHAT_ASSIGNMENT",
+ 36: "CHAT_ASSIGNMENT_OPENED_STATUS",
+ 37: "PN_FOR_LID_CHAT_ACTION",
+ 38: "MARKETING_MESSAGE_ACTION",
+ 39: "MARKETING_MESSAGE_BROADCAST_ACTION",
+ 40: "EXTERNAL_WEB_BETA_ACTION",
+ 41: "PRIVACY_SETTING_RELAY_ALL_CALLS",
+ 42: "CALL_LOG_ACTION",
+ 43: "UGC_BOT",
+ 44: "STATUS_PRIVACY",
+ 45: "BOT_WELCOME_REQUEST_ACTION",
+ 46: "DELETE_INDIVIDUAL_CALL_LOG",
+ 47: "LABEL_REORDERING_ACTION",
+ 48: "PAYMENT_INFO_ACTION",
+ 49: "CUSTOM_PAYMENT_METHODS_ACTION",
+ 50: "LOCK_CHAT_ACTION",
+ 51: "CHAT_LOCK_SETTINGS",
+ 52: "WAMO_USER_IDENTIFIER_ACTION",
+ 53: "PRIVACY_SETTING_DISABLE_LINK_PREVIEWS_ACTION",
+ 54: "DEVICE_CAPABILITIES",
+ 55: "NOTE_EDIT_ACTION",
+ 56: "FAVORITES_ACTION",
+ 57: "MERCHANT_PAYMENT_PARTNER_ACTION",
+ 58: "WAFFLE_ACCOUNT_LINK_STATE_ACTION",
+ 59: "USERNAME_CHAT_START_MODE",
+ 60: "NOTIFICATION_ACTIVITY_SETTING_ACTION",
+ 61: "LID_CONTACT_ACTION",
+ 62: "CTWA_PER_CUSTOMER_DATA_SHARING_ACTION",
+ 63: "PAYMENT_TOS_ACTION",
+ 64: "PRIVACY_SETTING_CHANNELS_PERSONALISED_RECOMMENDATION_ACTION",
+ 65: "BUSINESS_BROADCAST_ASSOCIATION_ACTION",
+ 66: "DETECTED_OUTCOMES_STATUS_ACTION",
+ 68: "MAIBA_AI_FEATURES_CONTROL_ACTION",
+ 69: "BUSINESS_BROADCAST_LIST_ACTION",
+ 70: "MUSIC_USER_ID_ACTION",
+ 71: "STATUS_POST_OPT_IN_NOTIFICATION_PREFERENCES_ACTION",
+ 72: "AVATAR_UPDATED_ACTION",
+ 73: "GALAXY_FLOW_ACTION",
+ 74: "PRIVATE_PROCESSING_SETTING_ACTION",
+ 75: "NEWSLETTER_SAVED_INTERESTS_ACTION",
+ 76: "AI_THREAD_RENAME_ACTION",
+ 77: "INTERACTIVE_MESSAGE_ACTION",
+ 10001: "SHARE_OWN_PN",
+ 10002: "BUSINESS_BROADCAST_ACTION",
+ }
+ MutationProps_value = map[string]int32{
+ "STAR_ACTION": 2,
+ "CONTACT_ACTION": 3,
+ "MUTE_ACTION": 4,
+ "PIN_ACTION": 5,
+ "SECURITY_NOTIFICATION_SETTING": 6,
+ "PUSH_NAME_SETTING": 7,
+ "QUICK_REPLY_ACTION": 8,
+ "RECENT_EMOJI_WEIGHTS_ACTION": 11,
+ "LABEL_MESSAGE_ACTION": 13,
+ "LABEL_EDIT_ACTION": 14,
+ "LABEL_ASSOCIATION_ACTION": 15,
+ "LOCALE_SETTING": 16,
+ "ARCHIVE_CHAT_ACTION": 17,
+ "DELETE_MESSAGE_FOR_ME_ACTION": 18,
+ "KEY_EXPIRATION": 19,
+ "MARK_CHAT_AS_READ_ACTION": 20,
+ "CLEAR_CHAT_ACTION": 21,
+ "DELETE_CHAT_ACTION": 22,
+ "UNARCHIVE_CHATS_SETTING": 23,
+ "PRIMARY_FEATURE": 24,
+ "ANDROID_UNSUPPORTED_ACTIONS": 26,
+ "AGENT_ACTION": 27,
+ "SUBSCRIPTION_ACTION": 28,
+ "USER_STATUS_MUTE_ACTION": 29,
+ "TIME_FORMAT_ACTION": 30,
+ "NUX_ACTION": 31,
+ "PRIMARY_VERSION_ACTION": 32,
+ "STICKER_ACTION": 33,
+ "REMOVE_RECENT_STICKER_ACTION": 34,
+ "CHAT_ASSIGNMENT": 35,
+ "CHAT_ASSIGNMENT_OPENED_STATUS": 36,
+ "PN_FOR_LID_CHAT_ACTION": 37,
+ "MARKETING_MESSAGE_ACTION": 38,
+ "MARKETING_MESSAGE_BROADCAST_ACTION": 39,
+ "EXTERNAL_WEB_BETA_ACTION": 40,
+ "PRIVACY_SETTING_RELAY_ALL_CALLS": 41,
+ "CALL_LOG_ACTION": 42,
+ "UGC_BOT": 43,
+ "STATUS_PRIVACY": 44,
+ "BOT_WELCOME_REQUEST_ACTION": 45,
+ "DELETE_INDIVIDUAL_CALL_LOG": 46,
+ "LABEL_REORDERING_ACTION": 47,
+ "PAYMENT_INFO_ACTION": 48,
+ "CUSTOM_PAYMENT_METHODS_ACTION": 49,
+ "LOCK_CHAT_ACTION": 50,
+ "CHAT_LOCK_SETTINGS": 51,
+ "WAMO_USER_IDENTIFIER_ACTION": 52,
+ "PRIVACY_SETTING_DISABLE_LINK_PREVIEWS_ACTION": 53,
+ "DEVICE_CAPABILITIES": 54,
+ "NOTE_EDIT_ACTION": 55,
+ "FAVORITES_ACTION": 56,
+ "MERCHANT_PAYMENT_PARTNER_ACTION": 57,
+ "WAFFLE_ACCOUNT_LINK_STATE_ACTION": 58,
+ "USERNAME_CHAT_START_MODE": 59,
+ "NOTIFICATION_ACTIVITY_SETTING_ACTION": 60,
+ "LID_CONTACT_ACTION": 61,
+ "CTWA_PER_CUSTOMER_DATA_SHARING_ACTION": 62,
+ "PAYMENT_TOS_ACTION": 63,
+ "PRIVACY_SETTING_CHANNELS_PERSONALISED_RECOMMENDATION_ACTION": 64,
+ "BUSINESS_BROADCAST_ASSOCIATION_ACTION": 65,
+ "DETECTED_OUTCOMES_STATUS_ACTION": 66,
+ "MAIBA_AI_FEATURES_CONTROL_ACTION": 68,
+ "BUSINESS_BROADCAST_LIST_ACTION": 69,
+ "MUSIC_USER_ID_ACTION": 70,
+ "STATUS_POST_OPT_IN_NOTIFICATION_PREFERENCES_ACTION": 71,
+ "AVATAR_UPDATED_ACTION": 72,
+ "GALAXY_FLOW_ACTION": 73,
+ "PRIVATE_PROCESSING_SETTING_ACTION": 74,
+ "NEWSLETTER_SAVED_INTERESTS_ACTION": 75,
+ "AI_THREAD_RENAME_ACTION": 76,
+ "INTERACTIVE_MESSAGE_ACTION": 77,
+ "SHARE_OWN_PN": 10001,
+ "BUSINESS_BROADCAST_ACTION": 10002,
+ }
+)
+
+func (x MutationProps) Enum() *MutationProps {
+ p := new(MutationProps)
+ *p = x
+ return p
+}
+
+func (x MutationProps) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (MutationProps) Descriptor() protoreflect.EnumDescriptor {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[1].Descriptor()
+}
+
+func (MutationProps) Type() protoreflect.EnumType {
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[1]
+}
+
+func (x MutationProps) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *MutationProps) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = MutationProps(num)
+ return nil
+}
+
+// Deprecated: Use MutationProps.Descriptor instead.
+func (MutationProps) EnumDescriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{1}
+}
+
type CallLogRecord_CallType int32
const (
@@ -59,11 +396,11 @@ func (x CallLogRecord_CallType) String() string {
}
func (CallLogRecord_CallType) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[0].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[2].Descriptor()
}
func (CallLogRecord_CallType) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[0]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[2]
}
func (x CallLogRecord_CallType) Number() protoreflect.EnumNumber {
@@ -82,7 +419,7 @@ func (x *CallLogRecord_CallType) UnmarshalJSON(b []byte) error {
// Deprecated: Use CallLogRecord_CallType.Descriptor instead.
func (CallLogRecord_CallType) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{0, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{0, 0}
}
type CallLogRecord_SilenceReason int32
@@ -121,11 +458,11 @@ func (x CallLogRecord_SilenceReason) String() string {
}
func (CallLogRecord_SilenceReason) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[1].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[3].Descriptor()
}
func (CallLogRecord_SilenceReason) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[1]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[3]
}
func (x CallLogRecord_SilenceReason) Number() protoreflect.EnumNumber {
@@ -144,7 +481,7 @@ func (x *CallLogRecord_SilenceReason) UnmarshalJSON(b []byte) error {
// Deprecated: Use CallLogRecord_SilenceReason.Descriptor instead.
func (CallLogRecord_SilenceReason) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{0, 1}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{0, 1}
}
type CallLogRecord_CallResult int32
@@ -204,11 +541,11 @@ func (x CallLogRecord_CallResult) String() string {
}
func (CallLogRecord_CallResult) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[2].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[4].Descriptor()
}
func (CallLogRecord_CallResult) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[2]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[4]
}
func (x CallLogRecord_CallResult) Number() protoreflect.EnumNumber {
@@ -227,7 +564,119 @@ func (x *CallLogRecord_CallResult) UnmarshalJSON(b []byte) error {
// Deprecated: Use CallLogRecord_CallResult.Descriptor instead.
func (CallLogRecord_CallResult) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{0, 2}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{0, 2}
+}
+
+type InteractiveMessageAction_InteractiveMessageActionMode int32
+
+const (
+ InteractiveMessageAction_DISABLE_CTA InteractiveMessageAction_InteractiveMessageActionMode = 1
+)
+
+// Enum value maps for InteractiveMessageAction_InteractiveMessageActionMode.
+var (
+ InteractiveMessageAction_InteractiveMessageActionMode_name = map[int32]string{
+ 1: "DISABLE_CTA",
+ }
+ InteractiveMessageAction_InteractiveMessageActionMode_value = map[string]int32{
+ "DISABLE_CTA": 1,
+ }
+)
+
+func (x InteractiveMessageAction_InteractiveMessageActionMode) Enum() *InteractiveMessageAction_InteractiveMessageActionMode {
+ p := new(InteractiveMessageAction_InteractiveMessageActionMode)
+ *p = x
+ return p
+}
+
+func (x InteractiveMessageAction_InteractiveMessageActionMode) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (InteractiveMessageAction_InteractiveMessageActionMode) Descriptor() protoreflect.EnumDescriptor {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[5].Descriptor()
+}
+
+func (InteractiveMessageAction_InteractiveMessageActionMode) Type() protoreflect.EnumType {
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[5]
+}
+
+func (x InteractiveMessageAction_InteractiveMessageActionMode) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *InteractiveMessageAction_InteractiveMessageActionMode) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = InteractiveMessageAction_InteractiveMessageActionMode(num)
+ return nil
+}
+
+// Deprecated: Use InteractiveMessageAction_InteractiveMessageActionMode.Descriptor instead.
+func (InteractiveMessageAction_InteractiveMessageActionMode) EnumDescriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{1, 0}
+}
+
+type PrivateProcessingSettingAction_PrivateProcessingStatus int32
+
+const (
+ PrivateProcessingSettingAction_UNDEFINED PrivateProcessingSettingAction_PrivateProcessingStatus = 0
+ PrivateProcessingSettingAction_ENABLED PrivateProcessingSettingAction_PrivateProcessingStatus = 1
+ PrivateProcessingSettingAction_DISABLED PrivateProcessingSettingAction_PrivateProcessingStatus = 2
+)
+
+// Enum value maps for PrivateProcessingSettingAction_PrivateProcessingStatus.
+var (
+ PrivateProcessingSettingAction_PrivateProcessingStatus_name = map[int32]string{
+ 0: "UNDEFINED",
+ 1: "ENABLED",
+ 2: "DISABLED",
+ }
+ PrivateProcessingSettingAction_PrivateProcessingStatus_value = map[string]int32{
+ "UNDEFINED": 0,
+ "ENABLED": 1,
+ "DISABLED": 2,
+ }
+)
+
+func (x PrivateProcessingSettingAction_PrivateProcessingStatus) Enum() *PrivateProcessingSettingAction_PrivateProcessingStatus {
+ p := new(PrivateProcessingSettingAction_PrivateProcessingStatus)
+ *p = x
+ return p
+}
+
+func (x PrivateProcessingSettingAction_PrivateProcessingStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (PrivateProcessingSettingAction_PrivateProcessingStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[6].Descriptor()
+}
+
+func (PrivateProcessingSettingAction_PrivateProcessingStatus) Type() protoreflect.EnumType {
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[6]
+}
+
+func (x PrivateProcessingSettingAction_PrivateProcessingStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *PrivateProcessingSettingAction_PrivateProcessingStatus) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = PrivateProcessingSettingAction_PrivateProcessingStatus(num)
+ return nil
+}
+
+// Deprecated: Use PrivateProcessingSettingAction_PrivateProcessingStatus.Descriptor instead.
+func (PrivateProcessingSettingAction_PrivateProcessingStatus) EnumDescriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{2, 0}
}
type AvatarUpdatedAction_AvatarEventType int32
@@ -263,11 +712,11 @@ func (x AvatarUpdatedAction_AvatarEventType) String() string {
}
func (AvatarUpdatedAction_AvatarEventType) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[3].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[7].Descriptor()
}
func (AvatarUpdatedAction_AvatarEventType) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[3]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[7]
}
func (x AvatarUpdatedAction_AvatarEventType) Number() protoreflect.EnumNumber {
@@ -286,7 +735,7 @@ func (x *AvatarUpdatedAction_AvatarEventType) UnmarshalJSON(b []byte) error {
// Deprecated: Use AvatarUpdatedAction_AvatarEventType.Descriptor instead.
func (AvatarUpdatedAction_AvatarEventType) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{1, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{3, 0}
}
type MaibaAIFeaturesControlAction_MaibaAIFeatureStatus int32
@@ -322,11 +771,11 @@ func (x MaibaAIFeaturesControlAction_MaibaAIFeatureStatus) String() string {
}
func (MaibaAIFeaturesControlAction_MaibaAIFeatureStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[4].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[8].Descriptor()
}
func (MaibaAIFeaturesControlAction_MaibaAIFeatureStatus) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[4]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[8]
}
func (x MaibaAIFeaturesControlAction_MaibaAIFeatureStatus) Number() protoreflect.EnumNumber {
@@ -345,7 +794,7 @@ func (x *MaibaAIFeaturesControlAction_MaibaAIFeatureStatus) UnmarshalJSON(b []by
// Deprecated: Use MaibaAIFeaturesControlAction_MaibaAIFeatureStatus.Descriptor instead.
func (MaibaAIFeaturesControlAction_MaibaAIFeatureStatus) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{2, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{4, 0}
}
type PaymentTosAction_PaymentNotice int32
@@ -375,11 +824,11 @@ func (x PaymentTosAction_PaymentNotice) String() string {
}
func (PaymentTosAction_PaymentNotice) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[5].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[9].Descriptor()
}
func (PaymentTosAction_PaymentNotice) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[5]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[9]
}
func (x PaymentTosAction_PaymentNotice) Number() protoreflect.EnumNumber {
@@ -398,7 +847,7 @@ func (x *PaymentTosAction_PaymentNotice) UnmarshalJSON(b []byte) error {
// Deprecated: Use PaymentTosAction_PaymentNotice.Descriptor instead.
func (PaymentTosAction_PaymentNotice) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{3, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{5, 0}
}
type NotificationActivitySettingAction_NotificationActivitySetting int32
@@ -437,11 +886,11 @@ func (x NotificationActivitySettingAction_NotificationActivitySetting) String()
}
func (NotificationActivitySettingAction_NotificationActivitySetting) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[6].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[10].Descriptor()
}
func (NotificationActivitySettingAction_NotificationActivitySetting) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[6]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[10]
}
func (x NotificationActivitySettingAction_NotificationActivitySetting) Number() protoreflect.EnumNumber {
@@ -460,22 +909,28 @@ func (x *NotificationActivitySettingAction_NotificationActivitySetting) Unmarsha
// Deprecated: Use NotificationActivitySettingAction_NotificationActivitySetting.Descriptor instead.
func (NotificationActivitySettingAction_NotificationActivitySetting) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{4, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{6, 0}
}
type WaffleAccountLinkStateAction_AccountLinkState int32
const (
- WaffleAccountLinkStateAction_ACTIVE WaffleAccountLinkStateAction_AccountLinkState = 0
+ WaffleAccountLinkStateAction_ACTIVE WaffleAccountLinkStateAction_AccountLinkState = 0
+ WaffleAccountLinkStateAction_PAUSED WaffleAccountLinkStateAction_AccountLinkState = 1
+ WaffleAccountLinkStateAction_UNLINKED WaffleAccountLinkStateAction_AccountLinkState = 2
)
// Enum value maps for WaffleAccountLinkStateAction_AccountLinkState.
var (
WaffleAccountLinkStateAction_AccountLinkState_name = map[int32]string{
0: "ACTIVE",
+ 1: "PAUSED",
+ 2: "UNLINKED",
}
WaffleAccountLinkStateAction_AccountLinkState_value = map[string]int32{
- "ACTIVE": 0,
+ "ACTIVE": 0,
+ "PAUSED": 1,
+ "UNLINKED": 2,
}
)
@@ -490,11 +945,11 @@ func (x WaffleAccountLinkStateAction_AccountLinkState) String() string {
}
func (WaffleAccountLinkStateAction_AccountLinkState) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[7].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[11].Descriptor()
}
func (WaffleAccountLinkStateAction_AccountLinkState) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[7]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[11]
}
func (x WaffleAccountLinkStateAction_AccountLinkState) Number() protoreflect.EnumNumber {
@@ -513,7 +968,7 @@ func (x *WaffleAccountLinkStateAction_AccountLinkState) UnmarshalJSON(b []byte)
// Deprecated: Use WaffleAccountLinkStateAction_AccountLinkState.Descriptor instead.
func (WaffleAccountLinkStateAction_AccountLinkState) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{5, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{7, 0}
}
type MerchantPaymentPartnerAction_Status int32
@@ -546,11 +1001,11 @@ func (x MerchantPaymentPartnerAction_Status) String() string {
}
func (MerchantPaymentPartnerAction_Status) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[8].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[12].Descriptor()
}
func (MerchantPaymentPartnerAction_Status) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[8]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[12]
}
func (x MerchantPaymentPartnerAction_Status) Number() protoreflect.EnumNumber {
@@ -569,60 +1024,7 @@ func (x *MerchantPaymentPartnerAction_Status) UnmarshalJSON(b []byte) error {
// Deprecated: Use MerchantPaymentPartnerAction_Status.Descriptor instead.
func (MerchantPaymentPartnerAction_Status) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{6, 0}
-}
-
-type GalaxyFlowAction_GalaxyFlowActionType int32
-
-const (
- GalaxyFlowAction_LAUNCH GalaxyFlowAction_GalaxyFlowActionType = 1
-)
-
-// Enum value maps for GalaxyFlowAction_GalaxyFlowActionType.
-var (
- GalaxyFlowAction_GalaxyFlowActionType_name = map[int32]string{
- 1: "LAUNCH",
- }
- GalaxyFlowAction_GalaxyFlowActionType_value = map[string]int32{
- "LAUNCH": 1,
- }
-)
-
-func (x GalaxyFlowAction_GalaxyFlowActionType) Enum() *GalaxyFlowAction_GalaxyFlowActionType {
- p := new(GalaxyFlowAction_GalaxyFlowActionType)
- *p = x
- return p
-}
-
-func (x GalaxyFlowAction_GalaxyFlowActionType) String() string {
- return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (GalaxyFlowAction_GalaxyFlowActionType) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[9].Descriptor()
-}
-
-func (GalaxyFlowAction_GalaxyFlowActionType) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[9]
-}
-
-func (x GalaxyFlowAction_GalaxyFlowActionType) Number() protoreflect.EnumNumber {
- return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Do not use.
-func (x *GalaxyFlowAction_GalaxyFlowActionType) UnmarshalJSON(b []byte) error {
- num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
- if err != nil {
- return err
- }
- *x = GalaxyFlowAction_GalaxyFlowActionType(num)
- return nil
-}
-
-// Deprecated: Use GalaxyFlowAction_GalaxyFlowActionType.Descriptor instead.
-func (GalaxyFlowAction_GalaxyFlowActionType) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{7, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{8, 0}
}
type NoteEditAction_NoteType int32
@@ -655,11 +1057,11 @@ func (x NoteEditAction_NoteType) String() string {
}
func (NoteEditAction_NoteType) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[10].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[13].Descriptor()
}
func (NoteEditAction_NoteType) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[10]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[13]
}
func (x NoteEditAction_NoteType) Number() protoreflect.EnumNumber {
@@ -678,15 +1080,16 @@ func (x *NoteEditAction_NoteType) UnmarshalJSON(b []byte) error {
// Deprecated: Use NoteEditAction_NoteType.Descriptor instead.
func (NoteEditAction_NoteType) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{8, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{9, 0}
}
type StatusPrivacyAction_StatusDistributionMode int32
const (
- StatusPrivacyAction_ALLOW_LIST StatusPrivacyAction_StatusDistributionMode = 0
- StatusPrivacyAction_DENY_LIST StatusPrivacyAction_StatusDistributionMode = 1
- StatusPrivacyAction_CONTACTS StatusPrivacyAction_StatusDistributionMode = 2
+ StatusPrivacyAction_ALLOW_LIST StatusPrivacyAction_StatusDistributionMode = 0
+ StatusPrivacyAction_DENY_LIST StatusPrivacyAction_StatusDistributionMode = 1
+ StatusPrivacyAction_CONTACTS StatusPrivacyAction_StatusDistributionMode = 2
+ StatusPrivacyAction_CLOSE_FRIENDS StatusPrivacyAction_StatusDistributionMode = 3
)
// Enum value maps for StatusPrivacyAction_StatusDistributionMode.
@@ -695,11 +1098,13 @@ var (
0: "ALLOW_LIST",
1: "DENY_LIST",
2: "CONTACTS",
+ 3: "CLOSE_FRIENDS",
}
StatusPrivacyAction_StatusDistributionMode_value = map[string]int32{
- "ALLOW_LIST": 0,
- "DENY_LIST": 1,
- "CONTACTS": 2,
+ "ALLOW_LIST": 0,
+ "DENY_LIST": 1,
+ "CONTACTS": 2,
+ "CLOSE_FRIENDS": 3,
}
)
@@ -714,11 +1119,11 @@ func (x StatusPrivacyAction_StatusDistributionMode) String() string {
}
func (StatusPrivacyAction_StatusDistributionMode) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[11].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[14].Descriptor()
}
func (StatusPrivacyAction_StatusDistributionMode) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[11]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[14]
}
func (x StatusPrivacyAction_StatusDistributionMode) Number() protoreflect.EnumNumber {
@@ -737,7 +1142,7 @@ func (x *StatusPrivacyAction_StatusDistributionMode) UnmarshalJSON(b []byte) err
// Deprecated: Use StatusPrivacyAction_StatusDistributionMode.Descriptor instead.
func (StatusPrivacyAction_StatusDistributionMode) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{9, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{10, 0}
}
type MarketingMessageAction_MarketingMessagePrototypeType int32
@@ -767,11 +1172,11 @@ func (x MarketingMessageAction_MarketingMessagePrototypeType) String() string {
}
func (MarketingMessageAction_MarketingMessagePrototypeType) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[12].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[15].Descriptor()
}
func (MarketingMessageAction_MarketingMessagePrototypeType) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[12]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[15]
}
func (x MarketingMessageAction_MarketingMessagePrototypeType) Number() protoreflect.EnumNumber {
@@ -790,7 +1195,7 @@ func (x *MarketingMessageAction_MarketingMessagePrototypeType) UnmarshalJSON(b [
// Deprecated: Use MarketingMessageAction_MarketingMessagePrototypeType.Descriptor instead.
func (MarketingMessageAction_MarketingMessagePrototypeType) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{10, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{11, 0}
}
type UsernameChatStartModeAction_ChatStartMode int32
@@ -823,11 +1228,11 @@ func (x UsernameChatStartModeAction_ChatStartMode) String() string {
}
func (UsernameChatStartModeAction_ChatStartMode) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[13].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[16].Descriptor()
}
func (UsernameChatStartModeAction_ChatStartMode) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[13]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[16]
}
func (x UsernameChatStartModeAction_ChatStartMode) Number() protoreflect.EnumNumber {
@@ -846,7 +1251,7 @@ func (x *UsernameChatStartModeAction_ChatStartMode) UnmarshalJSON(b []byte) erro
// Deprecated: Use UsernameChatStartModeAction_ChatStartMode.Descriptor instead.
func (UsernameChatStartModeAction_ChatStartMode) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{11, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{12, 0}
}
type LabelEditAction_ListType int32
@@ -860,6 +1265,8 @@ const (
LabelEditAction_CUSTOM LabelEditAction_ListType = 5
LabelEditAction_COMMUNITY LabelEditAction_ListType = 6
LabelEditAction_SERVER_ASSIGNED LabelEditAction_ListType = 7
+ LabelEditAction_DRAFTED LabelEditAction_ListType = 8
+ LabelEditAction_AI_HANDOFF LabelEditAction_ListType = 9
)
// Enum value maps for LabelEditAction_ListType.
@@ -873,6 +1280,8 @@ var (
5: "CUSTOM",
6: "COMMUNITY",
7: "SERVER_ASSIGNED",
+ 8: "DRAFTED",
+ 9: "AI_HANDOFF",
}
LabelEditAction_ListType_value = map[string]int32{
"NONE": 0,
@@ -883,6 +1292,8 @@ var (
"CUSTOM": 5,
"COMMUNITY": 6,
"SERVER_ASSIGNED": 7,
+ "DRAFTED": 8,
+ "AI_HANDOFF": 9,
}
)
@@ -897,11 +1308,11 @@ func (x LabelEditAction_ListType) String() string {
}
func (LabelEditAction_ListType) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[14].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[17].Descriptor()
}
func (LabelEditAction_ListType) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[14]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[17]
}
func (x LabelEditAction_ListType) Number() protoreflect.EnumNumber {
@@ -920,7 +1331,7 @@ func (x *LabelEditAction_ListType) UnmarshalJSON(b []byte) error {
// Deprecated: Use LabelEditAction_ListType.Descriptor instead.
func (LabelEditAction_ListType) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{12, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{13, 0}
}
type PatchDebugData_Platform int32
@@ -983,11 +1394,11 @@ func (x PatchDebugData_Platform) String() string {
}
func (PatchDebugData_Platform) Descriptor() protoreflect.EnumDescriptor {
- return file_waSyncAction_WASyncAction_proto_enumTypes[15].Descriptor()
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[18].Descriptor()
}
func (PatchDebugData_Platform) Type() protoreflect.EnumType {
- return &file_waSyncAction_WASyncAction_proto_enumTypes[15]
+ return &file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes[18]
}
func (x PatchDebugData_Platform) Number() protoreflect.EnumNumber {
@@ -1006,14 +1417,14 @@ func (x *PatchDebugData_Platform) UnmarshalJSON(b []byte) error {
// Deprecated: Use PatchDebugData_Platform.Descriptor instead.
func (PatchDebugData_Platform) EnumDescriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{13, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{14, 0}
}
type CallLogRecord struct {
state protoimpl.MessageState `protogen:"open.v1"`
- CallResult *CallLogRecord_CallResult `protobuf:"varint,1,opt,name=callResult,enum=WASyncAction.CallLogRecord_CallResult" json:"callResult,omitempty"`
+ CallResult *CallLogRecord_CallResult `protobuf:"varint,1,opt,name=callResult,enum=WAWebProtobufSyncAction.CallLogRecord_CallResult" json:"callResult,omitempty"`
IsDndMode *bool `protobuf:"varint,2,opt,name=isDndMode" json:"isDndMode,omitempty"`
- SilenceReason *CallLogRecord_SilenceReason `protobuf:"varint,3,opt,name=silenceReason,enum=WASyncAction.CallLogRecord_SilenceReason" json:"silenceReason,omitempty"`
+ SilenceReason *CallLogRecord_SilenceReason `protobuf:"varint,3,opt,name=silenceReason,enum=WAWebProtobufSyncAction.CallLogRecord_SilenceReason" json:"silenceReason,omitempty"`
Duration *int64 `protobuf:"varint,4,opt,name=duration" json:"duration,omitempty"`
StartTime *int64 `protobuf:"varint,5,opt,name=startTime" json:"startTime,omitempty"`
IsIncoming *bool `protobuf:"varint,6,opt,name=isIncoming" json:"isIncoming,omitempty"`
@@ -1025,14 +1436,14 @@ type CallLogRecord struct {
CallCreatorJID *string `protobuf:"bytes,12,opt,name=callCreatorJID" json:"callCreatorJID,omitempty"`
GroupJID *string `protobuf:"bytes,13,opt,name=groupJID" json:"groupJID,omitempty"`
Participants []*CallLogRecord_ParticipantInfo `protobuf:"bytes,14,rep,name=participants" json:"participants,omitempty"`
- CallType *CallLogRecord_CallType `protobuf:"varint,15,opt,name=callType,enum=WASyncAction.CallLogRecord_CallType" json:"callType,omitempty"`
+ CallType *CallLogRecord_CallType `protobuf:"varint,15,opt,name=callType,enum=WAWebProtobufSyncAction.CallLogRecord_CallType" json:"callType,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CallLogRecord) Reset() {
*x = CallLogRecord{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[0]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1044,7 +1455,7 @@ func (x *CallLogRecord) String() string {
func (*CallLogRecord) ProtoMessage() {}
func (x *CallLogRecord) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[0]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1057,7 +1468,7 @@ func (x *CallLogRecord) ProtoReflect() protoreflect.Message {
// Deprecated: Use CallLogRecord.ProtoReflect.Descriptor instead.
func (*CallLogRecord) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{0}
}
func (x *CallLogRecord) GetCallResult() CallLogRecord_CallResult {
@@ -1165,9 +1576,97 @@ func (x *CallLogRecord) GetCallType() CallLogRecord_CallType {
return CallLogRecord_REGULAR
}
+type InteractiveMessageAction struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Type *InteractiveMessageAction_InteractiveMessageActionMode `protobuf:"varint,1,req,name=type,enum=WAWebProtobufSyncAction.InteractiveMessageAction_InteractiveMessageActionMode" json:"type,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *InteractiveMessageAction) Reset() {
+ *x = InteractiveMessageAction{}
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *InteractiveMessageAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InteractiveMessageAction) ProtoMessage() {}
+
+func (x *InteractiveMessageAction) ProtoReflect() protoreflect.Message {
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use InteractiveMessageAction.ProtoReflect.Descriptor instead.
+func (*InteractiveMessageAction) Descriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *InteractiveMessageAction) GetType() InteractiveMessageAction_InteractiveMessageActionMode {
+ if x != nil && x.Type != nil {
+ return *x.Type
+ }
+ return InteractiveMessageAction_DISABLE_CTA
+}
+
+type PrivateProcessingSettingAction struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ PrivateProcessingStatus *PrivateProcessingSettingAction_PrivateProcessingStatus `protobuf:"varint,1,opt,name=privateProcessingStatus,enum=WAWebProtobufSyncAction.PrivateProcessingSettingAction_PrivateProcessingStatus" json:"privateProcessingStatus,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *PrivateProcessingSettingAction) Reset() {
+ *x = PrivateProcessingSettingAction{}
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *PrivateProcessingSettingAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PrivateProcessingSettingAction) ProtoMessage() {}
+
+func (x *PrivateProcessingSettingAction) ProtoReflect() protoreflect.Message {
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[2]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PrivateProcessingSettingAction.ProtoReflect.Descriptor instead.
+func (*PrivateProcessingSettingAction) Descriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *PrivateProcessingSettingAction) GetPrivateProcessingStatus() PrivateProcessingSettingAction_PrivateProcessingStatus {
+ if x != nil && x.PrivateProcessingStatus != nil {
+ return *x.PrivateProcessingStatus
+ }
+ return PrivateProcessingSettingAction_UNDEFINED
+}
+
type AvatarUpdatedAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- EventType *AvatarUpdatedAction_AvatarEventType `protobuf:"varint,1,opt,name=eventType,enum=WASyncAction.AvatarUpdatedAction_AvatarEventType" json:"eventType,omitempty"`
+ EventType *AvatarUpdatedAction_AvatarEventType `protobuf:"varint,1,opt,name=eventType,enum=WAWebProtobufSyncAction.AvatarUpdatedAction_AvatarEventType" json:"eventType,omitempty"`
RecentAvatarStickers []*StickerAction `protobuf:"bytes,2,rep,name=recentAvatarStickers" json:"recentAvatarStickers,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
@@ -1175,7 +1674,7 @@ type AvatarUpdatedAction struct {
func (x *AvatarUpdatedAction) Reset() {
*x = AvatarUpdatedAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[1]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1187,7 +1686,7 @@ func (x *AvatarUpdatedAction) String() string {
func (*AvatarUpdatedAction) ProtoMessage() {}
func (x *AvatarUpdatedAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[1]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[3]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1200,7 +1699,7 @@ func (x *AvatarUpdatedAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use AvatarUpdatedAction.ProtoReflect.Descriptor instead.
func (*AvatarUpdatedAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{1}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{3}
}
func (x *AvatarUpdatedAction) GetEventType() AvatarUpdatedAction_AvatarEventType {
@@ -1219,14 +1718,14 @@ func (x *AvatarUpdatedAction) GetRecentAvatarStickers() []*StickerAction {
type MaibaAIFeaturesControlAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- AiFeatureStatus *MaibaAIFeaturesControlAction_MaibaAIFeatureStatus `protobuf:"varint,1,opt,name=aiFeatureStatus,enum=WASyncAction.MaibaAIFeaturesControlAction_MaibaAIFeatureStatus" json:"aiFeatureStatus,omitempty"`
+ AiFeatureStatus *MaibaAIFeaturesControlAction_MaibaAIFeatureStatus `protobuf:"varint,1,opt,name=aiFeatureStatus,enum=WAWebProtobufSyncAction.MaibaAIFeaturesControlAction_MaibaAIFeatureStatus" json:"aiFeatureStatus,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *MaibaAIFeaturesControlAction) Reset() {
*x = MaibaAIFeaturesControlAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[2]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1238,7 +1737,7 @@ func (x *MaibaAIFeaturesControlAction) String() string {
func (*MaibaAIFeaturesControlAction) ProtoMessage() {}
func (x *MaibaAIFeaturesControlAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[2]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[4]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1251,7 +1750,7 @@ func (x *MaibaAIFeaturesControlAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MaibaAIFeaturesControlAction.ProtoReflect.Descriptor instead.
func (*MaibaAIFeaturesControlAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{2}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{4}
}
func (x *MaibaAIFeaturesControlAction) GetAiFeatureStatus() MaibaAIFeaturesControlAction_MaibaAIFeatureStatus {
@@ -1263,7 +1762,7 @@ func (x *MaibaAIFeaturesControlAction) GetAiFeatureStatus() MaibaAIFeaturesContr
type PaymentTosAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- PaymentNotice *PaymentTosAction_PaymentNotice `protobuf:"varint,1,req,name=paymentNotice,enum=WASyncAction.PaymentTosAction_PaymentNotice" json:"paymentNotice,omitempty"`
+ PaymentNotice *PaymentTosAction_PaymentNotice `protobuf:"varint,1,req,name=paymentNotice,enum=WAWebProtobufSyncAction.PaymentTosAction_PaymentNotice" json:"paymentNotice,omitempty"`
Accepted *bool `protobuf:"varint,2,req,name=accepted" json:"accepted,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
@@ -1271,7 +1770,7 @@ type PaymentTosAction struct {
func (x *PaymentTosAction) Reset() {
*x = PaymentTosAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[3]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1283,7 +1782,7 @@ func (x *PaymentTosAction) String() string {
func (*PaymentTosAction) ProtoMessage() {}
func (x *PaymentTosAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[3]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[5]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1296,7 +1795,7 @@ func (x *PaymentTosAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use PaymentTosAction.ProtoReflect.Descriptor instead.
func (*PaymentTosAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{3}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{5}
}
func (x *PaymentTosAction) GetPaymentNotice() PaymentTosAction_PaymentNotice {
@@ -1315,14 +1814,14 @@ func (x *PaymentTosAction) GetAccepted() bool {
type NotificationActivitySettingAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- NotificationActivitySetting *NotificationActivitySettingAction_NotificationActivitySetting `protobuf:"varint,1,opt,name=notificationActivitySetting,enum=WASyncAction.NotificationActivitySettingAction_NotificationActivitySetting" json:"notificationActivitySetting,omitempty"`
+ NotificationActivitySetting *NotificationActivitySettingAction_NotificationActivitySetting `protobuf:"varint,1,opt,name=notificationActivitySetting,enum=WAWebProtobufSyncAction.NotificationActivitySettingAction_NotificationActivitySetting" json:"notificationActivitySetting,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *NotificationActivitySettingAction) Reset() {
*x = NotificationActivitySettingAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[4]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1334,7 +1833,7 @@ func (x *NotificationActivitySettingAction) String() string {
func (*NotificationActivitySettingAction) ProtoMessage() {}
func (x *NotificationActivitySettingAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[4]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[6]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1347,7 +1846,7 @@ func (x *NotificationActivitySettingAction) ProtoReflect() protoreflect.Message
// Deprecated: Use NotificationActivitySettingAction.ProtoReflect.Descriptor instead.
func (*NotificationActivitySettingAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{4}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{6}
}
func (x *NotificationActivitySettingAction) GetNotificationActivitySetting() NotificationActivitySettingAction_NotificationActivitySetting {
@@ -1359,14 +1858,14 @@ func (x *NotificationActivitySettingAction) GetNotificationActivitySetting() Not
type WaffleAccountLinkStateAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- LinkState *WaffleAccountLinkStateAction_AccountLinkState `protobuf:"varint,2,opt,name=linkState,enum=WASyncAction.WaffleAccountLinkStateAction_AccountLinkState" json:"linkState,omitempty"`
+ LinkState *WaffleAccountLinkStateAction_AccountLinkState `protobuf:"varint,2,opt,name=linkState,enum=WAWebProtobufSyncAction.WaffleAccountLinkStateAction_AccountLinkState" json:"linkState,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *WaffleAccountLinkStateAction) Reset() {
*x = WaffleAccountLinkStateAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[5]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1378,7 +1877,7 @@ func (x *WaffleAccountLinkStateAction) String() string {
func (*WaffleAccountLinkStateAction) ProtoMessage() {}
func (x *WaffleAccountLinkStateAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[5]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[7]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1391,7 +1890,7 @@ func (x *WaffleAccountLinkStateAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use WaffleAccountLinkStateAction.ProtoReflect.Descriptor instead.
func (*WaffleAccountLinkStateAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{5}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{7}
}
func (x *WaffleAccountLinkStateAction) GetLinkState() WaffleAccountLinkStateAction_AccountLinkState {
@@ -1403,7 +1902,7 @@ func (x *WaffleAccountLinkStateAction) GetLinkState() WaffleAccountLinkStateActi
type MerchantPaymentPartnerAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- Status *MerchantPaymentPartnerAction_Status `protobuf:"varint,1,req,name=status,enum=WASyncAction.MerchantPaymentPartnerAction_Status" json:"status,omitempty"`
+ Status *MerchantPaymentPartnerAction_Status `protobuf:"varint,1,req,name=status,enum=WAWebProtobufSyncAction.MerchantPaymentPartnerAction_Status" json:"status,omitempty"`
Country *string `protobuf:"bytes,2,req,name=country" json:"country,omitempty"`
GatewayName *string `protobuf:"bytes,3,opt,name=gatewayName" json:"gatewayName,omitempty"`
CredentialID *string `protobuf:"bytes,4,opt,name=credentialID" json:"credentialID,omitempty"`
@@ -1413,7 +1912,7 @@ type MerchantPaymentPartnerAction struct {
func (x *MerchantPaymentPartnerAction) Reset() {
*x = MerchantPaymentPartnerAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[6]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1425,7 +1924,7 @@ func (x *MerchantPaymentPartnerAction) String() string {
func (*MerchantPaymentPartnerAction) ProtoMessage() {}
func (x *MerchantPaymentPartnerAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[6]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[8]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1438,7 +1937,7 @@ func (x *MerchantPaymentPartnerAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MerchantPaymentPartnerAction.ProtoReflect.Descriptor instead.
func (*MerchantPaymentPartnerAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{6}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{8}
}
func (x *MerchantPaymentPartnerAction) GetStatus() MerchantPaymentPartnerAction_Status {
@@ -1469,53 +1968,9 @@ func (x *MerchantPaymentPartnerAction) GetCredentialID() string {
return ""
}
-type GalaxyFlowAction struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- Type *GalaxyFlowAction_GalaxyFlowActionType `protobuf:"varint,1,req,name=type,enum=WASyncAction.GalaxyFlowAction_GalaxyFlowActionType" json:"type,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *GalaxyFlowAction) Reset() {
- *x = GalaxyFlowAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[7]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *GalaxyFlowAction) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*GalaxyFlowAction) ProtoMessage() {}
-
-func (x *GalaxyFlowAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[7]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use GalaxyFlowAction.ProtoReflect.Descriptor instead.
-func (*GalaxyFlowAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{7}
-}
-
-func (x *GalaxyFlowAction) GetType() GalaxyFlowAction_GalaxyFlowActionType {
- if x != nil && x.Type != nil {
- return *x.Type
- }
- return GalaxyFlowAction_LAUNCH
-}
-
type NoteEditAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- Type *NoteEditAction_NoteType `protobuf:"varint,1,opt,name=type,enum=WASyncAction.NoteEditAction_NoteType" json:"type,omitempty"`
+ Type *NoteEditAction_NoteType `protobuf:"varint,1,opt,name=type,enum=WAWebProtobufSyncAction.NoteEditAction_NoteType" json:"type,omitempty"`
ChatJID *string `protobuf:"bytes,2,opt,name=chatJID" json:"chatJID,omitempty"`
CreatedAt *int64 `protobuf:"varint,3,opt,name=createdAt" json:"createdAt,omitempty"`
Deleted *bool `protobuf:"varint,4,opt,name=deleted" json:"deleted,omitempty"`
@@ -1526,7 +1981,7 @@ type NoteEditAction struct {
func (x *NoteEditAction) Reset() {
*x = NoteEditAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[8]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1538,7 +1993,7 @@ func (x *NoteEditAction) String() string {
func (*NoteEditAction) ProtoMessage() {}
func (x *NoteEditAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[8]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[9]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1551,7 +2006,7 @@ func (x *NoteEditAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use NoteEditAction.ProtoReflect.Descriptor instead.
func (*NoteEditAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{8}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{9}
}
func (x *NoteEditAction) GetType() NoteEditAction_NoteType {
@@ -1591,7 +2046,7 @@ func (x *NoteEditAction) GetUnstructuredContent() string {
type StatusPrivacyAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- Mode *StatusPrivacyAction_StatusDistributionMode `protobuf:"varint,1,opt,name=mode,enum=WASyncAction.StatusPrivacyAction_StatusDistributionMode" json:"mode,omitempty"`
+ Mode *StatusPrivacyAction_StatusDistributionMode `protobuf:"varint,1,opt,name=mode,enum=WAWebProtobufSyncAction.StatusPrivacyAction_StatusDistributionMode" json:"mode,omitempty"`
UserJID []string `protobuf:"bytes,2,rep,name=userJID" json:"userJID,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
@@ -1599,7 +2054,7 @@ type StatusPrivacyAction struct {
func (x *StatusPrivacyAction) Reset() {
*x = StatusPrivacyAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[9]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1611,7 +2066,7 @@ func (x *StatusPrivacyAction) String() string {
func (*StatusPrivacyAction) ProtoMessage() {}
func (x *StatusPrivacyAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[9]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[10]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1624,7 +2079,7 @@ func (x *StatusPrivacyAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use StatusPrivacyAction.ProtoReflect.Descriptor instead.
func (*StatusPrivacyAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{9}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{10}
}
func (x *StatusPrivacyAction) GetMode() StatusPrivacyAction_StatusDistributionMode {
@@ -1645,7 +2100,7 @@ type MarketingMessageAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
Message *string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
- Type *MarketingMessageAction_MarketingMessagePrototypeType `protobuf:"varint,3,opt,name=type,enum=WASyncAction.MarketingMessageAction_MarketingMessagePrototypeType" json:"type,omitempty"`
+ Type *MarketingMessageAction_MarketingMessagePrototypeType `protobuf:"varint,3,opt,name=type,enum=WAWebProtobufSyncAction.MarketingMessageAction_MarketingMessagePrototypeType" json:"type,omitempty"`
CreatedAt *int64 `protobuf:"varint,4,opt,name=createdAt" json:"createdAt,omitempty"`
LastSentAt *int64 `protobuf:"varint,5,opt,name=lastSentAt" json:"lastSentAt,omitempty"`
IsDeleted *bool `protobuf:"varint,6,opt,name=isDeleted" json:"isDeleted,omitempty"`
@@ -1656,7 +2111,7 @@ type MarketingMessageAction struct {
func (x *MarketingMessageAction) Reset() {
*x = MarketingMessageAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[10]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1668,7 +2123,7 @@ func (x *MarketingMessageAction) String() string {
func (*MarketingMessageAction) ProtoMessage() {}
func (x *MarketingMessageAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[10]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[11]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1681,7 +2136,7 @@ func (x *MarketingMessageAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MarketingMessageAction.ProtoReflect.Descriptor instead.
func (*MarketingMessageAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{10}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{11}
}
func (x *MarketingMessageAction) GetName() string {
@@ -1735,14 +2190,14 @@ func (x *MarketingMessageAction) GetMediaID() string {
type UsernameChatStartModeAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
- ChatStartMode *UsernameChatStartModeAction_ChatStartMode `protobuf:"varint,1,opt,name=chatStartMode,enum=WASyncAction.UsernameChatStartModeAction_ChatStartMode" json:"chatStartMode,omitempty"`
+ ChatStartMode *UsernameChatStartModeAction_ChatStartMode `protobuf:"varint,1,opt,name=chatStartMode,enum=WAWebProtobufSyncAction.UsernameChatStartModeAction_ChatStartMode" json:"chatStartMode,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UsernameChatStartModeAction) Reset() {
*x = UsernameChatStartModeAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[11]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1754,7 +2209,7 @@ func (x *UsernameChatStartModeAction) String() string {
func (*UsernameChatStartModeAction) ProtoMessage() {}
func (x *UsernameChatStartModeAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[11]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[12]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1767,7 +2222,7 @@ func (x *UsernameChatStartModeAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use UsernameChatStartModeAction.ProtoReflect.Descriptor instead.
func (*UsernameChatStartModeAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{11}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{12}
}
func (x *UsernameChatStartModeAction) GetChatStartMode() UsernameChatStartModeAction_ChatStartMode {
@@ -1785,15 +2240,16 @@ type LabelEditAction struct {
Deleted *bool `protobuf:"varint,4,opt,name=deleted" json:"deleted,omitempty"`
OrderIndex *int32 `protobuf:"varint,5,opt,name=orderIndex" json:"orderIndex,omitempty"`
IsActive *bool `protobuf:"varint,6,opt,name=isActive" json:"isActive,omitempty"`
- Type *LabelEditAction_ListType `protobuf:"varint,7,opt,name=type,enum=WASyncAction.LabelEditAction_ListType" json:"type,omitempty"`
+ Type *LabelEditAction_ListType `protobuf:"varint,7,opt,name=type,enum=WAWebProtobufSyncAction.LabelEditAction_ListType" json:"type,omitempty"`
IsImmutable *bool `protobuf:"varint,8,opt,name=isImmutable" json:"isImmutable,omitempty"`
+ MuteEndTimeMS *int64 `protobuf:"varint,9,opt,name=muteEndTimeMS" json:"muteEndTimeMS,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LabelEditAction) Reset() {
*x = LabelEditAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[12]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1805,7 +2261,7 @@ func (x *LabelEditAction) String() string {
func (*LabelEditAction) ProtoMessage() {}
func (x *LabelEditAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[12]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[13]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1818,7 +2274,7 @@ func (x *LabelEditAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use LabelEditAction.ProtoReflect.Descriptor instead.
func (*LabelEditAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{12}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{13}
}
func (x *LabelEditAction) GetName() string {
@@ -1877,6 +2333,13 @@ func (x *LabelEditAction) GetIsImmutable() bool {
return false
}
+func (x *LabelEditAction) GetMuteEndTimeMS() int64 {
+ if x != nil && x.MuteEndTimeMS != nil {
+ return *x.MuteEndTimeMS
+ }
+ return 0
+}
+
type PatchDebugData struct {
state protoimpl.MessageState `protogen:"open.v1"`
CurrentLthash []byte `protobuf:"bytes,1,opt,name=currentLthash" json:"currentLthash,omitempty"`
@@ -1888,7 +2351,7 @@ type PatchDebugData struct {
NumberAdd *int32 `protobuf:"varint,7,opt,name=numberAdd" json:"numberAdd,omitempty"`
NumberRemove *int32 `protobuf:"varint,8,opt,name=numberRemove" json:"numberRemove,omitempty"`
NumberOverride *int32 `protobuf:"varint,9,opt,name=numberOverride" json:"numberOverride,omitempty"`
- SenderPlatform *PatchDebugData_Platform `protobuf:"varint,10,opt,name=senderPlatform,enum=WASyncAction.PatchDebugData_Platform" json:"senderPlatform,omitempty"`
+ SenderPlatform *PatchDebugData_Platform `protobuf:"varint,10,opt,name=senderPlatform,enum=WAWebProtobufSyncAction.PatchDebugData_Platform" json:"senderPlatform,omitempty"`
IsSenderPrimary *bool `protobuf:"varint,11,opt,name=isSenderPrimary" json:"isSenderPrimary,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
@@ -1896,7 +2359,7 @@ type PatchDebugData struct {
func (x *PatchDebugData) Reset() {
*x = PatchDebugData{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[13]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1908,7 +2371,7 @@ func (x *PatchDebugData) String() string {
func (*PatchDebugData) ProtoMessage() {}
func (x *PatchDebugData) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[13]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[14]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1921,7 +2384,7 @@ func (x *PatchDebugData) ProtoReflect() protoreflect.Message {
// Deprecated: Use PatchDebugData.ProtoReflect.Descriptor instead.
func (*PatchDebugData) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{13}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{14}
}
func (x *PatchDebugData) GetCurrentLthash() []byte {
@@ -2011,7 +2474,7 @@ type RecentEmojiWeight struct {
func (x *RecentEmojiWeight) Reset() {
*x = RecentEmojiWeight{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[14]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2023,7 +2486,7 @@ func (x *RecentEmojiWeight) String() string {
func (*RecentEmojiWeight) ProtoMessage() {}
func (x *RecentEmojiWeight) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[14]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[15]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2036,7 +2499,7 @@ func (x *RecentEmojiWeight) ProtoReflect() protoreflect.Message {
// Deprecated: Use RecentEmojiWeight.ProtoReflect.Descriptor instead.
func (*RecentEmojiWeight) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{14}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{15}
}
func (x *RecentEmojiWeight) GetEmoji() string {
@@ -2060,7 +2523,6 @@ type SyncActionValue struct {
ContactAction *ContactAction `protobuf:"bytes,3,opt,name=contactAction" json:"contactAction,omitempty"`
MuteAction *MuteAction `protobuf:"bytes,4,opt,name=muteAction" json:"muteAction,omitempty"`
PinAction *PinAction `protobuf:"bytes,5,opt,name=pinAction" json:"pinAction,omitempty"`
- SecurityNotificationSetting *SecurityNotificationSetting `protobuf:"bytes,6,opt,name=securityNotificationSetting" json:"securityNotificationSetting,omitempty"`
PushNameSetting *PushNameSetting `protobuf:"bytes,7,opt,name=pushNameSetting" json:"pushNameSetting,omitempty"`
QuickReplyAction *QuickReplyAction `protobuf:"bytes,8,opt,name=quickReplyAction" json:"quickReplyAction,omitempty"`
RecentEmojiWeightsAction *RecentEmojiWeightsAction `protobuf:"bytes,11,opt,name=recentEmojiWeightsAction" json:"recentEmojiWeightsAction,omitempty"`
@@ -2092,6 +2554,7 @@ type SyncActionValue struct {
ExternalWebBetaAction *ExternalWebBetaAction `protobuf:"bytes,40,opt,name=externalWebBetaAction" json:"externalWebBetaAction,omitempty"`
PrivacySettingRelayAllCalls *PrivacySettingRelayAllCalls `protobuf:"bytes,41,opt,name=privacySettingRelayAllCalls" json:"privacySettingRelayAllCalls,omitempty"`
CallLogAction *CallLogAction `protobuf:"bytes,42,opt,name=callLogAction" json:"callLogAction,omitempty"`
+ UgcBot *UGCBot `protobuf:"bytes,43,opt,name=ugcBot" json:"ugcBot,omitempty"`
StatusPrivacy *StatusPrivacyAction `protobuf:"bytes,44,opt,name=statusPrivacy" json:"statusPrivacy,omitempty"`
BotWelcomeRequestAction *BotWelcomeRequestAction `protobuf:"bytes,45,opt,name=botWelcomeRequestAction" json:"botWelcomeRequestAction,omitempty"`
DeleteIndividualCallLog *DeleteIndividualCallLogAction `protobuf:"bytes,46,opt,name=deleteIndividualCallLog" json:"deleteIndividualCallLog,omitempty"`
@@ -2120,14 +2583,17 @@ type SyncActionValue struct {
MusicUserIDAction *MusicUserIdAction `protobuf:"bytes,70,opt,name=musicUserIDAction" json:"musicUserIDAction,omitempty"`
StatusPostOptInNotificationPreferencesAction *StatusPostOptInNotificationPreferencesAction `protobuf:"bytes,71,opt,name=statusPostOptInNotificationPreferencesAction" json:"statusPostOptInNotificationPreferencesAction,omitempty"`
AvatarUpdatedAction *AvatarUpdatedAction `protobuf:"bytes,72,opt,name=avatarUpdatedAction" json:"avatarUpdatedAction,omitempty"`
- GalaxyFlowAction *GalaxyFlowAction `protobuf:"bytes,73,opt,name=galaxyFlowAction" json:"galaxyFlowAction,omitempty"`
+ PrivateProcessingSettingAction *PrivateProcessingSettingAction `protobuf:"bytes,74,opt,name=privateProcessingSettingAction" json:"privateProcessingSettingAction,omitempty"`
+ NewsletterSavedInterestsAction *NewsletterSavedInterestsAction `protobuf:"bytes,75,opt,name=newsletterSavedInterestsAction" json:"newsletterSavedInterestsAction,omitempty"`
+ AiThreadRenameAction *AiThreadRenameAction `protobuf:"bytes,76,opt,name=aiThreadRenameAction" json:"aiThreadRenameAction,omitempty"`
+ InteractiveMessageAction *InteractiveMessageAction `protobuf:"bytes,77,opt,name=interactiveMessageAction" json:"interactiveMessageAction,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SyncActionValue) Reset() {
*x = SyncActionValue{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[15]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2139,7 +2605,7 @@ func (x *SyncActionValue) String() string {
func (*SyncActionValue) ProtoMessage() {}
func (x *SyncActionValue) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[15]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[16]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2152,7 +2618,7 @@ func (x *SyncActionValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use SyncActionValue.ProtoReflect.Descriptor instead.
func (*SyncActionValue) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{15}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{16}
}
func (x *SyncActionValue) GetTimestamp() int64 {
@@ -2190,13 +2656,6 @@ func (x *SyncActionValue) GetPinAction() *PinAction {
return nil
}
-func (x *SyncActionValue) GetSecurityNotificationSetting() *SecurityNotificationSetting {
- if x != nil {
- return x.SecurityNotificationSetting
- }
- return nil
-}
-
func (x *SyncActionValue) GetPushNameSetting() *PushNameSetting {
if x != nil {
return x.PushNameSetting
@@ -2414,6 +2873,13 @@ func (x *SyncActionValue) GetCallLogAction() *CallLogAction {
return nil
}
+func (x *SyncActionValue) GetUgcBot() *UGCBot {
+ if x != nil {
+ return x.UgcBot
+ }
+ return nil
+}
+
func (x *SyncActionValue) GetStatusPrivacy() *StatusPrivacyAction {
if x != nil {
return x.StatusPrivacy
@@ -2610,13 +3076,78 @@ func (x *SyncActionValue) GetAvatarUpdatedAction() *AvatarUpdatedAction {
return nil
}
-func (x *SyncActionValue) GetGalaxyFlowAction() *GalaxyFlowAction {
+func (x *SyncActionValue) GetPrivateProcessingSettingAction() *PrivateProcessingSettingAction {
if x != nil {
- return x.GalaxyFlowAction
+ return x.PrivateProcessingSettingAction
}
return nil
}
+func (x *SyncActionValue) GetNewsletterSavedInterestsAction() *NewsletterSavedInterestsAction {
+ if x != nil {
+ return x.NewsletterSavedInterestsAction
+ }
+ return nil
+}
+
+func (x *SyncActionValue) GetAiThreadRenameAction() *AiThreadRenameAction {
+ if x != nil {
+ return x.AiThreadRenameAction
+ }
+ return nil
+}
+
+func (x *SyncActionValue) GetInteractiveMessageAction() *InteractiveMessageAction {
+ if x != nil {
+ return x.InteractiveMessageAction
+ }
+ return nil
+}
+
+type AiThreadRenameAction struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ NewTitle *string `protobuf:"bytes,1,opt,name=newTitle" json:"newTitle,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AiThreadRenameAction) Reset() {
+ *x = AiThreadRenameAction{}
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AiThreadRenameAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AiThreadRenameAction) ProtoMessage() {}
+
+func (x *AiThreadRenameAction) ProtoReflect() protoreflect.Message {
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[17]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AiThreadRenameAction.ProtoReflect.Descriptor instead.
+func (*AiThreadRenameAction) Descriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *AiThreadRenameAction) GetNewTitle() string {
+ if x != nil && x.NewTitle != nil {
+ return *x.NewTitle
+ }
+ return ""
+}
+
type StatusPostOptInNotificationPreferencesAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
Enabled *bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
@@ -2626,7 +3157,7 @@ type StatusPostOptInNotificationPreferencesAction struct {
func (x *StatusPostOptInNotificationPreferencesAction) Reset() {
*x = StatusPostOptInNotificationPreferencesAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[16]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2638,7 +3169,7 @@ func (x *StatusPostOptInNotificationPreferencesAction) String() string {
func (*StatusPostOptInNotificationPreferencesAction) ProtoMessage() {}
func (x *StatusPostOptInNotificationPreferencesAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[16]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[18]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2651,7 +3182,7 @@ func (x *StatusPostOptInNotificationPreferencesAction) ProtoReflect() protorefle
// Deprecated: Use StatusPostOptInNotificationPreferencesAction.ProtoReflect.Descriptor instead.
func (*StatusPostOptInNotificationPreferencesAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{16}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{18}
}
func (x *StatusPostOptInNotificationPreferencesAction) GetEnabled() bool {
@@ -2671,7 +3202,7 @@ type BroadcastListParticipant struct {
func (x *BroadcastListParticipant) Reset() {
*x = BroadcastListParticipant{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[17]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2683,7 +3214,7 @@ func (x *BroadcastListParticipant) String() string {
func (*BroadcastListParticipant) ProtoMessage() {}
func (x *BroadcastListParticipant) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[17]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[19]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2696,7 +3227,7 @@ func (x *BroadcastListParticipant) ProtoReflect() protoreflect.Message {
// Deprecated: Use BroadcastListParticipant.ProtoReflect.Descriptor instead.
func (*BroadcastListParticipant) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{17}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{19}
}
func (x *BroadcastListParticipant) GetLidJID() string {
@@ -2724,7 +3255,7 @@ type BusinessBroadcastListAction struct {
func (x *BusinessBroadcastListAction) Reset() {
*x = BusinessBroadcastListAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[18]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2736,7 +3267,7 @@ func (x *BusinessBroadcastListAction) String() string {
func (*BusinessBroadcastListAction) ProtoMessage() {}
func (x *BusinessBroadcastListAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[18]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[20]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2749,7 +3280,7 @@ func (x *BusinessBroadcastListAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use BusinessBroadcastListAction.ProtoReflect.Descriptor instead.
func (*BusinessBroadcastListAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{18}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{20}
}
func (x *BusinessBroadcastListAction) GetDeleted() bool {
@@ -2782,7 +3313,7 @@ type BusinessBroadcastAssociationAction struct {
func (x *BusinessBroadcastAssociationAction) Reset() {
*x = BusinessBroadcastAssociationAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[19]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2794,7 +3325,7 @@ func (x *BusinessBroadcastAssociationAction) String() string {
func (*BusinessBroadcastAssociationAction) ProtoMessage() {}
func (x *BusinessBroadcastAssociationAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[19]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[21]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2807,7 +3338,7 @@ func (x *BusinessBroadcastAssociationAction) ProtoReflect() protoreflect.Message
// Deprecated: Use BusinessBroadcastAssociationAction.ProtoReflect.Descriptor instead.
func (*BusinessBroadcastAssociationAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{19}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{21}
}
func (x *BusinessBroadcastAssociationAction) GetDeleted() bool {
@@ -2826,7 +3357,7 @@ type CtwaPerCustomerDataSharingAction struct {
func (x *CtwaPerCustomerDataSharingAction) Reset() {
*x = CtwaPerCustomerDataSharingAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[20]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2838,7 +3369,7 @@ func (x *CtwaPerCustomerDataSharingAction) String() string {
func (*CtwaPerCustomerDataSharingAction) ProtoMessage() {}
func (x *CtwaPerCustomerDataSharingAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[20]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[22]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2851,7 +3382,7 @@ func (x *CtwaPerCustomerDataSharingAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use CtwaPerCustomerDataSharingAction.ProtoReflect.Descriptor instead.
func (*CtwaPerCustomerDataSharingAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{20}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{22}
}
func (x *CtwaPerCustomerDataSharingAction) GetIsCtwaPerCustomerDataSharingEnabled() bool {
@@ -2862,18 +3393,17 @@ func (x *CtwaPerCustomerDataSharingAction) GetIsCtwaPerCustomerDataSharingEnable
}
type LidContactAction struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- FullName *string `protobuf:"bytes,1,opt,name=fullName" json:"fullName,omitempty"`
- FirstName *string `protobuf:"bytes,2,opt,name=firstName" json:"firstName,omitempty"`
- Username *string `protobuf:"bytes,3,opt,name=username" json:"username,omitempty"`
- SaveOnPrimaryAddressbook *bool `protobuf:"varint,4,opt,name=saveOnPrimaryAddressbook" json:"saveOnPrimaryAddressbook,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
+ state protoimpl.MessageState `protogen:"open.v1"`
+ FullName *string `protobuf:"bytes,1,opt,name=fullName" json:"fullName,omitempty"`
+ FirstName *string `protobuf:"bytes,2,opt,name=firstName" json:"firstName,omitempty"`
+ Username *string `protobuf:"bytes,3,opt,name=username" json:"username,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *LidContactAction) Reset() {
*x = LidContactAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[21]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2885,7 +3415,7 @@ func (x *LidContactAction) String() string {
func (*LidContactAction) ProtoMessage() {}
func (x *LidContactAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[21]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[23]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2898,7 +3428,7 @@ func (x *LidContactAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use LidContactAction.ProtoReflect.Descriptor instead.
func (*LidContactAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{21}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{23}
}
func (x *LidContactAction) GetFullName() string {
@@ -2922,13 +3452,6 @@ func (x *LidContactAction) GetUsername() string {
return ""
}
-func (x *LidContactAction) GetSaveOnPrimaryAddressbook() bool {
- if x != nil && x.SaveOnPrimaryAddressbook != nil {
- return *x.SaveOnPrimaryAddressbook
- }
- return false
-}
-
type FavoritesAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
Favorites []*FavoritesAction_Favorite `protobuf:"bytes,1,rep,name=favorites" json:"favorites,omitempty"`
@@ -2938,7 +3461,7 @@ type FavoritesAction struct {
func (x *FavoritesAction) Reset() {
*x = FavoritesAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[22]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2950,7 +3473,7 @@ func (x *FavoritesAction) String() string {
func (*FavoritesAction) ProtoMessage() {}
func (x *FavoritesAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[22]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[24]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2963,7 +3486,7 @@ func (x *FavoritesAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use FavoritesAction.ProtoReflect.Descriptor instead.
func (*FavoritesAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{22}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{24}
}
func (x *FavoritesAction) GetFavorites() []*FavoritesAction_Favorite {
@@ -2982,7 +3505,7 @@ type PrivacySettingChannelsPersonalisedRecommendationAction struct {
func (x *PrivacySettingChannelsPersonalisedRecommendationAction) Reset() {
*x = PrivacySettingChannelsPersonalisedRecommendationAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[23]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2994,7 +3517,7 @@ func (x *PrivacySettingChannelsPersonalisedRecommendationAction) String() string
func (*PrivacySettingChannelsPersonalisedRecommendationAction) ProtoMessage() {}
func (x *PrivacySettingChannelsPersonalisedRecommendationAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[23]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[25]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3007,7 +3530,7 @@ func (x *PrivacySettingChannelsPersonalisedRecommendationAction) ProtoReflect()
// Deprecated: Use PrivacySettingChannelsPersonalisedRecommendationAction.ProtoReflect.Descriptor instead.
func (*PrivacySettingChannelsPersonalisedRecommendationAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{23}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{25}
}
func (x *PrivacySettingChannelsPersonalisedRecommendationAction) GetIsUserOptedOut() bool {
@@ -3026,7 +3549,7 @@ type PrivacySettingDisableLinkPreviewsAction struct {
func (x *PrivacySettingDisableLinkPreviewsAction) Reset() {
*x = PrivacySettingDisableLinkPreviewsAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[24]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3038,7 +3561,7 @@ func (x *PrivacySettingDisableLinkPreviewsAction) String() string {
func (*PrivacySettingDisableLinkPreviewsAction) ProtoMessage() {}
func (x *PrivacySettingDisableLinkPreviewsAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[24]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[26]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3051,7 +3574,7 @@ func (x *PrivacySettingDisableLinkPreviewsAction) ProtoReflect() protoreflect.Me
// Deprecated: Use PrivacySettingDisableLinkPreviewsAction.ProtoReflect.Descriptor instead.
func (*PrivacySettingDisableLinkPreviewsAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{24}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{26}
}
func (x *PrivacySettingDisableLinkPreviewsAction) GetIsPreviewsDisabled() bool {
@@ -3070,7 +3593,7 @@ type WamoUserIdentifierAction struct {
func (x *WamoUserIdentifierAction) Reset() {
*x = WamoUserIdentifierAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[25]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3082,7 +3605,7 @@ func (x *WamoUserIdentifierAction) String() string {
func (*WamoUserIdentifierAction) ProtoMessage() {}
func (x *WamoUserIdentifierAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[25]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[27]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3095,7 +3618,7 @@ func (x *WamoUserIdentifierAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use WamoUserIdentifierAction.ProtoReflect.Descriptor instead.
func (*WamoUserIdentifierAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{25}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{27}
}
func (x *WamoUserIdentifierAction) GetIdentifier() string {
@@ -3114,7 +3637,7 @@ type LockChatAction struct {
func (x *LockChatAction) Reset() {
*x = LockChatAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[26]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3126,7 +3649,7 @@ func (x *LockChatAction) String() string {
func (*LockChatAction) ProtoMessage() {}
func (x *LockChatAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[26]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[28]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3139,7 +3662,7 @@ func (x *LockChatAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use LockChatAction.ProtoReflect.Descriptor instead.
func (*LockChatAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{26}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{28}
}
func (x *LockChatAction) GetLocked() bool {
@@ -3158,7 +3681,7 @@ type CustomPaymentMethodsAction struct {
func (x *CustomPaymentMethodsAction) Reset() {
*x = CustomPaymentMethodsAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[27]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3170,7 +3693,7 @@ func (x *CustomPaymentMethodsAction) String() string {
func (*CustomPaymentMethodsAction) ProtoMessage() {}
func (x *CustomPaymentMethodsAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[27]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[29]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3183,7 +3706,7 @@ func (x *CustomPaymentMethodsAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use CustomPaymentMethodsAction.ProtoReflect.Descriptor instead.
func (*CustomPaymentMethodsAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{27}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{29}
}
func (x *CustomPaymentMethodsAction) GetCustomPaymentMethods() []*CustomPaymentMethod {
@@ -3205,7 +3728,7 @@ type CustomPaymentMethod struct {
func (x *CustomPaymentMethod) Reset() {
*x = CustomPaymentMethod{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[28]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3217,7 +3740,7 @@ func (x *CustomPaymentMethod) String() string {
func (*CustomPaymentMethod) ProtoMessage() {}
func (x *CustomPaymentMethod) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[28]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[30]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3230,7 +3753,7 @@ func (x *CustomPaymentMethod) ProtoReflect() protoreflect.Message {
// Deprecated: Use CustomPaymentMethod.ProtoReflect.Descriptor instead.
func (*CustomPaymentMethod) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{28}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{30}
}
func (x *CustomPaymentMethod) GetCredentialID() string {
@@ -3271,7 +3794,7 @@ type CustomPaymentMethodMetadata struct {
func (x *CustomPaymentMethodMetadata) Reset() {
*x = CustomPaymentMethodMetadata{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[29]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3283,7 +3806,7 @@ func (x *CustomPaymentMethodMetadata) String() string {
func (*CustomPaymentMethodMetadata) ProtoMessage() {}
func (x *CustomPaymentMethodMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[29]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[31]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3296,7 +3819,7 @@ func (x *CustomPaymentMethodMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use CustomPaymentMethodMetadata.ProtoReflect.Descriptor instead.
func (*CustomPaymentMethodMetadata) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{29}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{31}
}
func (x *CustomPaymentMethodMetadata) GetKey() string {
@@ -3322,7 +3845,7 @@ type PaymentInfoAction struct {
func (x *PaymentInfoAction) Reset() {
*x = PaymentInfoAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[30]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3334,7 +3857,7 @@ func (x *PaymentInfoAction) String() string {
func (*PaymentInfoAction) ProtoMessage() {}
func (x *PaymentInfoAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[30]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[32]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3347,7 +3870,7 @@ func (x *PaymentInfoAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use PaymentInfoAction.ProtoReflect.Descriptor instead.
func (*PaymentInfoAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{30}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{32}
}
func (x *PaymentInfoAction) GetCpi() string {
@@ -3366,7 +3889,7 @@ type LabelReorderingAction struct {
func (x *LabelReorderingAction) Reset() {
*x = LabelReorderingAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[31]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3378,7 +3901,7 @@ func (x *LabelReorderingAction) String() string {
func (*LabelReorderingAction) ProtoMessage() {}
func (x *LabelReorderingAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[31]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[33]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3391,7 +3914,7 @@ func (x *LabelReorderingAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use LabelReorderingAction.ProtoReflect.Descriptor instead.
func (*LabelReorderingAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{31}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{33}
}
func (x *LabelReorderingAction) GetSortedLabelIDs() []int32 {
@@ -3411,7 +3934,7 @@ type DeleteIndividualCallLogAction struct {
func (x *DeleteIndividualCallLogAction) Reset() {
*x = DeleteIndividualCallLogAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[32]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3423,7 +3946,7 @@ func (x *DeleteIndividualCallLogAction) String() string {
func (*DeleteIndividualCallLogAction) ProtoMessage() {}
func (x *DeleteIndividualCallLogAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[32]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[34]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3436,7 +3959,7 @@ func (x *DeleteIndividualCallLogAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteIndividualCallLogAction.ProtoReflect.Descriptor instead.
func (*DeleteIndividualCallLogAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{32}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{34}
}
func (x *DeleteIndividualCallLogAction) GetPeerJID() string {
@@ -3462,7 +3985,7 @@ type BotWelcomeRequestAction struct {
func (x *BotWelcomeRequestAction) Reset() {
*x = BotWelcomeRequestAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[33]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3474,7 +3997,7 @@ func (x *BotWelcomeRequestAction) String() string {
func (*BotWelcomeRequestAction) ProtoMessage() {}
func (x *BotWelcomeRequestAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[33]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[35]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3487,7 +4010,7 @@ func (x *BotWelcomeRequestAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use BotWelcomeRequestAction.ProtoReflect.Descriptor instead.
func (*BotWelcomeRequestAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{33}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{35}
}
func (x *BotWelcomeRequestAction) GetIsSent() bool {
@@ -3497,6 +4020,50 @@ func (x *BotWelcomeRequestAction) GetIsSent() bool {
return false
}
+type NewsletterSavedInterestsAction struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ NewsletterSavedInterests *string `protobuf:"bytes,1,opt,name=newsletterSavedInterests" json:"newsletterSavedInterests,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *NewsletterSavedInterestsAction) Reset() {
+ *x = NewsletterSavedInterestsAction{}
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[36]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *NewsletterSavedInterestsAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NewsletterSavedInterestsAction) ProtoMessage() {}
+
+func (x *NewsletterSavedInterestsAction) ProtoReflect() protoreflect.Message {
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[36]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NewsletterSavedInterestsAction.ProtoReflect.Descriptor instead.
+func (*NewsletterSavedInterestsAction) Descriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{36}
+}
+
+func (x *NewsletterSavedInterestsAction) GetNewsletterSavedInterests() string {
+ if x != nil && x.NewsletterSavedInterests != nil {
+ return *x.NewsletterSavedInterests
+ }
+ return ""
+}
+
type MusicUserIdAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
MusicUserID *string `protobuf:"bytes,1,opt,name=musicUserID" json:"musicUserID,omitempty"`
@@ -3506,7 +4073,7 @@ type MusicUserIdAction struct {
func (x *MusicUserIdAction) Reset() {
*x = MusicUserIdAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[34]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3518,7 +4085,7 @@ func (x *MusicUserIdAction) String() string {
func (*MusicUserIdAction) ProtoMessage() {}
func (x *MusicUserIdAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[34]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[37]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3531,7 +4098,7 @@ func (x *MusicUserIdAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MusicUserIdAction.ProtoReflect.Descriptor instead.
func (*MusicUserIdAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{34}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{37}
}
func (x *MusicUserIdAction) GetMusicUserID() string {
@@ -3541,6 +4108,50 @@ func (x *MusicUserIdAction) GetMusicUserID() string {
return ""
}
+type UGCBot struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Definition []byte `protobuf:"bytes,1,opt,name=definition" json:"definition,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *UGCBot) Reset() {
+ *x = UGCBot{}
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[38]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UGCBot) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UGCBot) ProtoMessage() {}
+
+func (x *UGCBot) ProtoReflect() protoreflect.Message {
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[38]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UGCBot.ProtoReflect.Descriptor instead.
+func (*UGCBot) Descriptor() ([]byte, []int) {
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{38}
+}
+
+func (x *UGCBot) GetDefinition() []byte {
+ if x != nil {
+ return x.Definition
+ }
+ return nil
+}
+
type CallLogAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
CallLogRecord *CallLogRecord `protobuf:"bytes,1,opt,name=callLogRecord" json:"callLogRecord,omitempty"`
@@ -3550,7 +4161,7 @@ type CallLogAction struct {
func (x *CallLogAction) Reset() {
*x = CallLogAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[35]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3562,7 +4173,7 @@ func (x *CallLogAction) String() string {
func (*CallLogAction) ProtoMessage() {}
func (x *CallLogAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[35]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[39]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3575,7 +4186,7 @@ func (x *CallLogAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use CallLogAction.ProtoReflect.Descriptor instead.
func (*CallLogAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{35}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{39}
}
func (x *CallLogAction) GetCallLogRecord() *CallLogRecord {
@@ -3594,7 +4205,7 @@ type PrivacySettingRelayAllCalls struct {
func (x *PrivacySettingRelayAllCalls) Reset() {
*x = PrivacySettingRelayAllCalls{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[36]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3606,7 +4217,7 @@ func (x *PrivacySettingRelayAllCalls) String() string {
func (*PrivacySettingRelayAllCalls) ProtoMessage() {}
func (x *PrivacySettingRelayAllCalls) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[36]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[40]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3619,7 +4230,7 @@ func (x *PrivacySettingRelayAllCalls) ProtoReflect() protoreflect.Message {
// Deprecated: Use PrivacySettingRelayAllCalls.ProtoReflect.Descriptor instead.
func (*PrivacySettingRelayAllCalls) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{36}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{40}
}
func (x *PrivacySettingRelayAllCalls) GetIsEnabled() bool {
@@ -3638,7 +4249,7 @@ type DetectedOutcomesStatusAction struct {
func (x *DetectedOutcomesStatusAction) Reset() {
*x = DetectedOutcomesStatusAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[37]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3650,7 +4261,7 @@ func (x *DetectedOutcomesStatusAction) String() string {
func (*DetectedOutcomesStatusAction) ProtoMessage() {}
func (x *DetectedOutcomesStatusAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[37]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[41]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3663,7 +4274,7 @@ func (x *DetectedOutcomesStatusAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use DetectedOutcomesStatusAction.ProtoReflect.Descriptor instead.
func (*DetectedOutcomesStatusAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{37}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{41}
}
func (x *DetectedOutcomesStatusAction) GetIsEnabled() bool {
@@ -3682,7 +4293,7 @@ type ExternalWebBetaAction struct {
func (x *ExternalWebBetaAction) Reset() {
*x = ExternalWebBetaAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[38]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3694,7 +4305,7 @@ func (x *ExternalWebBetaAction) String() string {
func (*ExternalWebBetaAction) ProtoMessage() {}
func (x *ExternalWebBetaAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[38]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[42]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3707,7 +4318,7 @@ func (x *ExternalWebBetaAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use ExternalWebBetaAction.ProtoReflect.Descriptor instead.
func (*ExternalWebBetaAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{38}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{42}
}
func (x *ExternalWebBetaAction) GetIsOptIn() bool {
@@ -3726,7 +4337,7 @@ type MarketingMessageBroadcastAction struct {
func (x *MarketingMessageBroadcastAction) Reset() {
*x = MarketingMessageBroadcastAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[39]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3738,7 +4349,7 @@ func (x *MarketingMessageBroadcastAction) String() string {
func (*MarketingMessageBroadcastAction) ProtoMessage() {}
func (x *MarketingMessageBroadcastAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[39]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[43]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3751,7 +4362,7 @@ func (x *MarketingMessageBroadcastAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MarketingMessageBroadcastAction.ProtoReflect.Descriptor instead.
func (*MarketingMessageBroadcastAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{39}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{43}
}
func (x *MarketingMessageBroadcastAction) GetRepliedCount() int32 {
@@ -3770,7 +4381,7 @@ type PnForLidChatAction struct {
func (x *PnForLidChatAction) Reset() {
*x = PnForLidChatAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[40]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3782,7 +4393,7 @@ func (x *PnForLidChatAction) String() string {
func (*PnForLidChatAction) ProtoMessage() {}
func (x *PnForLidChatAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[40]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[44]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3795,7 +4406,7 @@ func (x *PnForLidChatAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use PnForLidChatAction.ProtoReflect.Descriptor instead.
func (*PnForLidChatAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{40}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{44}
}
func (x *PnForLidChatAction) GetPnJID() string {
@@ -3814,7 +4425,7 @@ type ChatAssignmentOpenedStatusAction struct {
func (x *ChatAssignmentOpenedStatusAction) Reset() {
*x = ChatAssignmentOpenedStatusAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[41]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3826,7 +4437,7 @@ func (x *ChatAssignmentOpenedStatusAction) String() string {
func (*ChatAssignmentOpenedStatusAction) ProtoMessage() {}
func (x *ChatAssignmentOpenedStatusAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[41]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[45]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3839,7 +4450,7 @@ func (x *ChatAssignmentOpenedStatusAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use ChatAssignmentOpenedStatusAction.ProtoReflect.Descriptor instead.
func (*ChatAssignmentOpenedStatusAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{41}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{45}
}
func (x *ChatAssignmentOpenedStatusAction) GetChatOpened() bool {
@@ -3858,7 +4469,7 @@ type ChatAssignmentAction struct {
func (x *ChatAssignmentAction) Reset() {
*x = ChatAssignmentAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[42]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3870,7 +4481,7 @@ func (x *ChatAssignmentAction) String() string {
func (*ChatAssignmentAction) ProtoMessage() {}
func (x *ChatAssignmentAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[42]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[46]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3883,7 +4494,7 @@ func (x *ChatAssignmentAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use ChatAssignmentAction.ProtoReflect.Descriptor instead.
func (*ChatAssignmentAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{42}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{46}
}
func (x *ChatAssignmentAction) GetDeviceAgentID() string {
@@ -3914,7 +4525,7 @@ type StickerAction struct {
func (x *StickerAction) Reset() {
*x = StickerAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[43]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -3926,7 +4537,7 @@ func (x *StickerAction) String() string {
func (*StickerAction) ProtoMessage() {}
func (x *StickerAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[43]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[47]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3939,7 +4550,7 @@ func (x *StickerAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use StickerAction.ProtoReflect.Descriptor instead.
func (*StickerAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{43}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{47}
}
func (x *StickerAction) GetURL() string {
@@ -4042,7 +4653,7 @@ type RemoveRecentStickerAction struct {
func (x *RemoveRecentStickerAction) Reset() {
*x = RemoveRecentStickerAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[44]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4054,7 +4665,7 @@ func (x *RemoveRecentStickerAction) String() string {
func (*RemoveRecentStickerAction) ProtoMessage() {}
func (x *RemoveRecentStickerAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[44]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[48]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4067,7 +4678,7 @@ func (x *RemoveRecentStickerAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveRecentStickerAction.ProtoReflect.Descriptor instead.
func (*RemoveRecentStickerAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{44}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{48}
}
func (x *RemoveRecentStickerAction) GetLastStickerSentTS() int64 {
@@ -4086,7 +4697,7 @@ type PrimaryVersionAction struct {
func (x *PrimaryVersionAction) Reset() {
*x = PrimaryVersionAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[45]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4098,7 +4709,7 @@ func (x *PrimaryVersionAction) String() string {
func (*PrimaryVersionAction) ProtoMessage() {}
func (x *PrimaryVersionAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[45]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[49]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4111,7 +4722,7 @@ func (x *PrimaryVersionAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use PrimaryVersionAction.ProtoReflect.Descriptor instead.
func (*PrimaryVersionAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{45}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{49}
}
func (x *PrimaryVersionAction) GetVersion() string {
@@ -4130,7 +4741,7 @@ type NuxAction struct {
func (x *NuxAction) Reset() {
*x = NuxAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[46]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4142,7 +4753,7 @@ func (x *NuxAction) String() string {
func (*NuxAction) ProtoMessage() {}
func (x *NuxAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[46]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[50]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4155,7 +4766,7 @@ func (x *NuxAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use NuxAction.ProtoReflect.Descriptor instead.
func (*NuxAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{46}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{50}
}
func (x *NuxAction) GetAcknowledged() bool {
@@ -4174,7 +4785,7 @@ type TimeFormatAction struct {
func (x *TimeFormatAction) Reset() {
*x = TimeFormatAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[47]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4186,7 +4797,7 @@ func (x *TimeFormatAction) String() string {
func (*TimeFormatAction) ProtoMessage() {}
func (x *TimeFormatAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[47]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[51]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4199,7 +4810,7 @@ func (x *TimeFormatAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use TimeFormatAction.ProtoReflect.Descriptor instead.
func (*TimeFormatAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{47}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{51}
}
func (x *TimeFormatAction) GetIsTwentyFourHourFormatEnabled() bool {
@@ -4218,7 +4829,7 @@ type UserStatusMuteAction struct {
func (x *UserStatusMuteAction) Reset() {
*x = UserStatusMuteAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[48]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4230,7 +4841,7 @@ func (x *UserStatusMuteAction) String() string {
func (*UserStatusMuteAction) ProtoMessage() {}
func (x *UserStatusMuteAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[48]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[52]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4243,7 +4854,7 @@ func (x *UserStatusMuteAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use UserStatusMuteAction.ProtoReflect.Descriptor instead.
func (*UserStatusMuteAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{48}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{52}
}
func (x *UserStatusMuteAction) GetMuted() bool {
@@ -4264,7 +4875,7 @@ type SubscriptionAction struct {
func (x *SubscriptionAction) Reset() {
*x = SubscriptionAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[49]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4276,7 +4887,7 @@ func (x *SubscriptionAction) String() string {
func (*SubscriptionAction) ProtoMessage() {}
func (x *SubscriptionAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[49]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[53]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4289,7 +4900,7 @@ func (x *SubscriptionAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use SubscriptionAction.ProtoReflect.Descriptor instead.
func (*SubscriptionAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{49}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{53}
}
func (x *SubscriptionAction) GetIsDeactivated() bool {
@@ -4324,7 +4935,7 @@ type AgentAction struct {
func (x *AgentAction) Reset() {
*x = AgentAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[50]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[54]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4336,7 +4947,7 @@ func (x *AgentAction) String() string {
func (*AgentAction) ProtoMessage() {}
func (x *AgentAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[50]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[54]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4349,7 +4960,7 @@ func (x *AgentAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use AgentAction.ProtoReflect.Descriptor instead.
func (*AgentAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{50}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{54}
}
func (x *AgentAction) GetName() string {
@@ -4382,7 +4993,7 @@ type AndroidUnsupportedActions struct {
func (x *AndroidUnsupportedActions) Reset() {
*x = AndroidUnsupportedActions{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[51]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4394,7 +5005,7 @@ func (x *AndroidUnsupportedActions) String() string {
func (*AndroidUnsupportedActions) ProtoMessage() {}
func (x *AndroidUnsupportedActions) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[51]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[55]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4407,7 +5018,7 @@ func (x *AndroidUnsupportedActions) ProtoReflect() protoreflect.Message {
// Deprecated: Use AndroidUnsupportedActions.ProtoReflect.Descriptor instead.
func (*AndroidUnsupportedActions) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{51}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{55}
}
func (x *AndroidUnsupportedActions) GetAllowed() bool {
@@ -4426,7 +5037,7 @@ type PrimaryFeature struct {
func (x *PrimaryFeature) Reset() {
*x = PrimaryFeature{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[52]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4438,7 +5049,7 @@ func (x *PrimaryFeature) String() string {
func (*PrimaryFeature) ProtoMessage() {}
func (x *PrimaryFeature) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[52]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[56]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4451,7 +5062,7 @@ func (x *PrimaryFeature) ProtoReflect() protoreflect.Message {
// Deprecated: Use PrimaryFeature.ProtoReflect.Descriptor instead.
func (*PrimaryFeature) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{52}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{56}
}
func (x *PrimaryFeature) GetFlags() []string {
@@ -4470,7 +5081,7 @@ type KeyExpiration struct {
func (x *KeyExpiration) Reset() {
*x = KeyExpiration{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[53]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4482,7 +5093,7 @@ func (x *KeyExpiration) String() string {
func (*KeyExpiration) ProtoMessage() {}
func (x *KeyExpiration) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[53]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[57]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4495,7 +5106,7 @@ func (x *KeyExpiration) ProtoReflect() protoreflect.Message {
// Deprecated: Use KeyExpiration.ProtoReflect.Descriptor instead.
func (*KeyExpiration) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{53}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{57}
}
func (x *KeyExpiration) GetExpiredKeyEpoch() int32 {
@@ -4515,7 +5126,7 @@ type SyncActionMessage struct {
func (x *SyncActionMessage) Reset() {
*x = SyncActionMessage{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[54]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4527,7 +5138,7 @@ func (x *SyncActionMessage) String() string {
func (*SyncActionMessage) ProtoMessage() {}
func (x *SyncActionMessage) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[54]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[58]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4540,7 +5151,7 @@ func (x *SyncActionMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use SyncActionMessage.ProtoReflect.Descriptor instead.
func (*SyncActionMessage) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{54}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{58}
}
func (x *SyncActionMessage) GetKey() *waCommon.MessageKey {
@@ -4568,7 +5179,7 @@ type SyncActionMessageRange struct {
func (x *SyncActionMessageRange) Reset() {
*x = SyncActionMessageRange{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[55]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4580,7 +5191,7 @@ func (x *SyncActionMessageRange) String() string {
func (*SyncActionMessageRange) ProtoMessage() {}
func (x *SyncActionMessageRange) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[55]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[59]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4593,7 +5204,7 @@ func (x *SyncActionMessageRange) ProtoReflect() protoreflect.Message {
// Deprecated: Use SyncActionMessageRange.ProtoReflect.Descriptor instead.
func (*SyncActionMessageRange) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{55}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{59}
}
func (x *SyncActionMessageRange) GetLastMessageTimestamp() int64 {
@@ -4626,7 +5237,7 @@ type UnarchiveChatsSetting struct {
func (x *UnarchiveChatsSetting) Reset() {
*x = UnarchiveChatsSetting{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[56]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4638,7 +5249,7 @@ func (x *UnarchiveChatsSetting) String() string {
func (*UnarchiveChatsSetting) ProtoMessage() {}
func (x *UnarchiveChatsSetting) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[56]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[60]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4651,7 +5262,7 @@ func (x *UnarchiveChatsSetting) ProtoReflect() protoreflect.Message {
// Deprecated: Use UnarchiveChatsSetting.ProtoReflect.Descriptor instead.
func (*UnarchiveChatsSetting) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{56}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{60}
}
func (x *UnarchiveChatsSetting) GetUnarchiveChats() bool {
@@ -4670,7 +5281,7 @@ type DeleteChatAction struct {
func (x *DeleteChatAction) Reset() {
*x = DeleteChatAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[57]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4682,7 +5293,7 @@ func (x *DeleteChatAction) String() string {
func (*DeleteChatAction) ProtoMessage() {}
func (x *DeleteChatAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[57]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[61]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4695,7 +5306,7 @@ func (x *DeleteChatAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteChatAction.ProtoReflect.Descriptor instead.
func (*DeleteChatAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{57}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{61}
}
func (x *DeleteChatAction) GetMessageRange() *SyncActionMessageRange {
@@ -4714,7 +5325,7 @@ type ClearChatAction struct {
func (x *ClearChatAction) Reset() {
*x = ClearChatAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[58]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[62]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4726,7 +5337,7 @@ func (x *ClearChatAction) String() string {
func (*ClearChatAction) ProtoMessage() {}
func (x *ClearChatAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[58]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[62]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4739,7 +5350,7 @@ func (x *ClearChatAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use ClearChatAction.ProtoReflect.Descriptor instead.
func (*ClearChatAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{58}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{62}
}
func (x *ClearChatAction) GetMessageRange() *SyncActionMessageRange {
@@ -4759,7 +5370,7 @@ type MarkChatAsReadAction struct {
func (x *MarkChatAsReadAction) Reset() {
*x = MarkChatAsReadAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[59]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4771,7 +5382,7 @@ func (x *MarkChatAsReadAction) String() string {
func (*MarkChatAsReadAction) ProtoMessage() {}
func (x *MarkChatAsReadAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[59]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[63]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4784,7 +5395,7 @@ func (x *MarkChatAsReadAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MarkChatAsReadAction.ProtoReflect.Descriptor instead.
func (*MarkChatAsReadAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{59}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{63}
}
func (x *MarkChatAsReadAction) GetRead() bool {
@@ -4811,7 +5422,7 @@ type DeleteMessageForMeAction struct {
func (x *DeleteMessageForMeAction) Reset() {
*x = DeleteMessageForMeAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[60]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4823,7 +5434,7 @@ func (x *DeleteMessageForMeAction) String() string {
func (*DeleteMessageForMeAction) ProtoMessage() {}
func (x *DeleteMessageForMeAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[60]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[64]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4836,7 +5447,7 @@ func (x *DeleteMessageForMeAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteMessageForMeAction.ProtoReflect.Descriptor instead.
func (*DeleteMessageForMeAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{60}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{64}
}
func (x *DeleteMessageForMeAction) GetDeleteMedia() bool {
@@ -4863,7 +5474,7 @@ type ArchiveChatAction struct {
func (x *ArchiveChatAction) Reset() {
*x = ArchiveChatAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[61]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4875,7 +5486,7 @@ func (x *ArchiveChatAction) String() string {
func (*ArchiveChatAction) ProtoMessage() {}
func (x *ArchiveChatAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[61]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[65]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4888,7 +5499,7 @@ func (x *ArchiveChatAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use ArchiveChatAction.ProtoReflect.Descriptor instead.
func (*ArchiveChatAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{61}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{65}
}
func (x *ArchiveChatAction) GetArchived() bool {
@@ -4914,7 +5525,7 @@ type RecentEmojiWeightsAction struct {
func (x *RecentEmojiWeightsAction) Reset() {
*x = RecentEmojiWeightsAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[62]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4926,7 +5537,7 @@ func (x *RecentEmojiWeightsAction) String() string {
func (*RecentEmojiWeightsAction) ProtoMessage() {}
func (x *RecentEmojiWeightsAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[62]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[66]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4939,7 +5550,7 @@ func (x *RecentEmojiWeightsAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use RecentEmojiWeightsAction.ProtoReflect.Descriptor instead.
func (*RecentEmojiWeightsAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{62}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{66}
}
func (x *RecentEmojiWeightsAction) GetWeights() []*RecentEmojiWeight {
@@ -4958,7 +5569,7 @@ type LabelAssociationAction struct {
func (x *LabelAssociationAction) Reset() {
*x = LabelAssociationAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[63]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -4970,7 +5581,7 @@ func (x *LabelAssociationAction) String() string {
func (*LabelAssociationAction) ProtoMessage() {}
func (x *LabelAssociationAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[63]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[67]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4983,7 +5594,7 @@ func (x *LabelAssociationAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use LabelAssociationAction.ProtoReflect.Descriptor instead.
func (*LabelAssociationAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{63}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{67}
}
func (x *LabelAssociationAction) GetLabeled() bool {
@@ -5006,7 +5617,7 @@ type QuickReplyAction struct {
func (x *QuickReplyAction) Reset() {
*x = QuickReplyAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[64]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5018,7 +5629,7 @@ func (x *QuickReplyAction) String() string {
func (*QuickReplyAction) ProtoMessage() {}
func (x *QuickReplyAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[64]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[68]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5031,7 +5642,7 @@ func (x *QuickReplyAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use QuickReplyAction.ProtoReflect.Descriptor instead.
func (*QuickReplyAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{64}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{68}
}
func (x *QuickReplyAction) GetShortcut() string {
@@ -5078,7 +5689,7 @@ type LocaleSetting struct {
func (x *LocaleSetting) Reset() {
*x = LocaleSetting{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[65]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[69]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5090,7 +5701,7 @@ func (x *LocaleSetting) String() string {
func (*LocaleSetting) ProtoMessage() {}
func (x *LocaleSetting) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[65]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[69]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5103,7 +5714,7 @@ func (x *LocaleSetting) ProtoReflect() protoreflect.Message {
// Deprecated: Use LocaleSetting.ProtoReflect.Descriptor instead.
func (*LocaleSetting) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{65}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{69}
}
func (x *LocaleSetting) GetLocale() string {
@@ -5122,7 +5733,7 @@ type PushNameSetting struct {
func (x *PushNameSetting) Reset() {
*x = PushNameSetting{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[66]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[70]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5134,7 +5745,7 @@ func (x *PushNameSetting) String() string {
func (*PushNameSetting) ProtoMessage() {}
func (x *PushNameSetting) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[66]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[70]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5147,7 +5758,7 @@ func (x *PushNameSetting) ProtoReflect() protoreflect.Message {
// Deprecated: Use PushNameSetting.ProtoReflect.Descriptor instead.
func (*PushNameSetting) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{66}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{70}
}
func (x *PushNameSetting) GetName() string {
@@ -5157,50 +5768,6 @@ func (x *PushNameSetting) GetName() string {
return ""
}
-type SecurityNotificationSetting struct {
- state protoimpl.MessageState `protogen:"open.v1"`
- ShowNotification *bool `protobuf:"varint,1,opt,name=showNotification" json:"showNotification,omitempty"`
- unknownFields protoimpl.UnknownFields
- sizeCache protoimpl.SizeCache
-}
-
-func (x *SecurityNotificationSetting) Reset() {
- *x = SecurityNotificationSetting{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[67]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
-}
-
-func (x *SecurityNotificationSetting) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*SecurityNotificationSetting) ProtoMessage() {}
-
-func (x *SecurityNotificationSetting) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[67]
- if x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use SecurityNotificationSetting.ProtoReflect.Descriptor instead.
-func (*SecurityNotificationSetting) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{67}
-}
-
-func (x *SecurityNotificationSetting) GetShowNotification() bool {
- if x != nil && x.ShowNotification != nil {
- return *x.ShowNotification
- }
- return false
-}
-
type PinAction struct {
state protoimpl.MessageState `protogen:"open.v1"`
Pinned *bool `protobuf:"varint,1,opt,name=pinned" json:"pinned,omitempty"`
@@ -5210,7 +5777,7 @@ type PinAction struct {
func (x *PinAction) Reset() {
*x = PinAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[68]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[71]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5222,7 +5789,7 @@ func (x *PinAction) String() string {
func (*PinAction) ProtoMessage() {}
func (x *PinAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[68]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[71]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5235,7 +5802,7 @@ func (x *PinAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use PinAction.ProtoReflect.Descriptor instead.
func (*PinAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{68}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{71}
}
func (x *PinAction) GetPinned() bool {
@@ -5256,7 +5823,7 @@ type MuteAction struct {
func (x *MuteAction) Reset() {
*x = MuteAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[69]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[72]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5268,7 +5835,7 @@ func (x *MuteAction) String() string {
func (*MuteAction) ProtoMessage() {}
func (x *MuteAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[69]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[72]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5281,7 +5848,7 @@ func (x *MuteAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use MuteAction.ProtoReflect.Descriptor instead.
func (*MuteAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{69}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{72}
}
func (x *MuteAction) GetMuted() bool {
@@ -5319,7 +5886,7 @@ type ContactAction struct {
func (x *ContactAction) Reset() {
*x = ContactAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[70]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[73]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5331,7 +5898,7 @@ func (x *ContactAction) String() string {
func (*ContactAction) ProtoMessage() {}
func (x *ContactAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[70]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[73]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5344,7 +5911,7 @@ func (x *ContactAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use ContactAction.ProtoReflect.Descriptor instead.
func (*ContactAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{70}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{73}
}
func (x *ContactAction) GetFullName() string {
@@ -5398,7 +5965,7 @@ type StarAction struct {
func (x *StarAction) Reset() {
*x = StarAction{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[71]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5410,7 +5977,7 @@ func (x *StarAction) String() string {
func (*StarAction) ProtoMessage() {}
func (x *StarAction) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[71]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[74]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5423,7 +5990,7 @@ func (x *StarAction) ProtoReflect() protoreflect.Message {
// Deprecated: Use StarAction.ProtoReflect.Descriptor instead.
func (*StarAction) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{71}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{74}
}
func (x *StarAction) GetStarred() bool {
@@ -5445,7 +6012,7 @@ type SyncActionData struct {
func (x *SyncActionData) Reset() {
*x = SyncActionData{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[72]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5457,7 +6024,7 @@ func (x *SyncActionData) String() string {
func (*SyncActionData) ProtoMessage() {}
func (x *SyncActionData) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[72]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[75]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5470,7 +6037,7 @@ func (x *SyncActionData) ProtoReflect() protoreflect.Message {
// Deprecated: Use SyncActionData.ProtoReflect.Descriptor instead.
func (*SyncActionData) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{72}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{75}
}
func (x *SyncActionData) GetIndex() []byte {
@@ -5504,14 +6071,14 @@ func (x *SyncActionData) GetVersion() int32 {
type CallLogRecord_ParticipantInfo struct {
state protoimpl.MessageState `protogen:"open.v1"`
UserJID *string `protobuf:"bytes,1,opt,name=userJID" json:"userJID,omitempty"`
- CallResult *CallLogRecord_CallResult `protobuf:"varint,2,opt,name=callResult,enum=WASyncAction.CallLogRecord_CallResult" json:"callResult,omitempty"`
+ CallResult *CallLogRecord_CallResult `protobuf:"varint,2,opt,name=callResult,enum=WAWebProtobufSyncAction.CallLogRecord_CallResult" json:"callResult,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CallLogRecord_ParticipantInfo) Reset() {
*x = CallLogRecord_ParticipantInfo{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[73]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[76]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5523,7 +6090,7 @@ func (x *CallLogRecord_ParticipantInfo) String() string {
func (*CallLogRecord_ParticipantInfo) ProtoMessage() {}
func (x *CallLogRecord_ParticipantInfo) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[73]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[76]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5536,7 +6103,7 @@ func (x *CallLogRecord_ParticipantInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use CallLogRecord_ParticipantInfo.ProtoReflect.Descriptor instead.
func (*CallLogRecord_ParticipantInfo) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{0, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{0, 0}
}
func (x *CallLogRecord_ParticipantInfo) GetUserJID() string {
@@ -5562,7 +6129,7 @@ type FavoritesAction_Favorite struct {
func (x *FavoritesAction_Favorite) Reset() {
*x = FavoritesAction_Favorite{}
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[74]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[77]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5574,7 +6141,7 @@ func (x *FavoritesAction_Favorite) String() string {
func (*FavoritesAction_Favorite) ProtoMessage() {}
func (x *FavoritesAction_Favorite) ProtoReflect() protoreflect.Message {
- mi := &file_waSyncAction_WASyncAction_proto_msgTypes[74]
+ mi := &file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes[77]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5587,7 +6154,7 @@ func (x *FavoritesAction_Favorite) ProtoReflect() protoreflect.Message {
// Deprecated: Use FavoritesAction_Favorite.ProtoReflect.Descriptor instead.
func (*FavoritesAction_Favorite) Descriptor() ([]byte, []int) {
- return file_waSyncAction_WASyncAction_proto_rawDescGZIP(), []int{22, 0}
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP(), []int{24, 0}
}
func (x *FavoritesAction_Favorite) GetID() string {
@@ -5597,17 +6164,17 @@ func (x *FavoritesAction_Favorite) GetID() string {
return ""
}
-var File_waSyncAction_WASyncAction_proto protoreflect.FileDescriptor
+var File_waSyncAction_WAWebProtobufSyncAction_proto protoreflect.FileDescriptor
-const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
+const file_waSyncAction_WAWebProtobufSyncAction_proto_rawDesc = "" +
"\n" +
- "\x1fwaSyncAction/WASyncAction.proto\x12\fWASyncAction\x1a4waChatLockSettings/WAProtobufsChatLockSettings.proto\x1a8waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto\x1a\x17waCommon/WACommon.proto\"\xc5\b\n" +
- "\rCallLogRecord\x12F\n" +
+ "*waSyncAction/WAWebProtobufSyncAction.proto\x12\x17WAWebProtobufSyncAction\x1a7waChatLockSettings/WAWebProtobufsChatLockSettings.proto\x1a;waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto\x1a\x17waCommon/WACommon.proto\"\xfc\b\n" +
+ "\rCallLogRecord\x12Q\n" +
"\n" +
- "callResult\x18\x01 \x01(\x0e2&.WASyncAction.CallLogRecord.CallResultR\n" +
+ "callResult\x18\x01 \x01(\x0e21.WAWebProtobufSyncAction.CallLogRecord.CallResultR\n" +
"callResult\x12\x1c\n" +
- "\tisDndMode\x18\x02 \x01(\bR\tisDndMode\x12O\n" +
- "\rsilenceReason\x18\x03 \x01(\x0e2).WASyncAction.CallLogRecord.SilenceReasonR\rsilenceReason\x12\x1a\n" +
+ "\tisDndMode\x18\x02 \x01(\bR\tisDndMode\x12Z\n" +
+ "\rsilenceReason\x18\x03 \x01(\x0e24.WAWebProtobufSyncAction.CallLogRecord.SilenceReasonR\rsilenceReason\x12\x1a\n" +
"\bduration\x18\x04 \x01(\x03R\bduration\x12\x1c\n" +
"\tstartTime\x18\x05 \x01(\x03R\tstartTime\x12\x1e\n" +
"\n" +
@@ -5622,13 +6189,13 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
" \x01(\tR\x0fscheduledCallID\x12\x16\n" +
"\x06callID\x18\v \x01(\tR\x06callID\x12&\n" +
"\x0ecallCreatorJID\x18\f \x01(\tR\x0ecallCreatorJID\x12\x1a\n" +
- "\bgroupJID\x18\r \x01(\tR\bgroupJID\x12O\n" +
- "\fparticipants\x18\x0e \x03(\v2+.WASyncAction.CallLogRecord.ParticipantInfoR\fparticipants\x12@\n" +
- "\bcallType\x18\x0f \x01(\x0e2$.WASyncAction.CallLogRecord.CallTypeR\bcallType\x1as\n" +
+ "\bgroupJID\x18\r \x01(\tR\bgroupJID\x12Z\n" +
+ "\fparticipants\x18\x0e \x03(\v26.WAWebProtobufSyncAction.CallLogRecord.ParticipantInfoR\fparticipants\x12K\n" +
+ "\bcallType\x18\x0f \x01(\x0e2/.WAWebProtobufSyncAction.CallLogRecord.CallTypeR\bcallType\x1a~\n" +
"\x0fParticipantInfo\x12\x18\n" +
- "\auserJID\x18\x01 \x01(\tR\auserJID\x12F\n" +
+ "\auserJID\x18\x01 \x01(\tR\auserJID\x12Q\n" +
"\n" +
- "callResult\x18\x02 \x01(\x0e2&.WASyncAction.CallLogRecord.CallResultR\n" +
+ "callResult\x18\x02 \x01(\x0e21.WAWebProtobufSyncAction.CallLogRecord.CallResultR\n" +
"callResult\";\n" +
"\bCallType\x12\v\n" +
"\aREGULAR\x10\x00\x12\x12\n" +
@@ -5655,54 +6222,62 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\x06FAILED\x10\b\x12\r\n" +
"\tABANDONED\x10\t\x12\v\n" +
"\aONGOING\x10\n" +
- "\"\xf1\x01\n" +
- "\x13AvatarUpdatedAction\x12O\n" +
- "\teventType\x18\x01 \x01(\x0e21.WASyncAction.AvatarUpdatedAction.AvatarEventTypeR\teventType\x12O\n" +
- "\x14recentAvatarStickers\x18\x02 \x03(\v2\x1b.WASyncAction.StickerActionR\x14recentAvatarStickers\"8\n" +
+ "\"\xaf\x01\n" +
+ "\x18InteractiveMessageAction\x12b\n" +
+ "\x04type\x18\x01 \x02(\x0e2N.WAWebProtobufSyncAction.InteractiveMessageAction.InteractiveMessageActionModeR\x04type\"/\n" +
+ "\x1cInteractiveMessageActionMode\x12\x0f\n" +
+ "\vDISABLE_CTA\x10\x01\"\xf1\x01\n" +
+ "\x1ePrivateProcessingSettingAction\x12\x89\x01\n" +
+ "\x17privateProcessingStatus\x18\x01 \x01(\x0e2O.WAWebProtobufSyncAction.PrivateProcessingSettingAction.PrivateProcessingStatusR\x17privateProcessingStatus\"C\n" +
+ "\x17PrivateProcessingStatus\x12\r\n" +
+ "\tUNDEFINED\x10\x00\x12\v\n" +
+ "\aENABLED\x10\x01\x12\f\n" +
+ "\bDISABLED\x10\x02\"\x87\x02\n" +
+ "\x13AvatarUpdatedAction\x12Z\n" +
+ "\teventType\x18\x01 \x01(\x0e2<.WAWebProtobufSyncAction.AvatarUpdatedAction.AvatarEventTypeR\teventType\x12Z\n" +
+ "\x14recentAvatarStickers\x18\x02 \x03(\v2&.WAWebProtobufSyncAction.StickerActionR\x14recentAvatarStickers\"8\n" +
"\x0fAvatarEventType\x12\v\n" +
"\aUPDATED\x10\x00\x12\v\n" +
"\aCREATED\x10\x01\x12\v\n" +
- "\aDELETED\x10\x02\"\xd6\x01\n" +
- "\x1cMaibaAIFeaturesControlAction\x12i\n" +
- "\x0faiFeatureStatus\x18\x01 \x01(\x0e2?.WASyncAction.MaibaAIFeaturesControlAction.MaibaAIFeatureStatusR\x0faiFeatureStatus\"K\n" +
+ "\aDELETED\x10\x02\"\xe1\x01\n" +
+ "\x1cMaibaAIFeaturesControlAction\x12t\n" +
+ "\x0faiFeatureStatus\x18\x01 \x01(\x0e2J.WAWebProtobufSyncAction.MaibaAIFeaturesControlAction.MaibaAIFeatureStatusR\x0faiFeatureStatus\"K\n" +
"\x14MaibaAIFeatureStatus\x12\v\n" +
"\aENABLED\x10\x00\x12\x18\n" +
"\x14ENABLED_HAS_LEARNING\x10\x01\x12\f\n" +
- "\bDISABLED\x10\x02\"\xae\x01\n" +
- "\x10PaymentTosAction\x12R\n" +
- "\rpaymentNotice\x18\x01 \x02(\x0e2,.WASyncAction.PaymentTosAction.PaymentNoticeR\rpaymentNotice\x12\x1a\n" +
+ "\bDISABLED\x10\x02\"\xb9\x01\n" +
+ "\x10PaymentTosAction\x12]\n" +
+ "\rpaymentNotice\x18\x01 \x02(\x0e27.WAWebProtobufSyncAction.PaymentTosAction.PaymentNoticeR\rpaymentNotice\x12\x1a\n" +
"\baccepted\x18\x02 \x02(\bR\baccepted\"*\n" +
"\rPaymentNotice\x12\x19\n" +
- "\x15BR_PAY_PRIVACY_POLICY\x10\x00\"\xa6\x02\n" +
- "!NotificationActivitySettingAction\x12\x8d\x01\n" +
- "\x1bnotificationActivitySetting\x18\x01 \x01(\x0e2K.WASyncAction.NotificationActivitySettingAction.NotificationActivitySettingR\x1bnotificationActivitySetting\"q\n" +
+ "\x15BR_PAY_PRIVACY_POLICY\x10\x00\"\xb1\x02\n" +
+ "!NotificationActivitySettingAction\x12\x98\x01\n" +
+ "\x1bnotificationActivitySetting\x18\x01 \x01(\x0e2V.WAWebProtobufSyncAction.NotificationActivitySettingAction.NotificationActivitySettingR\x1bnotificationActivitySetting\"q\n" +
"\x1bNotificationActivitySetting\x12\x18\n" +
"\x14DEFAULT_ALL_MESSAGES\x10\x00\x12\x10\n" +
"\fALL_MESSAGES\x10\x01\x12\x0e\n" +
"\n" +
"HIGHLIGHTS\x10\x02\x12\x16\n" +
- "\x12DEFAULT_HIGHLIGHTS\x10\x03\"\x99\x01\n" +
- "\x1cWaffleAccountLinkStateAction\x12Y\n" +
- "\tlinkState\x18\x02 \x01(\x0e2;.WASyncAction.WaffleAccountLinkStateAction.AccountLinkStateR\tlinkState\"\x1e\n" +
+ "\x12DEFAULT_HIGHLIGHTS\x10\x03\"\xbe\x01\n" +
+ "\x1cWaffleAccountLinkStateAction\x12d\n" +
+ "\tlinkState\x18\x02 \x01(\x0e2F.WAWebProtobufSyncAction.WaffleAccountLinkStateAction.AccountLinkStateR\tlinkState\"8\n" +
"\x10AccountLinkState\x12\n" +
"\n" +
- "\x06ACTIVE\x10\x00\"\xed\x01\n" +
- "\x1cMerchantPaymentPartnerAction\x12I\n" +
- "\x06status\x18\x01 \x02(\x0e21.WASyncAction.MerchantPaymentPartnerAction.StatusR\x06status\x12\x18\n" +
+ "\x06ACTIVE\x10\x00\x12\n" +
+ "\n" +
+ "\x06PAUSED\x10\x01\x12\f\n" +
+ "\bUNLINKED\x10\x02\"\xf8\x01\n" +
+ "\x1cMerchantPaymentPartnerAction\x12T\n" +
+ "\x06status\x18\x01 \x02(\x0e2<.WAWebProtobufSyncAction.MerchantPaymentPartnerAction.StatusR\x06status\x12\x18\n" +
"\acountry\x18\x02 \x02(\tR\acountry\x12 \n" +
"\vgatewayName\x18\x03 \x01(\tR\vgatewayName\x12\"\n" +
"\fcredentialID\x18\x04 \x01(\tR\fcredentialID\"\"\n" +
"\x06Status\x12\n" +
"\n" +
"\x06ACTIVE\x10\x00\x12\f\n" +
- "\bINACTIVE\x10\x01\"\x7f\n" +
- "\x10GalaxyFlowAction\x12G\n" +
- "\x04type\x18\x01 \x02(\x0e23.WASyncAction.GalaxyFlowAction.GalaxyFlowActionTypeR\x04type\"\"\n" +
- "\x14GalaxyFlowActionType\x12\n" +
- "\n" +
- "\x06LAUNCH\x10\x01\"\xfd\x01\n" +
- "\x0eNoteEditAction\x129\n" +
- "\x04type\x18\x01 \x01(\x0e2%.WASyncAction.NoteEditAction.NoteTypeR\x04type\x12\x18\n" +
+ "\bINACTIVE\x10\x01\"\x88\x02\n" +
+ "\x0eNoteEditAction\x12D\n" +
+ "\x04type\x18\x01 \x01(\x0e20.WAWebProtobufSyncAction.NoteEditAction.NoteTypeR\x04type\x12\x18\n" +
"\achatJID\x18\x02 \x01(\tR\achatJID\x12\x1c\n" +
"\tcreatedAt\x18\x03 \x01(\x03R\tcreatedAt\x12\x18\n" +
"\adeleted\x18\x04 \x01(\bR\adeleted\x120\n" +
@@ -5710,19 +6285,20 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\bNoteType\x12\x10\n" +
"\fUNSTRUCTURED\x10\x01\x12\x0e\n" +
"\n" +
- "STRUCTURED\x10\x02\"\xc4\x01\n" +
- "\x13StatusPrivacyAction\x12L\n" +
- "\x04mode\x18\x01 \x01(\x0e28.WASyncAction.StatusPrivacyAction.StatusDistributionModeR\x04mode\x12\x18\n" +
- "\auserJID\x18\x02 \x03(\tR\auserJID\"E\n" +
+ "STRUCTURED\x10\x02\"\xe2\x01\n" +
+ "\x13StatusPrivacyAction\x12W\n" +
+ "\x04mode\x18\x01 \x01(\x0e2C.WAWebProtobufSyncAction.StatusPrivacyAction.StatusDistributionModeR\x04mode\x12\x18\n" +
+ "\auserJID\x18\x02 \x03(\tR\auserJID\"X\n" +
"\x16StatusDistributionMode\x12\x0e\n" +
"\n" +
"ALLOW_LIST\x10\x00\x12\r\n" +
"\tDENY_LIST\x10\x01\x12\f\n" +
- "\bCONTACTS\x10\x02\"\xc7\x02\n" +
+ "\bCONTACTS\x10\x02\x12\x11\n" +
+ "\rCLOSE_FRIENDS\x10\x03\"\xd2\x02\n" +
"\x16MarketingMessageAction\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n" +
- "\amessage\x18\x02 \x01(\tR\amessage\x12V\n" +
- "\x04type\x18\x03 \x01(\x0e2B.WASyncAction.MarketingMessageAction.MarketingMessagePrototypeTypeR\x04type\x12\x1c\n" +
+ "\amessage\x18\x02 \x01(\tR\amessage\x12a\n" +
+ "\x04type\x18\x03 \x01(\x0e2M.WAWebProtobufSyncAction.MarketingMessageAction.MarketingMessagePrototypeTypeR\x04type\x12\x1c\n" +
"\tcreatedAt\x18\x04 \x01(\x03R\tcreatedAt\x12\x1e\n" +
"\n" +
"lastSentAt\x18\x05 \x01(\x03R\n" +
@@ -5730,12 +6306,12 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\tisDeleted\x18\x06 \x01(\bR\tisDeleted\x12\x18\n" +
"\amediaID\x18\a \x01(\tR\amediaID\"1\n" +
"\x1dMarketingMessagePrototypeType\x12\x10\n" +
- "\fPERSONALIZED\x10\x00\"\x9e\x01\n" +
- "\x1bUsernameChatStartModeAction\x12]\n" +
- "\rchatStartMode\x18\x01 \x01(\x0e27.WASyncAction.UsernameChatStartModeAction.ChatStartModeR\rchatStartMode\" \n" +
+ "\fPERSONALIZED\x10\x00\"\xa9\x01\n" +
+ "\x1bUsernameChatStartModeAction\x12h\n" +
+ "\rchatStartMode\x18\x01 \x01(\x0e2B.WAWebProtobufSyncAction.UsernameChatStartModeAction.ChatStartModeR\rchatStartMode\" \n" +
"\rChatStartMode\x12\a\n" +
"\x03LID\x10\x01\x12\x06\n" +
- "\x02PN\x10\x02\"\x90\x03\n" +
+ "\x02PN\x10\x02\"\xdf\x03\n" +
"\x0fLabelEditAction\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x14\n" +
"\x05color\x18\x02 \x01(\x05R\x05color\x12\"\n" +
@@ -5744,9 +6320,10 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\n" +
"orderIndex\x18\x05 \x01(\x05R\n" +
"orderIndex\x12\x1a\n" +
- "\bisActive\x18\x06 \x01(\bR\bisActive\x12:\n" +
- "\x04type\x18\a \x01(\x0e2&.WASyncAction.LabelEditAction.ListTypeR\x04type\x12 \n" +
- "\visImmutable\x18\b \x01(\bR\visImmutable\"{\n" +
+ "\bisActive\x18\x06 \x01(\bR\bisActive\x12E\n" +
+ "\x04type\x18\a \x01(\x0e21.WAWebProtobufSyncAction.LabelEditAction.ListTypeR\x04type\x12 \n" +
+ "\visImmutable\x18\b \x01(\bR\visImmutable\x12$\n" +
+ "\rmuteEndTimeMS\x18\t \x01(\x03R\rmuteEndTimeMS\"\x98\x01\n" +
"\bListType\x12\b\n" +
"\x04NONE\x10\x00\x12\n" +
"\n" +
@@ -5759,7 +6336,10 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\n" +
"\x06CUSTOM\x10\x05\x12\r\n" +
"\tCOMMUNITY\x10\x06\x12\x13\n" +
- "\x0fSERVER_ASSIGNED\x10\a\"\x98\x05\n" +
+ "\x0fSERVER_ASSIGNED\x10\a\x12\v\n" +
+ "\aDRAFTED\x10\b\x12\x0e\n" +
+ "\n" +
+ "AI_HANDOFF\x10\t\"\xa3\x05\n" +
"\x0ePatchDebugData\x12$\n" +
"\rcurrentLthash\x18\x01 \x01(\fR\rcurrentLthash\x12\x1c\n" +
"\tnewLthash\x18\x02 \x01(\fR\tnewLthash\x12\"\n" +
@@ -5769,9 +6349,9 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\x11newLthashSubtract\x18\x06 \x01(\fR\x11newLthashSubtract\x12\x1c\n" +
"\tnumberAdd\x18\a \x01(\x05R\tnumberAdd\x12\"\n" +
"\fnumberRemove\x18\b \x01(\x05R\fnumberRemove\x12&\n" +
- "\x0enumberOverride\x18\t \x01(\x05R\x0enumberOverride\x12M\n" +
+ "\x0enumberOverride\x18\t \x01(\x05R\x0enumberOverride\x12X\n" +
"\x0esenderPlatform\x18\n" +
- " \x01(\x0e2%.WASyncAction.PatchDebugData.PlatformR\x0esenderPlatform\x12(\n" +
+ " \x01(\x0e20.WAWebProtobufSyncAction.PatchDebugData.PlatformR\x0esenderPlatform\x12(\n" +
"\x0fisSenderPrimary\x18\v \x01(\bR\x0fisSenderPrimary\"\x8a\x01\n" +
"\bPlatform\x12\v\n" +
"\aANDROID\x10\x00\x12\b\n" +
@@ -5792,98 +6372,102 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\x04CAPI\x10\v\"A\n" +
"\x11RecentEmojiWeight\x12\x14\n" +
"\x05emoji\x18\x01 \x01(\tR\x05emoji\x12\x16\n" +
- "\x06weight\x18\x02 \x01(\x02R\x06weight\"\xd6.\n" +
+ "\x06weight\x18\x02 \x01(\x02R\x06weight\"\xd26\n" +
"\x0fSyncActionValue\x12\x1c\n" +
- "\ttimestamp\x18\x01 \x01(\x03R\ttimestamp\x128\n" +
+ "\ttimestamp\x18\x01 \x01(\x03R\ttimestamp\x12C\n" +
"\n" +
- "starAction\x18\x02 \x01(\v2\x18.WASyncAction.StarActionR\n" +
- "starAction\x12A\n" +
- "\rcontactAction\x18\x03 \x01(\v2\x1b.WASyncAction.ContactActionR\rcontactAction\x128\n" +
+ "starAction\x18\x02 \x01(\v2#.WAWebProtobufSyncAction.StarActionR\n" +
+ "starAction\x12L\n" +
+ "\rcontactAction\x18\x03 \x01(\v2&.WAWebProtobufSyncAction.ContactActionR\rcontactAction\x12C\n" +
"\n" +
- "muteAction\x18\x04 \x01(\v2\x18.WASyncAction.MuteActionR\n" +
- "muteAction\x125\n" +
- "\tpinAction\x18\x05 \x01(\v2\x17.WASyncAction.PinActionR\tpinAction\x12k\n" +
- "\x1bsecurityNotificationSetting\x18\x06 \x01(\v2).WASyncAction.SecurityNotificationSettingR\x1bsecurityNotificationSetting\x12G\n" +
- "\x0fpushNameSetting\x18\a \x01(\v2\x1d.WASyncAction.PushNameSettingR\x0fpushNameSetting\x12J\n" +
- "\x10quickReplyAction\x18\b \x01(\v2\x1e.WASyncAction.QuickReplyActionR\x10quickReplyAction\x12b\n" +
- "\x18recentEmojiWeightsAction\x18\v \x01(\v2&.WASyncAction.RecentEmojiWeightsActionR\x18recentEmojiWeightsAction\x12G\n" +
- "\x0flabelEditAction\x18\x0e \x01(\v2\x1d.WASyncAction.LabelEditActionR\x0flabelEditAction\x12\\\n" +
- "\x16labelAssociationAction\x18\x0f \x01(\v2$.WASyncAction.LabelAssociationActionR\x16labelAssociationAction\x12A\n" +
- "\rlocaleSetting\x18\x10 \x01(\v2\x1b.WASyncAction.LocaleSettingR\rlocaleSetting\x12M\n" +
- "\x11archiveChatAction\x18\x11 \x01(\v2\x1f.WASyncAction.ArchiveChatActionR\x11archiveChatAction\x12b\n" +
- "\x18deleteMessageForMeAction\x18\x12 \x01(\v2&.WASyncAction.DeleteMessageForMeActionR\x18deleteMessageForMeAction\x12A\n" +
- "\rkeyExpiration\x18\x13 \x01(\v2\x1b.WASyncAction.KeyExpirationR\rkeyExpiration\x12V\n" +
- "\x14markChatAsReadAction\x18\x14 \x01(\v2\".WASyncAction.MarkChatAsReadActionR\x14markChatAsReadAction\x12G\n" +
- "\x0fclearChatAction\x18\x15 \x01(\v2\x1d.WASyncAction.ClearChatActionR\x0fclearChatAction\x12J\n" +
- "\x10deleteChatAction\x18\x16 \x01(\v2\x1e.WASyncAction.DeleteChatActionR\x10deleteChatAction\x12Y\n" +
- "\x15unarchiveChatsSetting\x18\x17 \x01(\v2#.WASyncAction.UnarchiveChatsSettingR\x15unarchiveChatsSetting\x12D\n" +
- "\x0eprimaryFeature\x18\x18 \x01(\v2\x1c.WASyncAction.PrimaryFeatureR\x0eprimaryFeature\x12e\n" +
- "\x19androidUnsupportedActions\x18\x1a \x01(\v2'.WASyncAction.AndroidUnsupportedActionsR\x19androidUnsupportedActions\x12;\n" +
- "\vagentAction\x18\x1b \x01(\v2\x19.WASyncAction.AgentActionR\vagentAction\x12P\n" +
- "\x12subscriptionAction\x18\x1c \x01(\v2 .WASyncAction.SubscriptionActionR\x12subscriptionAction\x12V\n" +
- "\x14userStatusMuteAction\x18\x1d \x01(\v2\".WASyncAction.UserStatusMuteActionR\x14userStatusMuteAction\x12J\n" +
- "\x10timeFormatAction\x18\x1e \x01(\v2\x1e.WASyncAction.TimeFormatActionR\x10timeFormatAction\x125\n" +
- "\tnuxAction\x18\x1f \x01(\v2\x17.WASyncAction.NuxActionR\tnuxAction\x12V\n" +
- "\x14primaryVersionAction\x18 \x01(\v2\".WASyncAction.PrimaryVersionActionR\x14primaryVersionAction\x12A\n" +
- "\rstickerAction\x18! \x01(\v2\x1b.WASyncAction.StickerActionR\rstickerAction\x12e\n" +
- "\x19removeRecentStickerAction\x18\" \x01(\v2'.WASyncAction.RemoveRecentStickerActionR\x19removeRecentStickerAction\x12J\n" +
- "\x0echatAssignment\x18# \x01(\v2\".WASyncAction.ChatAssignmentActionR\x0echatAssignment\x12n\n" +
- "\x1achatAssignmentOpenedStatus\x18$ \x01(\v2..WASyncAction.ChatAssignmentOpenedStatusActionR\x1achatAssignmentOpenedStatus\x12P\n" +
- "\x12pnForLidChatAction\x18% \x01(\v2 .WASyncAction.PnForLidChatActionR\x12pnForLidChatAction\x12\\\n" +
- "\x16marketingMessageAction\x18& \x01(\v2$.WASyncAction.MarketingMessageActionR\x16marketingMessageAction\x12w\n" +
- "\x1fmarketingMessageBroadcastAction\x18' \x01(\v2-.WASyncAction.MarketingMessageBroadcastActionR\x1fmarketingMessageBroadcastAction\x12Y\n" +
- "\x15externalWebBetaAction\x18( \x01(\v2#.WASyncAction.ExternalWebBetaActionR\x15externalWebBetaAction\x12k\n" +
- "\x1bprivacySettingRelayAllCalls\x18) \x01(\v2).WASyncAction.PrivacySettingRelayAllCallsR\x1bprivacySettingRelayAllCalls\x12A\n" +
- "\rcallLogAction\x18* \x01(\v2\x1b.WASyncAction.CallLogActionR\rcallLogAction\x12G\n" +
- "\rstatusPrivacy\x18, \x01(\v2!.WASyncAction.StatusPrivacyActionR\rstatusPrivacy\x12_\n" +
- "\x17botWelcomeRequestAction\x18- \x01(\v2%.WASyncAction.BotWelcomeRequestActionR\x17botWelcomeRequestAction\x12e\n" +
- "\x17deleteIndividualCallLog\x18. \x01(\v2+.WASyncAction.DeleteIndividualCallLogActionR\x17deleteIndividualCallLog\x12Y\n" +
- "\x15labelReorderingAction\x18/ \x01(\v2#.WASyncAction.LabelReorderingActionR\x15labelReorderingAction\x12M\n" +
- "\x11paymentInfoAction\x180 \x01(\v2\x1f.WASyncAction.PaymentInfoActionR\x11paymentInfoAction\x12h\n" +
- "\x1acustomPaymentMethodsAction\x181 \x01(\v2(.WASyncAction.CustomPaymentMethodsActionR\x1acustomPaymentMethodsAction\x12D\n" +
- "\x0elockChatAction\x182 \x01(\v2\x1c.WASyncAction.LockChatActionR\x0elockChatAction\x12Y\n" +
- "\x10chatLockSettings\x183 \x01(\v2-.WAProtobufsChatLockSettings.ChatLockSettingsR\x10chatLockSettings\x12b\n" +
- "\x18wamoUserIdentifierAction\x184 \x01(\v2&.WASyncAction.WamoUserIdentifierActionR\x18wamoUserIdentifierAction\x12\x8f\x01\n" +
- "'privacySettingDisableLinkPreviewsAction\x185 \x01(\v25.WASyncAction.PrivacySettingDisableLinkPreviewsActionR'privacySettingDisableLinkPreviewsAction\x12a\n" +
- "\x12deviceCapabilities\x186 \x01(\v21.WAProtobufsDeviceCapabilities.DeviceCapabilitiesR\x12deviceCapabilities\x12D\n" +
- "\x0enoteEditAction\x187 \x01(\v2\x1c.WASyncAction.NoteEditActionR\x0enoteEditAction\x12G\n" +
- "\x0ffavoritesAction\x188 \x01(\v2\x1d.WASyncAction.FavoritesActionR\x0ffavoritesAction\x12n\n" +
- "\x1cmerchantPaymentPartnerAction\x189 \x01(\v2*.WASyncAction.MerchantPaymentPartnerActionR\x1cmerchantPaymentPartnerAction\x12n\n" +
- "\x1cwaffleAccountLinkStateAction\x18: \x01(\v2*.WASyncAction.WaffleAccountLinkStateActionR\x1cwaffleAccountLinkStateAction\x12_\n" +
- "\x15usernameChatStartMode\x18; \x01(\v2).WASyncAction.UsernameChatStartModeActionR\x15usernameChatStartMode\x12}\n" +
- "!notificationActivitySettingAction\x18< \x01(\v2/.WASyncAction.NotificationActivitySettingActionR!notificationActivitySettingAction\x12J\n" +
- "\x10lidContactAction\x18= \x01(\v2\x1e.WASyncAction.LidContactActionR\x10lidContactAction\x12z\n" +
- " ctwaPerCustomerDataSharingAction\x18> \x01(\v2..WASyncAction.CtwaPerCustomerDataSharingActionR ctwaPerCustomerDataSharingAction\x12J\n" +
- "\x10paymentTosAction\x18? \x01(\v2\x1e.WASyncAction.PaymentTosActionR\x10paymentTosAction\x12\xbc\x01\n" +
- "6privacySettingChannelsPersonalisedRecommendationAction\x18@ \x01(\v2D.WASyncAction.PrivacySettingChannelsPersonalisedRecommendationActionR6privacySettingChannelsPersonalisedRecommendationAction\x12\x80\x01\n" +
- "\"businessBroadcastAssociationAction\x18A \x01(\v20.WASyncAction.BusinessBroadcastAssociationActionR\"businessBroadcastAssociationAction\x12n\n" +
- "\x1cdetectedOutcomesStatusAction\x18B \x01(\v2*.WASyncAction.DetectedOutcomesStatusActionR\x1cdetectedOutcomesStatusAction\x12n\n" +
- "\x1cmaibaAiFeaturesControlAction\x18D \x01(\v2*.WASyncAction.MaibaAIFeaturesControlActionR\x1cmaibaAiFeaturesControlAction\x12k\n" +
- "\x1bbusinessBroadcastListAction\x18E \x01(\v2).WASyncAction.BusinessBroadcastListActionR\x1bbusinessBroadcastListAction\x12M\n" +
- "\x11musicUserIDAction\x18F \x01(\v2\x1f.WASyncAction.MusicUserIdActionR\x11musicUserIDAction\x12\x9e\x01\n" +
- ",statusPostOptInNotificationPreferencesAction\x18G \x01(\v2:.WASyncAction.StatusPostOptInNotificationPreferencesActionR,statusPostOptInNotificationPreferencesAction\x12S\n" +
- "\x13avatarUpdatedAction\x18H \x01(\v2!.WASyncAction.AvatarUpdatedActionR\x13avatarUpdatedAction\x12J\n" +
- "\x10galaxyFlowAction\x18I \x01(\v2\x1e.WASyncAction.GalaxyFlowActionR\x10galaxyFlowAction\"H\n" +
+ "muteAction\x18\x04 \x01(\v2#.WAWebProtobufSyncAction.MuteActionR\n" +
+ "muteAction\x12@\n" +
+ "\tpinAction\x18\x05 \x01(\v2\".WAWebProtobufSyncAction.PinActionR\tpinAction\x12R\n" +
+ "\x0fpushNameSetting\x18\a \x01(\v2(.WAWebProtobufSyncAction.PushNameSettingR\x0fpushNameSetting\x12U\n" +
+ "\x10quickReplyAction\x18\b \x01(\v2).WAWebProtobufSyncAction.QuickReplyActionR\x10quickReplyAction\x12m\n" +
+ "\x18recentEmojiWeightsAction\x18\v \x01(\v21.WAWebProtobufSyncAction.RecentEmojiWeightsActionR\x18recentEmojiWeightsAction\x12R\n" +
+ "\x0flabelEditAction\x18\x0e \x01(\v2(.WAWebProtobufSyncAction.LabelEditActionR\x0flabelEditAction\x12g\n" +
+ "\x16labelAssociationAction\x18\x0f \x01(\v2/.WAWebProtobufSyncAction.LabelAssociationActionR\x16labelAssociationAction\x12L\n" +
+ "\rlocaleSetting\x18\x10 \x01(\v2&.WAWebProtobufSyncAction.LocaleSettingR\rlocaleSetting\x12X\n" +
+ "\x11archiveChatAction\x18\x11 \x01(\v2*.WAWebProtobufSyncAction.ArchiveChatActionR\x11archiveChatAction\x12m\n" +
+ "\x18deleteMessageForMeAction\x18\x12 \x01(\v21.WAWebProtobufSyncAction.DeleteMessageForMeActionR\x18deleteMessageForMeAction\x12L\n" +
+ "\rkeyExpiration\x18\x13 \x01(\v2&.WAWebProtobufSyncAction.KeyExpirationR\rkeyExpiration\x12a\n" +
+ "\x14markChatAsReadAction\x18\x14 \x01(\v2-.WAWebProtobufSyncAction.MarkChatAsReadActionR\x14markChatAsReadAction\x12R\n" +
+ "\x0fclearChatAction\x18\x15 \x01(\v2(.WAWebProtobufSyncAction.ClearChatActionR\x0fclearChatAction\x12U\n" +
+ "\x10deleteChatAction\x18\x16 \x01(\v2).WAWebProtobufSyncAction.DeleteChatActionR\x10deleteChatAction\x12d\n" +
+ "\x15unarchiveChatsSetting\x18\x17 \x01(\v2..WAWebProtobufSyncAction.UnarchiveChatsSettingR\x15unarchiveChatsSetting\x12O\n" +
+ "\x0eprimaryFeature\x18\x18 \x01(\v2'.WAWebProtobufSyncAction.PrimaryFeatureR\x0eprimaryFeature\x12p\n" +
+ "\x19androidUnsupportedActions\x18\x1a \x01(\v22.WAWebProtobufSyncAction.AndroidUnsupportedActionsR\x19androidUnsupportedActions\x12F\n" +
+ "\vagentAction\x18\x1b \x01(\v2$.WAWebProtobufSyncAction.AgentActionR\vagentAction\x12[\n" +
+ "\x12subscriptionAction\x18\x1c \x01(\v2+.WAWebProtobufSyncAction.SubscriptionActionR\x12subscriptionAction\x12a\n" +
+ "\x14userStatusMuteAction\x18\x1d \x01(\v2-.WAWebProtobufSyncAction.UserStatusMuteActionR\x14userStatusMuteAction\x12U\n" +
+ "\x10timeFormatAction\x18\x1e \x01(\v2).WAWebProtobufSyncAction.TimeFormatActionR\x10timeFormatAction\x12@\n" +
+ "\tnuxAction\x18\x1f \x01(\v2\".WAWebProtobufSyncAction.NuxActionR\tnuxAction\x12a\n" +
+ "\x14primaryVersionAction\x18 \x01(\v2-.WAWebProtobufSyncAction.PrimaryVersionActionR\x14primaryVersionAction\x12L\n" +
+ "\rstickerAction\x18! \x01(\v2&.WAWebProtobufSyncAction.StickerActionR\rstickerAction\x12p\n" +
+ "\x19removeRecentStickerAction\x18\" \x01(\v22.WAWebProtobufSyncAction.RemoveRecentStickerActionR\x19removeRecentStickerAction\x12U\n" +
+ "\x0echatAssignment\x18# \x01(\v2-.WAWebProtobufSyncAction.ChatAssignmentActionR\x0echatAssignment\x12y\n" +
+ "\x1achatAssignmentOpenedStatus\x18$ \x01(\v29.WAWebProtobufSyncAction.ChatAssignmentOpenedStatusActionR\x1achatAssignmentOpenedStatus\x12[\n" +
+ "\x12pnForLidChatAction\x18% \x01(\v2+.WAWebProtobufSyncAction.PnForLidChatActionR\x12pnForLidChatAction\x12g\n" +
+ "\x16marketingMessageAction\x18& \x01(\v2/.WAWebProtobufSyncAction.MarketingMessageActionR\x16marketingMessageAction\x12\x82\x01\n" +
+ "\x1fmarketingMessageBroadcastAction\x18' \x01(\v28.WAWebProtobufSyncAction.MarketingMessageBroadcastActionR\x1fmarketingMessageBroadcastAction\x12d\n" +
+ "\x15externalWebBetaAction\x18( \x01(\v2..WAWebProtobufSyncAction.ExternalWebBetaActionR\x15externalWebBetaAction\x12v\n" +
+ "\x1bprivacySettingRelayAllCalls\x18) \x01(\v24.WAWebProtobufSyncAction.PrivacySettingRelayAllCallsR\x1bprivacySettingRelayAllCalls\x12L\n" +
+ "\rcallLogAction\x18* \x01(\v2&.WAWebProtobufSyncAction.CallLogActionR\rcallLogAction\x127\n" +
+ "\x06ugcBot\x18+ \x01(\v2\x1f.WAWebProtobufSyncAction.UGCBotR\x06ugcBot\x12R\n" +
+ "\rstatusPrivacy\x18, \x01(\v2,.WAWebProtobufSyncAction.StatusPrivacyActionR\rstatusPrivacy\x12j\n" +
+ "\x17botWelcomeRequestAction\x18- \x01(\v20.WAWebProtobufSyncAction.BotWelcomeRequestActionR\x17botWelcomeRequestAction\x12p\n" +
+ "\x17deleteIndividualCallLog\x18. \x01(\v26.WAWebProtobufSyncAction.DeleteIndividualCallLogActionR\x17deleteIndividualCallLog\x12d\n" +
+ "\x15labelReorderingAction\x18/ \x01(\v2..WAWebProtobufSyncAction.LabelReorderingActionR\x15labelReorderingAction\x12X\n" +
+ "\x11paymentInfoAction\x180 \x01(\v2*.WAWebProtobufSyncAction.PaymentInfoActionR\x11paymentInfoAction\x12s\n" +
+ "\x1acustomPaymentMethodsAction\x181 \x01(\v23.WAWebProtobufSyncAction.CustomPaymentMethodsActionR\x1acustomPaymentMethodsAction\x12O\n" +
+ "\x0elockChatAction\x182 \x01(\v2'.WAWebProtobufSyncAction.LockChatActionR\x0elockChatAction\x12\\\n" +
+ "\x10chatLockSettings\x183 \x01(\v20.WAWebProtobufsChatLockSettings.ChatLockSettingsR\x10chatLockSettings\x12m\n" +
+ "\x18wamoUserIdentifierAction\x184 \x01(\v21.WAWebProtobufSyncAction.WamoUserIdentifierActionR\x18wamoUserIdentifierAction\x12\x9a\x01\n" +
+ "'privacySettingDisableLinkPreviewsAction\x185 \x01(\v2@.WAWebProtobufSyncAction.PrivacySettingDisableLinkPreviewsActionR'privacySettingDisableLinkPreviewsAction\x12d\n" +
+ "\x12deviceCapabilities\x186 \x01(\v24.WAWebProtobufsDeviceCapabilities.DeviceCapabilitiesR\x12deviceCapabilities\x12O\n" +
+ "\x0enoteEditAction\x187 \x01(\v2'.WAWebProtobufSyncAction.NoteEditActionR\x0enoteEditAction\x12R\n" +
+ "\x0ffavoritesAction\x188 \x01(\v2(.WAWebProtobufSyncAction.FavoritesActionR\x0ffavoritesAction\x12y\n" +
+ "\x1cmerchantPaymentPartnerAction\x189 \x01(\v25.WAWebProtobufSyncAction.MerchantPaymentPartnerActionR\x1cmerchantPaymentPartnerAction\x12y\n" +
+ "\x1cwaffleAccountLinkStateAction\x18: \x01(\v25.WAWebProtobufSyncAction.WaffleAccountLinkStateActionR\x1cwaffleAccountLinkStateAction\x12j\n" +
+ "\x15usernameChatStartMode\x18; \x01(\v24.WAWebProtobufSyncAction.UsernameChatStartModeActionR\x15usernameChatStartMode\x12\x88\x01\n" +
+ "!notificationActivitySettingAction\x18< \x01(\v2:.WAWebProtobufSyncAction.NotificationActivitySettingActionR!notificationActivitySettingAction\x12U\n" +
+ "\x10lidContactAction\x18= \x01(\v2).WAWebProtobufSyncAction.LidContactActionR\x10lidContactAction\x12\x85\x01\n" +
+ " ctwaPerCustomerDataSharingAction\x18> \x01(\v29.WAWebProtobufSyncAction.CtwaPerCustomerDataSharingActionR ctwaPerCustomerDataSharingAction\x12U\n" +
+ "\x10paymentTosAction\x18? \x01(\v2).WAWebProtobufSyncAction.PaymentTosActionR\x10paymentTosAction\x12\xc7\x01\n" +
+ "6privacySettingChannelsPersonalisedRecommendationAction\x18@ \x01(\v2O.WAWebProtobufSyncAction.PrivacySettingChannelsPersonalisedRecommendationActionR6privacySettingChannelsPersonalisedRecommendationAction\x12\x8b\x01\n" +
+ "\"businessBroadcastAssociationAction\x18A \x01(\v2;.WAWebProtobufSyncAction.BusinessBroadcastAssociationActionR\"businessBroadcastAssociationAction\x12y\n" +
+ "\x1cdetectedOutcomesStatusAction\x18B \x01(\v25.WAWebProtobufSyncAction.DetectedOutcomesStatusActionR\x1cdetectedOutcomesStatusAction\x12y\n" +
+ "\x1cmaibaAiFeaturesControlAction\x18D \x01(\v25.WAWebProtobufSyncAction.MaibaAIFeaturesControlActionR\x1cmaibaAiFeaturesControlAction\x12v\n" +
+ "\x1bbusinessBroadcastListAction\x18E \x01(\v24.WAWebProtobufSyncAction.BusinessBroadcastListActionR\x1bbusinessBroadcastListAction\x12X\n" +
+ "\x11musicUserIDAction\x18F \x01(\v2*.WAWebProtobufSyncAction.MusicUserIdActionR\x11musicUserIDAction\x12\xa9\x01\n" +
+ ",statusPostOptInNotificationPreferencesAction\x18G \x01(\v2E.WAWebProtobufSyncAction.StatusPostOptInNotificationPreferencesActionR,statusPostOptInNotificationPreferencesAction\x12^\n" +
+ "\x13avatarUpdatedAction\x18H \x01(\v2,.WAWebProtobufSyncAction.AvatarUpdatedActionR\x13avatarUpdatedAction\x12\x7f\n" +
+ "\x1eprivateProcessingSettingAction\x18J \x01(\v27.WAWebProtobufSyncAction.PrivateProcessingSettingActionR\x1eprivateProcessingSettingAction\x12\x7f\n" +
+ "\x1enewsletterSavedInterestsAction\x18K \x01(\v27.WAWebProtobufSyncAction.NewsletterSavedInterestsActionR\x1enewsletterSavedInterestsAction\x12a\n" +
+ "\x14aiThreadRenameAction\x18L \x01(\v2-.WAWebProtobufSyncAction.AiThreadRenameActionR\x14aiThreadRenameAction\x12m\n" +
+ "\x18interactiveMessageAction\x18M \x01(\v21.WAWebProtobufSyncAction.InteractiveMessageActionR\x18interactiveMessageAction\"2\n" +
+ "\x14AiThreadRenameAction\x12\x1a\n" +
+ "\bnewTitle\x18\x01 \x01(\tR\bnewTitle\"H\n" +
",StatusPostOptInNotificationPreferencesAction\x12\x18\n" +
"\aenabled\x18\x01 \x01(\bR\aenabled\"H\n" +
"\x18BroadcastListParticipant\x12\x16\n" +
"\x06lidJID\x18\x01 \x02(\tR\x06lidJID\x12\x14\n" +
- "\x05pnJID\x18\x02 \x01(\tR\x05pnJID\"\x9f\x01\n" +
+ "\x05pnJID\x18\x02 \x01(\tR\x05pnJID\"\xaa\x01\n" +
"\x1bBusinessBroadcastListAction\x12\x18\n" +
- "\adeleted\x18\x01 \x01(\bR\adeleted\x12J\n" +
- "\fparticipants\x18\x02 \x03(\v2&.WASyncAction.BroadcastListParticipantR\fparticipants\x12\x1a\n" +
+ "\adeleted\x18\x01 \x01(\bR\adeleted\x12U\n" +
+ "\fparticipants\x18\x02 \x03(\v21.WAWebProtobufSyncAction.BroadcastListParticipantR\fparticipants\x12\x1a\n" +
"\blistName\x18\x03 \x01(\tR\blistName\">\n" +
"\"BusinessBroadcastAssociationAction\x12\x18\n" +
"\adeleted\x18\x01 \x01(\bR\adeleted\"t\n" +
" CtwaPerCustomerDataSharingAction\x12P\n" +
- "#isCtwaPerCustomerDataSharingEnabled\x18\x01 \x01(\bR#isCtwaPerCustomerDataSharingEnabled\"\xa4\x01\n" +
+ "#isCtwaPerCustomerDataSharingEnabled\x18\x01 \x01(\bR#isCtwaPerCustomerDataSharingEnabled\"h\n" +
"\x10LidContactAction\x12\x1a\n" +
"\bfullName\x18\x01 \x01(\tR\bfullName\x12\x1c\n" +
"\tfirstName\x18\x02 \x01(\tR\tfirstName\x12\x1a\n" +
- "\busername\x18\x03 \x01(\tR\busername\x12:\n" +
- "\x18saveOnPrimaryAddressbook\x18\x04 \x01(\bR\x18saveOnPrimaryAddressbook\"s\n" +
- "\x0fFavoritesAction\x12D\n" +
- "\tfavorites\x18\x01 \x03(\v2&.WASyncAction.FavoritesAction.FavoriteR\tfavorites\x1a\x1a\n" +
+ "\busername\x18\x03 \x01(\tR\busername\"~\n" +
+ "\x0fFavoritesAction\x12O\n" +
+ "\tfavorites\x18\x01 \x03(\v21.WAWebProtobufSyncAction.FavoritesAction.FavoriteR\tfavorites\x1a\x1a\n" +
"\bFavorite\x12\x0e\n" +
"\x02ID\x18\x01 \x01(\tR\x02ID\"`\n" +
"6PrivacySettingChannelsPersonalisedRecommendationAction\x12&\n" +
@@ -5895,14 +6479,14 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"identifier\x18\x01 \x01(\tR\n" +
"identifier\"(\n" +
"\x0eLockChatAction\x12\x16\n" +
- "\x06locked\x18\x01 \x01(\bR\x06locked\"s\n" +
- "\x1aCustomPaymentMethodsAction\x12U\n" +
- "\x14customPaymentMethods\x18\x01 \x03(\v2!.WASyncAction.CustomPaymentMethodR\x14customPaymentMethods\"\xae\x01\n" +
+ "\x06locked\x18\x01 \x01(\bR\x06locked\"~\n" +
+ "\x1aCustomPaymentMethodsAction\x12`\n" +
+ "\x14customPaymentMethods\x18\x01 \x03(\v2,.WAWebProtobufSyncAction.CustomPaymentMethodR\x14customPaymentMethods\"\xb9\x01\n" +
"\x13CustomPaymentMethod\x12\"\n" +
"\fcredentialID\x18\x01 \x02(\tR\fcredentialID\x12\x18\n" +
"\acountry\x18\x02 \x02(\tR\acountry\x12\x12\n" +
- "\x04type\x18\x03 \x02(\tR\x04type\x12E\n" +
- "\bmetadata\x18\x04 \x03(\v2).WASyncAction.CustomPaymentMethodMetadataR\bmetadata\"E\n" +
+ "\x04type\x18\x03 \x02(\tR\x04type\x12P\n" +
+ "\bmetadata\x18\x04 \x03(\v24.WAWebProtobufSyncAction.CustomPaymentMethodMetadataR\bmetadata\"E\n" +
"\x1bCustomPaymentMethodMetadata\x12\x10\n" +
"\x03key\x18\x01 \x02(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x02(\tR\x05value\"%\n" +
@@ -5916,11 +6500,17 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"isIncoming\x18\x02 \x01(\bR\n" +
"isIncoming\"1\n" +
"\x17BotWelcomeRequestAction\x12\x16\n" +
- "\x06isSent\x18\x01 \x01(\bR\x06isSent\"5\n" +
+ "\x06isSent\x18\x01 \x01(\bR\x06isSent\"\\\n" +
+ "\x1eNewsletterSavedInterestsAction\x12:\n" +
+ "\x18newsletterSavedInterests\x18\x01 \x01(\tR\x18newsletterSavedInterests\"5\n" +
"\x11MusicUserIdAction\x12 \n" +
- "\vmusicUserID\x18\x01 \x01(\tR\vmusicUserID\"R\n" +
- "\rCallLogAction\x12A\n" +
- "\rcallLogRecord\x18\x01 \x01(\v2\x1b.WASyncAction.CallLogRecordR\rcallLogRecord\";\n" +
+ "\vmusicUserID\x18\x01 \x01(\tR\vmusicUserID\"(\n" +
+ "\x06UGCBot\x12\x1e\n" +
+ "\n" +
+ "definition\x18\x01 \x01(\fR\n" +
+ "definition\"]\n" +
+ "\rCallLogAction\x12L\n" +
+ "\rcallLogRecord\x18\x01 \x01(\v2&.WAWebProtobufSyncAction.CallLogRecordR\rcallLogRecord\";\n" +
"\x1bPrivacySettingRelayAllCalls\x12\x1c\n" +
"\tisEnabled\x18\x01 \x01(\bR\tisEnabled\"<\n" +
"\x1cDetectedOutcomesStatusAction\x12\x1c\n" +
@@ -5984,28 +6574,28 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\x0fexpiredKeyEpoch\x18\x01 \x01(\x05R\x0fexpiredKeyEpoch\"Y\n" +
"\x11SyncActionMessage\x12&\n" +
"\x03key\x18\x01 \x01(\v2\x14.WACommon.MessageKeyR\x03key\x12\x1c\n" +
- "\ttimestamp\x18\x02 \x01(\x03R\ttimestamp\"\xc9\x01\n" +
+ "\ttimestamp\x18\x02 \x01(\x03R\ttimestamp\"\xd4\x01\n" +
"\x16SyncActionMessageRange\x122\n" +
"\x14lastMessageTimestamp\x18\x01 \x01(\x03R\x14lastMessageTimestamp\x12>\n" +
- "\x1alastSystemMessageTimestamp\x18\x02 \x01(\x03R\x1alastSystemMessageTimestamp\x12;\n" +
- "\bmessages\x18\x03 \x03(\v2\x1f.WASyncAction.SyncActionMessageR\bmessages\"?\n" +
+ "\x1alastSystemMessageTimestamp\x18\x02 \x01(\x03R\x1alastSystemMessageTimestamp\x12F\n" +
+ "\bmessages\x18\x03 \x03(\v2*.WAWebProtobufSyncAction.SyncActionMessageR\bmessages\"?\n" +
"\x15UnarchiveChatsSetting\x12&\n" +
- "\x0eunarchiveChats\x18\x01 \x01(\bR\x0eunarchiveChats\"\\\n" +
- "\x10DeleteChatAction\x12H\n" +
- "\fmessageRange\x18\x01 \x01(\v2$.WASyncAction.SyncActionMessageRangeR\fmessageRange\"[\n" +
- "\x0fClearChatAction\x12H\n" +
- "\fmessageRange\x18\x01 \x01(\v2$.WASyncAction.SyncActionMessageRangeR\fmessageRange\"t\n" +
+ "\x0eunarchiveChats\x18\x01 \x01(\bR\x0eunarchiveChats\"g\n" +
+ "\x10DeleteChatAction\x12S\n" +
+ "\fmessageRange\x18\x01 \x01(\v2/.WAWebProtobufSyncAction.SyncActionMessageRangeR\fmessageRange\"f\n" +
+ "\x0fClearChatAction\x12S\n" +
+ "\fmessageRange\x18\x01 \x01(\v2/.WAWebProtobufSyncAction.SyncActionMessageRangeR\fmessageRange\"\x7f\n" +
"\x14MarkChatAsReadAction\x12\x12\n" +
- "\x04read\x18\x01 \x01(\bR\x04read\x12H\n" +
- "\fmessageRange\x18\x02 \x01(\v2$.WASyncAction.SyncActionMessageRangeR\fmessageRange\"h\n" +
+ "\x04read\x18\x01 \x01(\bR\x04read\x12S\n" +
+ "\fmessageRange\x18\x02 \x01(\v2/.WAWebProtobufSyncAction.SyncActionMessageRangeR\fmessageRange\"h\n" +
"\x18DeleteMessageForMeAction\x12 \n" +
"\vdeleteMedia\x18\x01 \x01(\bR\vdeleteMedia\x12*\n" +
- "\x10messageTimestamp\x18\x02 \x01(\x03R\x10messageTimestamp\"y\n" +
+ "\x10messageTimestamp\x18\x02 \x01(\x03R\x10messageTimestamp\"\x84\x01\n" +
"\x11ArchiveChatAction\x12\x1a\n" +
- "\barchived\x18\x01 \x01(\bR\barchived\x12H\n" +
- "\fmessageRange\x18\x02 \x01(\v2$.WASyncAction.SyncActionMessageRangeR\fmessageRange\"U\n" +
- "\x18RecentEmojiWeightsAction\x129\n" +
- "\aweights\x18\x01 \x03(\v2\x1f.WASyncAction.RecentEmojiWeightR\aweights\"2\n" +
+ "\barchived\x18\x01 \x01(\bR\barchived\x12S\n" +
+ "\fmessageRange\x18\x02 \x01(\v2/.WAWebProtobufSyncAction.SyncActionMessageRangeR\fmessageRange\"`\n" +
+ "\x18RecentEmojiWeightsAction\x12D\n" +
+ "\aweights\x18\x01 \x03(\v2*.WAWebProtobufSyncAction.RecentEmojiWeightR\aweights\"2\n" +
"\x16LabelAssociationAction\x12\x18\n" +
"\alabeled\x18\x01 \x01(\bR\alabeled\"\x94\x01\n" +
"\x10QuickReplyAction\x12\x1a\n" +
@@ -6017,9 +6607,7 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\rLocaleSetting\x12\x16\n" +
"\x06locale\x18\x01 \x01(\tR\x06locale\"%\n" +
"\x0fPushNameSetting\x12\x12\n" +
- "\x04name\x18\x01 \x01(\tR\x04name\"I\n" +
- "\x1bSecurityNotificationSetting\x12*\n" +
- "\x10showNotification\x18\x01 \x01(\bR\x10showNotification\"#\n" +
+ "\x04name\x18\x01 \x01(\tR\x04name\"#\n" +
"\tPinAction\x12\x16\n" +
"\x06pinned\x18\x01 \x01(\bR\x06pinned\"l\n" +
"\n" +
@@ -6036,249 +6624,342 @@ const file_waSyncAction_WASyncAction_proto_rawDesc = "" +
"\busername\x18\x06 \x01(\tR\busername\"&\n" +
"\n" +
"StarAction\x12\x18\n" +
- "\astarred\x18\x01 \x01(\bR\astarred\"\x8f\x01\n" +
+ "\astarred\x18\x01 \x01(\bR\astarred\"\x9a\x01\n" +
"\x0eSyncActionData\x12\x14\n" +
- "\x05index\x18\x01 \x01(\fR\x05index\x123\n" +
- "\x05value\x18\x02 \x01(\v2\x1d.WASyncAction.SyncActionValueR\x05value\x12\x18\n" +
+ "\x05index\x18\x01 \x01(\fR\x05index\x12>\n" +
+ "\x05value\x18\x02 \x01(\v2(.WAWebProtobufSyncAction.SyncActionValueR\x05value\x12\x18\n" +
"\apadding\x18\x03 \x01(\fR\apadding\x12\x18\n" +
- "\aversion\x18\x04 \x01(\x05R\aversionB(Z&go.mau.fi/whatsmeow/proto/waSyncAction"
+ "\aversion\x18\x04 \x01(\x05R\aversion*\x8b\x01\n" +
+ "\x0eCollectionName\x12\x1b\n" +
+ "\x17COLLECTION_NAME_UNKNOWN\x10\x00\x12\v\n" +
+ "\aREGULAR\x10\x01\x12\x0f\n" +
+ "\vREGULAR_LOW\x10\x02\x12\x10\n" +
+ "\fREGULAR_HIGH\x10\x03\x12\x12\n" +
+ "\x0eCRITICAL_BLOCK\x10\x04\x12\x18\n" +
+ "\x14CRITICAL_UNBLOCK_LOW\x10\x05*\xda\x10\n" +
+ "\rMutationProps\x12\x0f\n" +
+ "\vSTAR_ACTION\x10\x02\x12\x12\n" +
+ "\x0eCONTACT_ACTION\x10\x03\x12\x0f\n" +
+ "\vMUTE_ACTION\x10\x04\x12\x0e\n" +
+ "\n" +
+ "PIN_ACTION\x10\x05\x12!\n" +
+ "\x1dSECURITY_NOTIFICATION_SETTING\x10\x06\x12\x15\n" +
+ "\x11PUSH_NAME_SETTING\x10\a\x12\x16\n" +
+ "\x12QUICK_REPLY_ACTION\x10\b\x12\x1f\n" +
+ "\x1bRECENT_EMOJI_WEIGHTS_ACTION\x10\v\x12\x18\n" +
+ "\x14LABEL_MESSAGE_ACTION\x10\r\x12\x15\n" +
+ "\x11LABEL_EDIT_ACTION\x10\x0e\x12\x1c\n" +
+ "\x18LABEL_ASSOCIATION_ACTION\x10\x0f\x12\x12\n" +
+ "\x0eLOCALE_SETTING\x10\x10\x12\x17\n" +
+ "\x13ARCHIVE_CHAT_ACTION\x10\x11\x12 \n" +
+ "\x1cDELETE_MESSAGE_FOR_ME_ACTION\x10\x12\x12\x12\n" +
+ "\x0eKEY_EXPIRATION\x10\x13\x12\x1c\n" +
+ "\x18MARK_CHAT_AS_READ_ACTION\x10\x14\x12\x15\n" +
+ "\x11CLEAR_CHAT_ACTION\x10\x15\x12\x16\n" +
+ "\x12DELETE_CHAT_ACTION\x10\x16\x12\x1b\n" +
+ "\x17UNARCHIVE_CHATS_SETTING\x10\x17\x12\x13\n" +
+ "\x0fPRIMARY_FEATURE\x10\x18\x12\x1f\n" +
+ "\x1bANDROID_UNSUPPORTED_ACTIONS\x10\x1a\x12\x10\n" +
+ "\fAGENT_ACTION\x10\x1b\x12\x17\n" +
+ "\x13SUBSCRIPTION_ACTION\x10\x1c\x12\x1b\n" +
+ "\x17USER_STATUS_MUTE_ACTION\x10\x1d\x12\x16\n" +
+ "\x12TIME_FORMAT_ACTION\x10\x1e\x12\x0e\n" +
+ "\n" +
+ "NUX_ACTION\x10\x1f\x12\x1a\n" +
+ "\x16PRIMARY_VERSION_ACTION\x10 \x12\x12\n" +
+ "\x0eSTICKER_ACTION\x10!\x12 \n" +
+ "\x1cREMOVE_RECENT_STICKER_ACTION\x10\"\x12\x13\n" +
+ "\x0fCHAT_ASSIGNMENT\x10#\x12!\n" +
+ "\x1dCHAT_ASSIGNMENT_OPENED_STATUS\x10$\x12\x1a\n" +
+ "\x16PN_FOR_LID_CHAT_ACTION\x10%\x12\x1c\n" +
+ "\x18MARKETING_MESSAGE_ACTION\x10&\x12&\n" +
+ "\"MARKETING_MESSAGE_BROADCAST_ACTION\x10'\x12\x1c\n" +
+ "\x18EXTERNAL_WEB_BETA_ACTION\x10(\x12#\n" +
+ "\x1fPRIVACY_SETTING_RELAY_ALL_CALLS\x10)\x12\x13\n" +
+ "\x0fCALL_LOG_ACTION\x10*\x12\v\n" +
+ "\aUGC_BOT\x10+\x12\x12\n" +
+ "\x0eSTATUS_PRIVACY\x10,\x12\x1e\n" +
+ "\x1aBOT_WELCOME_REQUEST_ACTION\x10-\x12\x1e\n" +
+ "\x1aDELETE_INDIVIDUAL_CALL_LOG\x10.\x12\x1b\n" +
+ "\x17LABEL_REORDERING_ACTION\x10/\x12\x17\n" +
+ "\x13PAYMENT_INFO_ACTION\x100\x12!\n" +
+ "\x1dCUSTOM_PAYMENT_METHODS_ACTION\x101\x12\x14\n" +
+ "\x10LOCK_CHAT_ACTION\x102\x12\x16\n" +
+ "\x12CHAT_LOCK_SETTINGS\x103\x12\x1f\n" +
+ "\x1bWAMO_USER_IDENTIFIER_ACTION\x104\x120\n" +
+ ",PRIVACY_SETTING_DISABLE_LINK_PREVIEWS_ACTION\x105\x12\x17\n" +
+ "\x13DEVICE_CAPABILITIES\x106\x12\x14\n" +
+ "\x10NOTE_EDIT_ACTION\x107\x12\x14\n" +
+ "\x10FAVORITES_ACTION\x108\x12#\n" +
+ "\x1fMERCHANT_PAYMENT_PARTNER_ACTION\x109\x12$\n" +
+ " WAFFLE_ACCOUNT_LINK_STATE_ACTION\x10:\x12\x1c\n" +
+ "\x18USERNAME_CHAT_START_MODE\x10;\x12(\n" +
+ "$NOTIFICATION_ACTIVITY_SETTING_ACTION\x10<\x12\x16\n" +
+ "\x12LID_CONTACT_ACTION\x10=\x12)\n" +
+ "%CTWA_PER_CUSTOMER_DATA_SHARING_ACTION\x10>\x12\x16\n" +
+ "\x12PAYMENT_TOS_ACTION\x10?\x12?\n" +
+ ";PRIVACY_SETTING_CHANNELS_PERSONALISED_RECOMMENDATION_ACTION\x10@\x12)\n" +
+ "%BUSINESS_BROADCAST_ASSOCIATION_ACTION\x10A\x12#\n" +
+ "\x1fDETECTED_OUTCOMES_STATUS_ACTION\x10B\x12$\n" +
+ " MAIBA_AI_FEATURES_CONTROL_ACTION\x10D\x12\"\n" +
+ "\x1eBUSINESS_BROADCAST_LIST_ACTION\x10E\x12\x18\n" +
+ "\x14MUSIC_USER_ID_ACTION\x10F\x126\n" +
+ "2STATUS_POST_OPT_IN_NOTIFICATION_PREFERENCES_ACTION\x10G\x12\x19\n" +
+ "\x15AVATAR_UPDATED_ACTION\x10H\x12\x16\n" +
+ "\x12GALAXY_FLOW_ACTION\x10I\x12%\n" +
+ "!PRIVATE_PROCESSING_SETTING_ACTION\x10J\x12%\n" +
+ "!NEWSLETTER_SAVED_INTERESTS_ACTION\x10K\x12\x1b\n" +
+ "\x17AI_THREAD_RENAME_ACTION\x10L\x12\x1e\n" +
+ "\x1aINTERACTIVE_MESSAGE_ACTION\x10M\x12\x11\n" +
+ "\fSHARE_OWN_PN\x10\x91N\x12\x1e\n" +
+ "\x19BUSINESS_BROADCAST_ACTION\x10\x92NB(Z&go.mau.fi/whatsmeow/proto/waSyncAction"
var (
- file_waSyncAction_WASyncAction_proto_rawDescOnce sync.Once
- file_waSyncAction_WASyncAction_proto_rawDescData []byte
+ file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescOnce sync.Once
+ file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescData []byte
)
-func file_waSyncAction_WASyncAction_proto_rawDescGZIP() []byte {
- file_waSyncAction_WASyncAction_proto_rawDescOnce.Do(func() {
- file_waSyncAction_WASyncAction_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waSyncAction_WASyncAction_proto_rawDesc), len(file_waSyncAction_WASyncAction_proto_rawDesc)))
+func file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescGZIP() []byte {
+ file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescOnce.Do(func() {
+ file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waSyncAction_WAWebProtobufSyncAction_proto_rawDesc), len(file_waSyncAction_WAWebProtobufSyncAction_proto_rawDesc)))
})
- return file_waSyncAction_WASyncAction_proto_rawDescData
+ return file_waSyncAction_WAWebProtobufSyncAction_proto_rawDescData
}
-var file_waSyncAction_WASyncAction_proto_enumTypes = make([]protoimpl.EnumInfo, 16)
-var file_waSyncAction_WASyncAction_proto_msgTypes = make([]protoimpl.MessageInfo, 75)
-var file_waSyncAction_WASyncAction_proto_goTypes = []any{
- (CallLogRecord_CallType)(0), // 0: WASyncAction.CallLogRecord.CallType
- (CallLogRecord_SilenceReason)(0), // 1: WASyncAction.CallLogRecord.SilenceReason
- (CallLogRecord_CallResult)(0), // 2: WASyncAction.CallLogRecord.CallResult
- (AvatarUpdatedAction_AvatarEventType)(0), // 3: WASyncAction.AvatarUpdatedAction.AvatarEventType
- (MaibaAIFeaturesControlAction_MaibaAIFeatureStatus)(0), // 4: WASyncAction.MaibaAIFeaturesControlAction.MaibaAIFeatureStatus
- (PaymentTosAction_PaymentNotice)(0), // 5: WASyncAction.PaymentTosAction.PaymentNotice
- (NotificationActivitySettingAction_NotificationActivitySetting)(0), // 6: WASyncAction.NotificationActivitySettingAction.NotificationActivitySetting
- (WaffleAccountLinkStateAction_AccountLinkState)(0), // 7: WASyncAction.WaffleAccountLinkStateAction.AccountLinkState
- (MerchantPaymentPartnerAction_Status)(0), // 8: WASyncAction.MerchantPaymentPartnerAction.Status
- (GalaxyFlowAction_GalaxyFlowActionType)(0), // 9: WASyncAction.GalaxyFlowAction.GalaxyFlowActionType
- (NoteEditAction_NoteType)(0), // 10: WASyncAction.NoteEditAction.NoteType
- (StatusPrivacyAction_StatusDistributionMode)(0), // 11: WASyncAction.StatusPrivacyAction.StatusDistributionMode
- (MarketingMessageAction_MarketingMessagePrototypeType)(0), // 12: WASyncAction.MarketingMessageAction.MarketingMessagePrototypeType
- (UsernameChatStartModeAction_ChatStartMode)(0), // 13: WASyncAction.UsernameChatStartModeAction.ChatStartMode
- (LabelEditAction_ListType)(0), // 14: WASyncAction.LabelEditAction.ListType
- (PatchDebugData_Platform)(0), // 15: WASyncAction.PatchDebugData.Platform
- (*CallLogRecord)(nil), // 16: WASyncAction.CallLogRecord
- (*AvatarUpdatedAction)(nil), // 17: WASyncAction.AvatarUpdatedAction
- (*MaibaAIFeaturesControlAction)(nil), // 18: WASyncAction.MaibaAIFeaturesControlAction
- (*PaymentTosAction)(nil), // 19: WASyncAction.PaymentTosAction
- (*NotificationActivitySettingAction)(nil), // 20: WASyncAction.NotificationActivitySettingAction
- (*WaffleAccountLinkStateAction)(nil), // 21: WASyncAction.WaffleAccountLinkStateAction
- (*MerchantPaymentPartnerAction)(nil), // 22: WASyncAction.MerchantPaymentPartnerAction
- (*GalaxyFlowAction)(nil), // 23: WASyncAction.GalaxyFlowAction
- (*NoteEditAction)(nil), // 24: WASyncAction.NoteEditAction
- (*StatusPrivacyAction)(nil), // 25: WASyncAction.StatusPrivacyAction
- (*MarketingMessageAction)(nil), // 26: WASyncAction.MarketingMessageAction
- (*UsernameChatStartModeAction)(nil), // 27: WASyncAction.UsernameChatStartModeAction
- (*LabelEditAction)(nil), // 28: WASyncAction.LabelEditAction
- (*PatchDebugData)(nil), // 29: WASyncAction.PatchDebugData
- (*RecentEmojiWeight)(nil), // 30: WASyncAction.RecentEmojiWeight
- (*SyncActionValue)(nil), // 31: WASyncAction.SyncActionValue
- (*StatusPostOptInNotificationPreferencesAction)(nil), // 32: WASyncAction.StatusPostOptInNotificationPreferencesAction
- (*BroadcastListParticipant)(nil), // 33: WASyncAction.BroadcastListParticipant
- (*BusinessBroadcastListAction)(nil), // 34: WASyncAction.BusinessBroadcastListAction
- (*BusinessBroadcastAssociationAction)(nil), // 35: WASyncAction.BusinessBroadcastAssociationAction
- (*CtwaPerCustomerDataSharingAction)(nil), // 36: WASyncAction.CtwaPerCustomerDataSharingAction
- (*LidContactAction)(nil), // 37: WASyncAction.LidContactAction
- (*FavoritesAction)(nil), // 38: WASyncAction.FavoritesAction
- (*PrivacySettingChannelsPersonalisedRecommendationAction)(nil), // 39: WASyncAction.PrivacySettingChannelsPersonalisedRecommendationAction
- (*PrivacySettingDisableLinkPreviewsAction)(nil), // 40: WASyncAction.PrivacySettingDisableLinkPreviewsAction
- (*WamoUserIdentifierAction)(nil), // 41: WASyncAction.WamoUserIdentifierAction
- (*LockChatAction)(nil), // 42: WASyncAction.LockChatAction
- (*CustomPaymentMethodsAction)(nil), // 43: WASyncAction.CustomPaymentMethodsAction
- (*CustomPaymentMethod)(nil), // 44: WASyncAction.CustomPaymentMethod
- (*CustomPaymentMethodMetadata)(nil), // 45: WASyncAction.CustomPaymentMethodMetadata
- (*PaymentInfoAction)(nil), // 46: WASyncAction.PaymentInfoAction
- (*LabelReorderingAction)(nil), // 47: WASyncAction.LabelReorderingAction
- (*DeleteIndividualCallLogAction)(nil), // 48: WASyncAction.DeleteIndividualCallLogAction
- (*BotWelcomeRequestAction)(nil), // 49: WASyncAction.BotWelcomeRequestAction
- (*MusicUserIdAction)(nil), // 50: WASyncAction.MusicUserIdAction
- (*CallLogAction)(nil), // 51: WASyncAction.CallLogAction
- (*PrivacySettingRelayAllCalls)(nil), // 52: WASyncAction.PrivacySettingRelayAllCalls
- (*DetectedOutcomesStatusAction)(nil), // 53: WASyncAction.DetectedOutcomesStatusAction
- (*ExternalWebBetaAction)(nil), // 54: WASyncAction.ExternalWebBetaAction
- (*MarketingMessageBroadcastAction)(nil), // 55: WASyncAction.MarketingMessageBroadcastAction
- (*PnForLidChatAction)(nil), // 56: WASyncAction.PnForLidChatAction
- (*ChatAssignmentOpenedStatusAction)(nil), // 57: WASyncAction.ChatAssignmentOpenedStatusAction
- (*ChatAssignmentAction)(nil), // 58: WASyncAction.ChatAssignmentAction
- (*StickerAction)(nil), // 59: WASyncAction.StickerAction
- (*RemoveRecentStickerAction)(nil), // 60: WASyncAction.RemoveRecentStickerAction
- (*PrimaryVersionAction)(nil), // 61: WASyncAction.PrimaryVersionAction
- (*NuxAction)(nil), // 62: WASyncAction.NuxAction
- (*TimeFormatAction)(nil), // 63: WASyncAction.TimeFormatAction
- (*UserStatusMuteAction)(nil), // 64: WASyncAction.UserStatusMuteAction
- (*SubscriptionAction)(nil), // 65: WASyncAction.SubscriptionAction
- (*AgentAction)(nil), // 66: WASyncAction.AgentAction
- (*AndroidUnsupportedActions)(nil), // 67: WASyncAction.AndroidUnsupportedActions
- (*PrimaryFeature)(nil), // 68: WASyncAction.PrimaryFeature
- (*KeyExpiration)(nil), // 69: WASyncAction.KeyExpiration
- (*SyncActionMessage)(nil), // 70: WASyncAction.SyncActionMessage
- (*SyncActionMessageRange)(nil), // 71: WASyncAction.SyncActionMessageRange
- (*UnarchiveChatsSetting)(nil), // 72: WASyncAction.UnarchiveChatsSetting
- (*DeleteChatAction)(nil), // 73: WASyncAction.DeleteChatAction
- (*ClearChatAction)(nil), // 74: WASyncAction.ClearChatAction
- (*MarkChatAsReadAction)(nil), // 75: WASyncAction.MarkChatAsReadAction
- (*DeleteMessageForMeAction)(nil), // 76: WASyncAction.DeleteMessageForMeAction
- (*ArchiveChatAction)(nil), // 77: WASyncAction.ArchiveChatAction
- (*RecentEmojiWeightsAction)(nil), // 78: WASyncAction.RecentEmojiWeightsAction
- (*LabelAssociationAction)(nil), // 79: WASyncAction.LabelAssociationAction
- (*QuickReplyAction)(nil), // 80: WASyncAction.QuickReplyAction
- (*LocaleSetting)(nil), // 81: WASyncAction.LocaleSetting
- (*PushNameSetting)(nil), // 82: WASyncAction.PushNameSetting
- (*SecurityNotificationSetting)(nil), // 83: WASyncAction.SecurityNotificationSetting
- (*PinAction)(nil), // 84: WASyncAction.PinAction
- (*MuteAction)(nil), // 85: WASyncAction.MuteAction
- (*ContactAction)(nil), // 86: WASyncAction.ContactAction
- (*StarAction)(nil), // 87: WASyncAction.StarAction
- (*SyncActionData)(nil), // 88: WASyncAction.SyncActionData
- (*CallLogRecord_ParticipantInfo)(nil), // 89: WASyncAction.CallLogRecord.ParticipantInfo
- (*FavoritesAction_Favorite)(nil), // 90: WASyncAction.FavoritesAction.Favorite
- (*waChatLockSettings.ChatLockSettings)(nil), // 91: WAProtobufsChatLockSettings.ChatLockSettings
- (*waDeviceCapabilities.DeviceCapabilities)(nil), // 92: WAProtobufsDeviceCapabilities.DeviceCapabilities
- (*waCommon.MessageKey)(nil), // 93: WACommon.MessageKey
+var file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes = make([]protoimpl.EnumInfo, 19)
+var file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes = make([]protoimpl.MessageInfo, 78)
+var file_waSyncAction_WAWebProtobufSyncAction_proto_goTypes = []any{
+ (CollectionName)(0), // 0: WAWebProtobufSyncAction.CollectionName
+ (MutationProps)(0), // 1: WAWebProtobufSyncAction.MutationProps
+ (CallLogRecord_CallType)(0), // 2: WAWebProtobufSyncAction.CallLogRecord.CallType
+ (CallLogRecord_SilenceReason)(0), // 3: WAWebProtobufSyncAction.CallLogRecord.SilenceReason
+ (CallLogRecord_CallResult)(0), // 4: WAWebProtobufSyncAction.CallLogRecord.CallResult
+ (InteractiveMessageAction_InteractiveMessageActionMode)(0), // 5: WAWebProtobufSyncAction.InteractiveMessageAction.InteractiveMessageActionMode
+ (PrivateProcessingSettingAction_PrivateProcessingStatus)(0), // 6: WAWebProtobufSyncAction.PrivateProcessingSettingAction.PrivateProcessingStatus
+ (AvatarUpdatedAction_AvatarEventType)(0), // 7: WAWebProtobufSyncAction.AvatarUpdatedAction.AvatarEventType
+ (MaibaAIFeaturesControlAction_MaibaAIFeatureStatus)(0), // 8: WAWebProtobufSyncAction.MaibaAIFeaturesControlAction.MaibaAIFeatureStatus
+ (PaymentTosAction_PaymentNotice)(0), // 9: WAWebProtobufSyncAction.PaymentTosAction.PaymentNotice
+ (NotificationActivitySettingAction_NotificationActivitySetting)(0), // 10: WAWebProtobufSyncAction.NotificationActivitySettingAction.NotificationActivitySetting
+ (WaffleAccountLinkStateAction_AccountLinkState)(0), // 11: WAWebProtobufSyncAction.WaffleAccountLinkStateAction.AccountLinkState
+ (MerchantPaymentPartnerAction_Status)(0), // 12: WAWebProtobufSyncAction.MerchantPaymentPartnerAction.Status
+ (NoteEditAction_NoteType)(0), // 13: WAWebProtobufSyncAction.NoteEditAction.NoteType
+ (StatusPrivacyAction_StatusDistributionMode)(0), // 14: WAWebProtobufSyncAction.StatusPrivacyAction.StatusDistributionMode
+ (MarketingMessageAction_MarketingMessagePrototypeType)(0), // 15: WAWebProtobufSyncAction.MarketingMessageAction.MarketingMessagePrototypeType
+ (UsernameChatStartModeAction_ChatStartMode)(0), // 16: WAWebProtobufSyncAction.UsernameChatStartModeAction.ChatStartMode
+ (LabelEditAction_ListType)(0), // 17: WAWebProtobufSyncAction.LabelEditAction.ListType
+ (PatchDebugData_Platform)(0), // 18: WAWebProtobufSyncAction.PatchDebugData.Platform
+ (*CallLogRecord)(nil), // 19: WAWebProtobufSyncAction.CallLogRecord
+ (*InteractiveMessageAction)(nil), // 20: WAWebProtobufSyncAction.InteractiveMessageAction
+ (*PrivateProcessingSettingAction)(nil), // 21: WAWebProtobufSyncAction.PrivateProcessingSettingAction
+ (*AvatarUpdatedAction)(nil), // 22: WAWebProtobufSyncAction.AvatarUpdatedAction
+ (*MaibaAIFeaturesControlAction)(nil), // 23: WAWebProtobufSyncAction.MaibaAIFeaturesControlAction
+ (*PaymentTosAction)(nil), // 24: WAWebProtobufSyncAction.PaymentTosAction
+ (*NotificationActivitySettingAction)(nil), // 25: WAWebProtobufSyncAction.NotificationActivitySettingAction
+ (*WaffleAccountLinkStateAction)(nil), // 26: WAWebProtobufSyncAction.WaffleAccountLinkStateAction
+ (*MerchantPaymentPartnerAction)(nil), // 27: WAWebProtobufSyncAction.MerchantPaymentPartnerAction
+ (*NoteEditAction)(nil), // 28: WAWebProtobufSyncAction.NoteEditAction
+ (*StatusPrivacyAction)(nil), // 29: WAWebProtobufSyncAction.StatusPrivacyAction
+ (*MarketingMessageAction)(nil), // 30: WAWebProtobufSyncAction.MarketingMessageAction
+ (*UsernameChatStartModeAction)(nil), // 31: WAWebProtobufSyncAction.UsernameChatStartModeAction
+ (*LabelEditAction)(nil), // 32: WAWebProtobufSyncAction.LabelEditAction
+ (*PatchDebugData)(nil), // 33: WAWebProtobufSyncAction.PatchDebugData
+ (*RecentEmojiWeight)(nil), // 34: WAWebProtobufSyncAction.RecentEmojiWeight
+ (*SyncActionValue)(nil), // 35: WAWebProtobufSyncAction.SyncActionValue
+ (*AiThreadRenameAction)(nil), // 36: WAWebProtobufSyncAction.AiThreadRenameAction
+ (*StatusPostOptInNotificationPreferencesAction)(nil), // 37: WAWebProtobufSyncAction.StatusPostOptInNotificationPreferencesAction
+ (*BroadcastListParticipant)(nil), // 38: WAWebProtobufSyncAction.BroadcastListParticipant
+ (*BusinessBroadcastListAction)(nil), // 39: WAWebProtobufSyncAction.BusinessBroadcastListAction
+ (*BusinessBroadcastAssociationAction)(nil), // 40: WAWebProtobufSyncAction.BusinessBroadcastAssociationAction
+ (*CtwaPerCustomerDataSharingAction)(nil), // 41: WAWebProtobufSyncAction.CtwaPerCustomerDataSharingAction
+ (*LidContactAction)(nil), // 42: WAWebProtobufSyncAction.LidContactAction
+ (*FavoritesAction)(nil), // 43: WAWebProtobufSyncAction.FavoritesAction
+ (*PrivacySettingChannelsPersonalisedRecommendationAction)(nil), // 44: WAWebProtobufSyncAction.PrivacySettingChannelsPersonalisedRecommendationAction
+ (*PrivacySettingDisableLinkPreviewsAction)(nil), // 45: WAWebProtobufSyncAction.PrivacySettingDisableLinkPreviewsAction
+ (*WamoUserIdentifierAction)(nil), // 46: WAWebProtobufSyncAction.WamoUserIdentifierAction
+ (*LockChatAction)(nil), // 47: WAWebProtobufSyncAction.LockChatAction
+ (*CustomPaymentMethodsAction)(nil), // 48: WAWebProtobufSyncAction.CustomPaymentMethodsAction
+ (*CustomPaymentMethod)(nil), // 49: WAWebProtobufSyncAction.CustomPaymentMethod
+ (*CustomPaymentMethodMetadata)(nil), // 50: WAWebProtobufSyncAction.CustomPaymentMethodMetadata
+ (*PaymentInfoAction)(nil), // 51: WAWebProtobufSyncAction.PaymentInfoAction
+ (*LabelReorderingAction)(nil), // 52: WAWebProtobufSyncAction.LabelReorderingAction
+ (*DeleteIndividualCallLogAction)(nil), // 53: WAWebProtobufSyncAction.DeleteIndividualCallLogAction
+ (*BotWelcomeRequestAction)(nil), // 54: WAWebProtobufSyncAction.BotWelcomeRequestAction
+ (*NewsletterSavedInterestsAction)(nil), // 55: WAWebProtobufSyncAction.NewsletterSavedInterestsAction
+ (*MusicUserIdAction)(nil), // 56: WAWebProtobufSyncAction.MusicUserIdAction
+ (*UGCBot)(nil), // 57: WAWebProtobufSyncAction.UGCBot
+ (*CallLogAction)(nil), // 58: WAWebProtobufSyncAction.CallLogAction
+ (*PrivacySettingRelayAllCalls)(nil), // 59: WAWebProtobufSyncAction.PrivacySettingRelayAllCalls
+ (*DetectedOutcomesStatusAction)(nil), // 60: WAWebProtobufSyncAction.DetectedOutcomesStatusAction
+ (*ExternalWebBetaAction)(nil), // 61: WAWebProtobufSyncAction.ExternalWebBetaAction
+ (*MarketingMessageBroadcastAction)(nil), // 62: WAWebProtobufSyncAction.MarketingMessageBroadcastAction
+ (*PnForLidChatAction)(nil), // 63: WAWebProtobufSyncAction.PnForLidChatAction
+ (*ChatAssignmentOpenedStatusAction)(nil), // 64: WAWebProtobufSyncAction.ChatAssignmentOpenedStatusAction
+ (*ChatAssignmentAction)(nil), // 65: WAWebProtobufSyncAction.ChatAssignmentAction
+ (*StickerAction)(nil), // 66: WAWebProtobufSyncAction.StickerAction
+ (*RemoveRecentStickerAction)(nil), // 67: WAWebProtobufSyncAction.RemoveRecentStickerAction
+ (*PrimaryVersionAction)(nil), // 68: WAWebProtobufSyncAction.PrimaryVersionAction
+ (*NuxAction)(nil), // 69: WAWebProtobufSyncAction.NuxAction
+ (*TimeFormatAction)(nil), // 70: WAWebProtobufSyncAction.TimeFormatAction
+ (*UserStatusMuteAction)(nil), // 71: WAWebProtobufSyncAction.UserStatusMuteAction
+ (*SubscriptionAction)(nil), // 72: WAWebProtobufSyncAction.SubscriptionAction
+ (*AgentAction)(nil), // 73: WAWebProtobufSyncAction.AgentAction
+ (*AndroidUnsupportedActions)(nil), // 74: WAWebProtobufSyncAction.AndroidUnsupportedActions
+ (*PrimaryFeature)(nil), // 75: WAWebProtobufSyncAction.PrimaryFeature
+ (*KeyExpiration)(nil), // 76: WAWebProtobufSyncAction.KeyExpiration
+ (*SyncActionMessage)(nil), // 77: WAWebProtobufSyncAction.SyncActionMessage
+ (*SyncActionMessageRange)(nil), // 78: WAWebProtobufSyncAction.SyncActionMessageRange
+ (*UnarchiveChatsSetting)(nil), // 79: WAWebProtobufSyncAction.UnarchiveChatsSetting
+ (*DeleteChatAction)(nil), // 80: WAWebProtobufSyncAction.DeleteChatAction
+ (*ClearChatAction)(nil), // 81: WAWebProtobufSyncAction.ClearChatAction
+ (*MarkChatAsReadAction)(nil), // 82: WAWebProtobufSyncAction.MarkChatAsReadAction
+ (*DeleteMessageForMeAction)(nil), // 83: WAWebProtobufSyncAction.DeleteMessageForMeAction
+ (*ArchiveChatAction)(nil), // 84: WAWebProtobufSyncAction.ArchiveChatAction
+ (*RecentEmojiWeightsAction)(nil), // 85: WAWebProtobufSyncAction.RecentEmojiWeightsAction
+ (*LabelAssociationAction)(nil), // 86: WAWebProtobufSyncAction.LabelAssociationAction
+ (*QuickReplyAction)(nil), // 87: WAWebProtobufSyncAction.QuickReplyAction
+ (*LocaleSetting)(nil), // 88: WAWebProtobufSyncAction.LocaleSetting
+ (*PushNameSetting)(nil), // 89: WAWebProtobufSyncAction.PushNameSetting
+ (*PinAction)(nil), // 90: WAWebProtobufSyncAction.PinAction
+ (*MuteAction)(nil), // 91: WAWebProtobufSyncAction.MuteAction
+ (*ContactAction)(nil), // 92: WAWebProtobufSyncAction.ContactAction
+ (*StarAction)(nil), // 93: WAWebProtobufSyncAction.StarAction
+ (*SyncActionData)(nil), // 94: WAWebProtobufSyncAction.SyncActionData
+ (*CallLogRecord_ParticipantInfo)(nil), // 95: WAWebProtobufSyncAction.CallLogRecord.ParticipantInfo
+ (*FavoritesAction_Favorite)(nil), // 96: WAWebProtobufSyncAction.FavoritesAction.Favorite
+ (*waChatLockSettings.ChatLockSettings)(nil), // 97: WAWebProtobufsChatLockSettings.ChatLockSettings
+ (*waDeviceCapabilities.DeviceCapabilities)(nil), // 98: WAWebProtobufsDeviceCapabilities.DeviceCapabilities
+ (*waCommon.MessageKey)(nil), // 99: WACommon.MessageKey
}
-var file_waSyncAction_WASyncAction_proto_depIdxs = []int32{
- 2, // 0: WASyncAction.CallLogRecord.callResult:type_name -> WASyncAction.CallLogRecord.CallResult
- 1, // 1: WASyncAction.CallLogRecord.silenceReason:type_name -> WASyncAction.CallLogRecord.SilenceReason
- 89, // 2: WASyncAction.CallLogRecord.participants:type_name -> WASyncAction.CallLogRecord.ParticipantInfo
- 0, // 3: WASyncAction.CallLogRecord.callType:type_name -> WASyncAction.CallLogRecord.CallType
- 3, // 4: WASyncAction.AvatarUpdatedAction.eventType:type_name -> WASyncAction.AvatarUpdatedAction.AvatarEventType
- 59, // 5: WASyncAction.AvatarUpdatedAction.recentAvatarStickers:type_name -> WASyncAction.StickerAction
- 4, // 6: WASyncAction.MaibaAIFeaturesControlAction.aiFeatureStatus:type_name -> WASyncAction.MaibaAIFeaturesControlAction.MaibaAIFeatureStatus
- 5, // 7: WASyncAction.PaymentTosAction.paymentNotice:type_name -> WASyncAction.PaymentTosAction.PaymentNotice
- 6, // 8: WASyncAction.NotificationActivitySettingAction.notificationActivitySetting:type_name -> WASyncAction.NotificationActivitySettingAction.NotificationActivitySetting
- 7, // 9: WASyncAction.WaffleAccountLinkStateAction.linkState:type_name -> WASyncAction.WaffleAccountLinkStateAction.AccountLinkState
- 8, // 10: WASyncAction.MerchantPaymentPartnerAction.status:type_name -> WASyncAction.MerchantPaymentPartnerAction.Status
- 9, // 11: WASyncAction.GalaxyFlowAction.type:type_name -> WASyncAction.GalaxyFlowAction.GalaxyFlowActionType
- 10, // 12: WASyncAction.NoteEditAction.type:type_name -> WASyncAction.NoteEditAction.NoteType
- 11, // 13: WASyncAction.StatusPrivacyAction.mode:type_name -> WASyncAction.StatusPrivacyAction.StatusDistributionMode
- 12, // 14: WASyncAction.MarketingMessageAction.type:type_name -> WASyncAction.MarketingMessageAction.MarketingMessagePrototypeType
- 13, // 15: WASyncAction.UsernameChatStartModeAction.chatStartMode:type_name -> WASyncAction.UsernameChatStartModeAction.ChatStartMode
- 14, // 16: WASyncAction.LabelEditAction.type:type_name -> WASyncAction.LabelEditAction.ListType
- 15, // 17: WASyncAction.PatchDebugData.senderPlatform:type_name -> WASyncAction.PatchDebugData.Platform
- 87, // 18: WASyncAction.SyncActionValue.starAction:type_name -> WASyncAction.StarAction
- 86, // 19: WASyncAction.SyncActionValue.contactAction:type_name -> WASyncAction.ContactAction
- 85, // 20: WASyncAction.SyncActionValue.muteAction:type_name -> WASyncAction.MuteAction
- 84, // 21: WASyncAction.SyncActionValue.pinAction:type_name -> WASyncAction.PinAction
- 83, // 22: WASyncAction.SyncActionValue.securityNotificationSetting:type_name -> WASyncAction.SecurityNotificationSetting
- 82, // 23: WASyncAction.SyncActionValue.pushNameSetting:type_name -> WASyncAction.PushNameSetting
- 80, // 24: WASyncAction.SyncActionValue.quickReplyAction:type_name -> WASyncAction.QuickReplyAction
- 78, // 25: WASyncAction.SyncActionValue.recentEmojiWeightsAction:type_name -> WASyncAction.RecentEmojiWeightsAction
- 28, // 26: WASyncAction.SyncActionValue.labelEditAction:type_name -> WASyncAction.LabelEditAction
- 79, // 27: WASyncAction.SyncActionValue.labelAssociationAction:type_name -> WASyncAction.LabelAssociationAction
- 81, // 28: WASyncAction.SyncActionValue.localeSetting:type_name -> WASyncAction.LocaleSetting
- 77, // 29: WASyncAction.SyncActionValue.archiveChatAction:type_name -> WASyncAction.ArchiveChatAction
- 76, // 30: WASyncAction.SyncActionValue.deleteMessageForMeAction:type_name -> WASyncAction.DeleteMessageForMeAction
- 69, // 31: WASyncAction.SyncActionValue.keyExpiration:type_name -> WASyncAction.KeyExpiration
- 75, // 32: WASyncAction.SyncActionValue.markChatAsReadAction:type_name -> WASyncAction.MarkChatAsReadAction
- 74, // 33: WASyncAction.SyncActionValue.clearChatAction:type_name -> WASyncAction.ClearChatAction
- 73, // 34: WASyncAction.SyncActionValue.deleteChatAction:type_name -> WASyncAction.DeleteChatAction
- 72, // 35: WASyncAction.SyncActionValue.unarchiveChatsSetting:type_name -> WASyncAction.UnarchiveChatsSetting
- 68, // 36: WASyncAction.SyncActionValue.primaryFeature:type_name -> WASyncAction.PrimaryFeature
- 67, // 37: WASyncAction.SyncActionValue.androidUnsupportedActions:type_name -> WASyncAction.AndroidUnsupportedActions
- 66, // 38: WASyncAction.SyncActionValue.agentAction:type_name -> WASyncAction.AgentAction
- 65, // 39: WASyncAction.SyncActionValue.subscriptionAction:type_name -> WASyncAction.SubscriptionAction
- 64, // 40: WASyncAction.SyncActionValue.userStatusMuteAction:type_name -> WASyncAction.UserStatusMuteAction
- 63, // 41: WASyncAction.SyncActionValue.timeFormatAction:type_name -> WASyncAction.TimeFormatAction
- 62, // 42: WASyncAction.SyncActionValue.nuxAction:type_name -> WASyncAction.NuxAction
- 61, // 43: WASyncAction.SyncActionValue.primaryVersionAction:type_name -> WASyncAction.PrimaryVersionAction
- 59, // 44: WASyncAction.SyncActionValue.stickerAction:type_name -> WASyncAction.StickerAction
- 60, // 45: WASyncAction.SyncActionValue.removeRecentStickerAction:type_name -> WASyncAction.RemoveRecentStickerAction
- 58, // 46: WASyncAction.SyncActionValue.chatAssignment:type_name -> WASyncAction.ChatAssignmentAction
- 57, // 47: WASyncAction.SyncActionValue.chatAssignmentOpenedStatus:type_name -> WASyncAction.ChatAssignmentOpenedStatusAction
- 56, // 48: WASyncAction.SyncActionValue.pnForLidChatAction:type_name -> WASyncAction.PnForLidChatAction
- 26, // 49: WASyncAction.SyncActionValue.marketingMessageAction:type_name -> WASyncAction.MarketingMessageAction
- 55, // 50: WASyncAction.SyncActionValue.marketingMessageBroadcastAction:type_name -> WASyncAction.MarketingMessageBroadcastAction
- 54, // 51: WASyncAction.SyncActionValue.externalWebBetaAction:type_name -> WASyncAction.ExternalWebBetaAction
- 52, // 52: WASyncAction.SyncActionValue.privacySettingRelayAllCalls:type_name -> WASyncAction.PrivacySettingRelayAllCalls
- 51, // 53: WASyncAction.SyncActionValue.callLogAction:type_name -> WASyncAction.CallLogAction
- 25, // 54: WASyncAction.SyncActionValue.statusPrivacy:type_name -> WASyncAction.StatusPrivacyAction
- 49, // 55: WASyncAction.SyncActionValue.botWelcomeRequestAction:type_name -> WASyncAction.BotWelcomeRequestAction
- 48, // 56: WASyncAction.SyncActionValue.deleteIndividualCallLog:type_name -> WASyncAction.DeleteIndividualCallLogAction
- 47, // 57: WASyncAction.SyncActionValue.labelReorderingAction:type_name -> WASyncAction.LabelReorderingAction
- 46, // 58: WASyncAction.SyncActionValue.paymentInfoAction:type_name -> WASyncAction.PaymentInfoAction
- 43, // 59: WASyncAction.SyncActionValue.customPaymentMethodsAction:type_name -> WASyncAction.CustomPaymentMethodsAction
- 42, // 60: WASyncAction.SyncActionValue.lockChatAction:type_name -> WASyncAction.LockChatAction
- 91, // 61: WASyncAction.SyncActionValue.chatLockSettings:type_name -> WAProtobufsChatLockSettings.ChatLockSettings
- 41, // 62: WASyncAction.SyncActionValue.wamoUserIdentifierAction:type_name -> WASyncAction.WamoUserIdentifierAction
- 40, // 63: WASyncAction.SyncActionValue.privacySettingDisableLinkPreviewsAction:type_name -> WASyncAction.PrivacySettingDisableLinkPreviewsAction
- 92, // 64: WASyncAction.SyncActionValue.deviceCapabilities:type_name -> WAProtobufsDeviceCapabilities.DeviceCapabilities
- 24, // 65: WASyncAction.SyncActionValue.noteEditAction:type_name -> WASyncAction.NoteEditAction
- 38, // 66: WASyncAction.SyncActionValue.favoritesAction:type_name -> WASyncAction.FavoritesAction
- 22, // 67: WASyncAction.SyncActionValue.merchantPaymentPartnerAction:type_name -> WASyncAction.MerchantPaymentPartnerAction
- 21, // 68: WASyncAction.SyncActionValue.waffleAccountLinkStateAction:type_name -> WASyncAction.WaffleAccountLinkStateAction
- 27, // 69: WASyncAction.SyncActionValue.usernameChatStartMode:type_name -> WASyncAction.UsernameChatStartModeAction
- 20, // 70: WASyncAction.SyncActionValue.notificationActivitySettingAction:type_name -> WASyncAction.NotificationActivitySettingAction
- 37, // 71: WASyncAction.SyncActionValue.lidContactAction:type_name -> WASyncAction.LidContactAction
- 36, // 72: WASyncAction.SyncActionValue.ctwaPerCustomerDataSharingAction:type_name -> WASyncAction.CtwaPerCustomerDataSharingAction
- 19, // 73: WASyncAction.SyncActionValue.paymentTosAction:type_name -> WASyncAction.PaymentTosAction
- 39, // 74: WASyncAction.SyncActionValue.privacySettingChannelsPersonalisedRecommendationAction:type_name -> WASyncAction.PrivacySettingChannelsPersonalisedRecommendationAction
- 35, // 75: WASyncAction.SyncActionValue.businessBroadcastAssociationAction:type_name -> WASyncAction.BusinessBroadcastAssociationAction
- 53, // 76: WASyncAction.SyncActionValue.detectedOutcomesStatusAction:type_name -> WASyncAction.DetectedOutcomesStatusAction
- 18, // 77: WASyncAction.SyncActionValue.maibaAiFeaturesControlAction:type_name -> WASyncAction.MaibaAIFeaturesControlAction
- 34, // 78: WASyncAction.SyncActionValue.businessBroadcastListAction:type_name -> WASyncAction.BusinessBroadcastListAction
- 50, // 79: WASyncAction.SyncActionValue.musicUserIDAction:type_name -> WASyncAction.MusicUserIdAction
- 32, // 80: WASyncAction.SyncActionValue.statusPostOptInNotificationPreferencesAction:type_name -> WASyncAction.StatusPostOptInNotificationPreferencesAction
- 17, // 81: WASyncAction.SyncActionValue.avatarUpdatedAction:type_name -> WASyncAction.AvatarUpdatedAction
- 23, // 82: WASyncAction.SyncActionValue.galaxyFlowAction:type_name -> WASyncAction.GalaxyFlowAction
- 33, // 83: WASyncAction.BusinessBroadcastListAction.participants:type_name -> WASyncAction.BroadcastListParticipant
- 90, // 84: WASyncAction.FavoritesAction.favorites:type_name -> WASyncAction.FavoritesAction.Favorite
- 44, // 85: WASyncAction.CustomPaymentMethodsAction.customPaymentMethods:type_name -> WASyncAction.CustomPaymentMethod
- 45, // 86: WASyncAction.CustomPaymentMethod.metadata:type_name -> WASyncAction.CustomPaymentMethodMetadata
- 16, // 87: WASyncAction.CallLogAction.callLogRecord:type_name -> WASyncAction.CallLogRecord
- 93, // 88: WASyncAction.SyncActionMessage.key:type_name -> WACommon.MessageKey
- 70, // 89: WASyncAction.SyncActionMessageRange.messages:type_name -> WASyncAction.SyncActionMessage
- 71, // 90: WASyncAction.DeleteChatAction.messageRange:type_name -> WASyncAction.SyncActionMessageRange
- 71, // 91: WASyncAction.ClearChatAction.messageRange:type_name -> WASyncAction.SyncActionMessageRange
- 71, // 92: WASyncAction.MarkChatAsReadAction.messageRange:type_name -> WASyncAction.SyncActionMessageRange
- 71, // 93: WASyncAction.ArchiveChatAction.messageRange:type_name -> WASyncAction.SyncActionMessageRange
- 30, // 94: WASyncAction.RecentEmojiWeightsAction.weights:type_name -> WASyncAction.RecentEmojiWeight
- 31, // 95: WASyncAction.SyncActionData.value:type_name -> WASyncAction.SyncActionValue
- 2, // 96: WASyncAction.CallLogRecord.ParticipantInfo.callResult:type_name -> WASyncAction.CallLogRecord.CallResult
- 97, // [97:97] is the sub-list for method output_type
- 97, // [97:97] is the sub-list for method input_type
- 97, // [97:97] is the sub-list for extension type_name
- 97, // [97:97] is the sub-list for extension extendee
- 0, // [0:97] is the sub-list for field type_name
+var file_waSyncAction_WAWebProtobufSyncAction_proto_depIdxs = []int32{
+ 4, // 0: WAWebProtobufSyncAction.CallLogRecord.callResult:type_name -> WAWebProtobufSyncAction.CallLogRecord.CallResult
+ 3, // 1: WAWebProtobufSyncAction.CallLogRecord.silenceReason:type_name -> WAWebProtobufSyncAction.CallLogRecord.SilenceReason
+ 95, // 2: WAWebProtobufSyncAction.CallLogRecord.participants:type_name -> WAWebProtobufSyncAction.CallLogRecord.ParticipantInfo
+ 2, // 3: WAWebProtobufSyncAction.CallLogRecord.callType:type_name -> WAWebProtobufSyncAction.CallLogRecord.CallType
+ 5, // 4: WAWebProtobufSyncAction.InteractiveMessageAction.type:type_name -> WAWebProtobufSyncAction.InteractiveMessageAction.InteractiveMessageActionMode
+ 6, // 5: WAWebProtobufSyncAction.PrivateProcessingSettingAction.privateProcessingStatus:type_name -> WAWebProtobufSyncAction.PrivateProcessingSettingAction.PrivateProcessingStatus
+ 7, // 6: WAWebProtobufSyncAction.AvatarUpdatedAction.eventType:type_name -> WAWebProtobufSyncAction.AvatarUpdatedAction.AvatarEventType
+ 66, // 7: WAWebProtobufSyncAction.AvatarUpdatedAction.recentAvatarStickers:type_name -> WAWebProtobufSyncAction.StickerAction
+ 8, // 8: WAWebProtobufSyncAction.MaibaAIFeaturesControlAction.aiFeatureStatus:type_name -> WAWebProtobufSyncAction.MaibaAIFeaturesControlAction.MaibaAIFeatureStatus
+ 9, // 9: WAWebProtobufSyncAction.PaymentTosAction.paymentNotice:type_name -> WAWebProtobufSyncAction.PaymentTosAction.PaymentNotice
+ 10, // 10: WAWebProtobufSyncAction.NotificationActivitySettingAction.notificationActivitySetting:type_name -> WAWebProtobufSyncAction.NotificationActivitySettingAction.NotificationActivitySetting
+ 11, // 11: WAWebProtobufSyncAction.WaffleAccountLinkStateAction.linkState:type_name -> WAWebProtobufSyncAction.WaffleAccountLinkStateAction.AccountLinkState
+ 12, // 12: WAWebProtobufSyncAction.MerchantPaymentPartnerAction.status:type_name -> WAWebProtobufSyncAction.MerchantPaymentPartnerAction.Status
+ 13, // 13: WAWebProtobufSyncAction.NoteEditAction.type:type_name -> WAWebProtobufSyncAction.NoteEditAction.NoteType
+ 14, // 14: WAWebProtobufSyncAction.StatusPrivacyAction.mode:type_name -> WAWebProtobufSyncAction.StatusPrivacyAction.StatusDistributionMode
+ 15, // 15: WAWebProtobufSyncAction.MarketingMessageAction.type:type_name -> WAWebProtobufSyncAction.MarketingMessageAction.MarketingMessagePrototypeType
+ 16, // 16: WAWebProtobufSyncAction.UsernameChatStartModeAction.chatStartMode:type_name -> WAWebProtobufSyncAction.UsernameChatStartModeAction.ChatStartMode
+ 17, // 17: WAWebProtobufSyncAction.LabelEditAction.type:type_name -> WAWebProtobufSyncAction.LabelEditAction.ListType
+ 18, // 18: WAWebProtobufSyncAction.PatchDebugData.senderPlatform:type_name -> WAWebProtobufSyncAction.PatchDebugData.Platform
+ 93, // 19: WAWebProtobufSyncAction.SyncActionValue.starAction:type_name -> WAWebProtobufSyncAction.StarAction
+ 92, // 20: WAWebProtobufSyncAction.SyncActionValue.contactAction:type_name -> WAWebProtobufSyncAction.ContactAction
+ 91, // 21: WAWebProtobufSyncAction.SyncActionValue.muteAction:type_name -> WAWebProtobufSyncAction.MuteAction
+ 90, // 22: WAWebProtobufSyncAction.SyncActionValue.pinAction:type_name -> WAWebProtobufSyncAction.PinAction
+ 89, // 23: WAWebProtobufSyncAction.SyncActionValue.pushNameSetting:type_name -> WAWebProtobufSyncAction.PushNameSetting
+ 87, // 24: WAWebProtobufSyncAction.SyncActionValue.quickReplyAction:type_name -> WAWebProtobufSyncAction.QuickReplyAction
+ 85, // 25: WAWebProtobufSyncAction.SyncActionValue.recentEmojiWeightsAction:type_name -> WAWebProtobufSyncAction.RecentEmojiWeightsAction
+ 32, // 26: WAWebProtobufSyncAction.SyncActionValue.labelEditAction:type_name -> WAWebProtobufSyncAction.LabelEditAction
+ 86, // 27: WAWebProtobufSyncAction.SyncActionValue.labelAssociationAction:type_name -> WAWebProtobufSyncAction.LabelAssociationAction
+ 88, // 28: WAWebProtobufSyncAction.SyncActionValue.localeSetting:type_name -> WAWebProtobufSyncAction.LocaleSetting
+ 84, // 29: WAWebProtobufSyncAction.SyncActionValue.archiveChatAction:type_name -> WAWebProtobufSyncAction.ArchiveChatAction
+ 83, // 30: WAWebProtobufSyncAction.SyncActionValue.deleteMessageForMeAction:type_name -> WAWebProtobufSyncAction.DeleteMessageForMeAction
+ 76, // 31: WAWebProtobufSyncAction.SyncActionValue.keyExpiration:type_name -> WAWebProtobufSyncAction.KeyExpiration
+ 82, // 32: WAWebProtobufSyncAction.SyncActionValue.markChatAsReadAction:type_name -> WAWebProtobufSyncAction.MarkChatAsReadAction
+ 81, // 33: WAWebProtobufSyncAction.SyncActionValue.clearChatAction:type_name -> WAWebProtobufSyncAction.ClearChatAction
+ 80, // 34: WAWebProtobufSyncAction.SyncActionValue.deleteChatAction:type_name -> WAWebProtobufSyncAction.DeleteChatAction
+ 79, // 35: WAWebProtobufSyncAction.SyncActionValue.unarchiveChatsSetting:type_name -> WAWebProtobufSyncAction.UnarchiveChatsSetting
+ 75, // 36: WAWebProtobufSyncAction.SyncActionValue.primaryFeature:type_name -> WAWebProtobufSyncAction.PrimaryFeature
+ 74, // 37: WAWebProtobufSyncAction.SyncActionValue.androidUnsupportedActions:type_name -> WAWebProtobufSyncAction.AndroidUnsupportedActions
+ 73, // 38: WAWebProtobufSyncAction.SyncActionValue.agentAction:type_name -> WAWebProtobufSyncAction.AgentAction
+ 72, // 39: WAWebProtobufSyncAction.SyncActionValue.subscriptionAction:type_name -> WAWebProtobufSyncAction.SubscriptionAction
+ 71, // 40: WAWebProtobufSyncAction.SyncActionValue.userStatusMuteAction:type_name -> WAWebProtobufSyncAction.UserStatusMuteAction
+ 70, // 41: WAWebProtobufSyncAction.SyncActionValue.timeFormatAction:type_name -> WAWebProtobufSyncAction.TimeFormatAction
+ 69, // 42: WAWebProtobufSyncAction.SyncActionValue.nuxAction:type_name -> WAWebProtobufSyncAction.NuxAction
+ 68, // 43: WAWebProtobufSyncAction.SyncActionValue.primaryVersionAction:type_name -> WAWebProtobufSyncAction.PrimaryVersionAction
+ 66, // 44: WAWebProtobufSyncAction.SyncActionValue.stickerAction:type_name -> WAWebProtobufSyncAction.StickerAction
+ 67, // 45: WAWebProtobufSyncAction.SyncActionValue.removeRecentStickerAction:type_name -> WAWebProtobufSyncAction.RemoveRecentStickerAction
+ 65, // 46: WAWebProtobufSyncAction.SyncActionValue.chatAssignment:type_name -> WAWebProtobufSyncAction.ChatAssignmentAction
+ 64, // 47: WAWebProtobufSyncAction.SyncActionValue.chatAssignmentOpenedStatus:type_name -> WAWebProtobufSyncAction.ChatAssignmentOpenedStatusAction
+ 63, // 48: WAWebProtobufSyncAction.SyncActionValue.pnForLidChatAction:type_name -> WAWebProtobufSyncAction.PnForLidChatAction
+ 30, // 49: WAWebProtobufSyncAction.SyncActionValue.marketingMessageAction:type_name -> WAWebProtobufSyncAction.MarketingMessageAction
+ 62, // 50: WAWebProtobufSyncAction.SyncActionValue.marketingMessageBroadcastAction:type_name -> WAWebProtobufSyncAction.MarketingMessageBroadcastAction
+ 61, // 51: WAWebProtobufSyncAction.SyncActionValue.externalWebBetaAction:type_name -> WAWebProtobufSyncAction.ExternalWebBetaAction
+ 59, // 52: WAWebProtobufSyncAction.SyncActionValue.privacySettingRelayAllCalls:type_name -> WAWebProtobufSyncAction.PrivacySettingRelayAllCalls
+ 58, // 53: WAWebProtobufSyncAction.SyncActionValue.callLogAction:type_name -> WAWebProtobufSyncAction.CallLogAction
+ 57, // 54: WAWebProtobufSyncAction.SyncActionValue.ugcBot:type_name -> WAWebProtobufSyncAction.UGCBot
+ 29, // 55: WAWebProtobufSyncAction.SyncActionValue.statusPrivacy:type_name -> WAWebProtobufSyncAction.StatusPrivacyAction
+ 54, // 56: WAWebProtobufSyncAction.SyncActionValue.botWelcomeRequestAction:type_name -> WAWebProtobufSyncAction.BotWelcomeRequestAction
+ 53, // 57: WAWebProtobufSyncAction.SyncActionValue.deleteIndividualCallLog:type_name -> WAWebProtobufSyncAction.DeleteIndividualCallLogAction
+ 52, // 58: WAWebProtobufSyncAction.SyncActionValue.labelReorderingAction:type_name -> WAWebProtobufSyncAction.LabelReorderingAction
+ 51, // 59: WAWebProtobufSyncAction.SyncActionValue.paymentInfoAction:type_name -> WAWebProtobufSyncAction.PaymentInfoAction
+ 48, // 60: WAWebProtobufSyncAction.SyncActionValue.customPaymentMethodsAction:type_name -> WAWebProtobufSyncAction.CustomPaymentMethodsAction
+ 47, // 61: WAWebProtobufSyncAction.SyncActionValue.lockChatAction:type_name -> WAWebProtobufSyncAction.LockChatAction
+ 97, // 62: WAWebProtobufSyncAction.SyncActionValue.chatLockSettings:type_name -> WAWebProtobufsChatLockSettings.ChatLockSettings
+ 46, // 63: WAWebProtobufSyncAction.SyncActionValue.wamoUserIdentifierAction:type_name -> WAWebProtobufSyncAction.WamoUserIdentifierAction
+ 45, // 64: WAWebProtobufSyncAction.SyncActionValue.privacySettingDisableLinkPreviewsAction:type_name -> WAWebProtobufSyncAction.PrivacySettingDisableLinkPreviewsAction
+ 98, // 65: WAWebProtobufSyncAction.SyncActionValue.deviceCapabilities:type_name -> WAWebProtobufsDeviceCapabilities.DeviceCapabilities
+ 28, // 66: WAWebProtobufSyncAction.SyncActionValue.noteEditAction:type_name -> WAWebProtobufSyncAction.NoteEditAction
+ 43, // 67: WAWebProtobufSyncAction.SyncActionValue.favoritesAction:type_name -> WAWebProtobufSyncAction.FavoritesAction
+ 27, // 68: WAWebProtobufSyncAction.SyncActionValue.merchantPaymentPartnerAction:type_name -> WAWebProtobufSyncAction.MerchantPaymentPartnerAction
+ 26, // 69: WAWebProtobufSyncAction.SyncActionValue.waffleAccountLinkStateAction:type_name -> WAWebProtobufSyncAction.WaffleAccountLinkStateAction
+ 31, // 70: WAWebProtobufSyncAction.SyncActionValue.usernameChatStartMode:type_name -> WAWebProtobufSyncAction.UsernameChatStartModeAction
+ 25, // 71: WAWebProtobufSyncAction.SyncActionValue.notificationActivitySettingAction:type_name -> WAWebProtobufSyncAction.NotificationActivitySettingAction
+ 42, // 72: WAWebProtobufSyncAction.SyncActionValue.lidContactAction:type_name -> WAWebProtobufSyncAction.LidContactAction
+ 41, // 73: WAWebProtobufSyncAction.SyncActionValue.ctwaPerCustomerDataSharingAction:type_name -> WAWebProtobufSyncAction.CtwaPerCustomerDataSharingAction
+ 24, // 74: WAWebProtobufSyncAction.SyncActionValue.paymentTosAction:type_name -> WAWebProtobufSyncAction.PaymentTosAction
+ 44, // 75: WAWebProtobufSyncAction.SyncActionValue.privacySettingChannelsPersonalisedRecommendationAction:type_name -> WAWebProtobufSyncAction.PrivacySettingChannelsPersonalisedRecommendationAction
+ 40, // 76: WAWebProtobufSyncAction.SyncActionValue.businessBroadcastAssociationAction:type_name -> WAWebProtobufSyncAction.BusinessBroadcastAssociationAction
+ 60, // 77: WAWebProtobufSyncAction.SyncActionValue.detectedOutcomesStatusAction:type_name -> WAWebProtobufSyncAction.DetectedOutcomesStatusAction
+ 23, // 78: WAWebProtobufSyncAction.SyncActionValue.maibaAiFeaturesControlAction:type_name -> WAWebProtobufSyncAction.MaibaAIFeaturesControlAction
+ 39, // 79: WAWebProtobufSyncAction.SyncActionValue.businessBroadcastListAction:type_name -> WAWebProtobufSyncAction.BusinessBroadcastListAction
+ 56, // 80: WAWebProtobufSyncAction.SyncActionValue.musicUserIDAction:type_name -> WAWebProtobufSyncAction.MusicUserIdAction
+ 37, // 81: WAWebProtobufSyncAction.SyncActionValue.statusPostOptInNotificationPreferencesAction:type_name -> WAWebProtobufSyncAction.StatusPostOptInNotificationPreferencesAction
+ 22, // 82: WAWebProtobufSyncAction.SyncActionValue.avatarUpdatedAction:type_name -> WAWebProtobufSyncAction.AvatarUpdatedAction
+ 21, // 83: WAWebProtobufSyncAction.SyncActionValue.privateProcessingSettingAction:type_name -> WAWebProtobufSyncAction.PrivateProcessingSettingAction
+ 55, // 84: WAWebProtobufSyncAction.SyncActionValue.newsletterSavedInterestsAction:type_name -> WAWebProtobufSyncAction.NewsletterSavedInterestsAction
+ 36, // 85: WAWebProtobufSyncAction.SyncActionValue.aiThreadRenameAction:type_name -> WAWebProtobufSyncAction.AiThreadRenameAction
+ 20, // 86: WAWebProtobufSyncAction.SyncActionValue.interactiveMessageAction:type_name -> WAWebProtobufSyncAction.InteractiveMessageAction
+ 38, // 87: WAWebProtobufSyncAction.BusinessBroadcastListAction.participants:type_name -> WAWebProtobufSyncAction.BroadcastListParticipant
+ 96, // 88: WAWebProtobufSyncAction.FavoritesAction.favorites:type_name -> WAWebProtobufSyncAction.FavoritesAction.Favorite
+ 49, // 89: WAWebProtobufSyncAction.CustomPaymentMethodsAction.customPaymentMethods:type_name -> WAWebProtobufSyncAction.CustomPaymentMethod
+ 50, // 90: WAWebProtobufSyncAction.CustomPaymentMethod.metadata:type_name -> WAWebProtobufSyncAction.CustomPaymentMethodMetadata
+ 19, // 91: WAWebProtobufSyncAction.CallLogAction.callLogRecord:type_name -> WAWebProtobufSyncAction.CallLogRecord
+ 99, // 92: WAWebProtobufSyncAction.SyncActionMessage.key:type_name -> WACommon.MessageKey
+ 77, // 93: WAWebProtobufSyncAction.SyncActionMessageRange.messages:type_name -> WAWebProtobufSyncAction.SyncActionMessage
+ 78, // 94: WAWebProtobufSyncAction.DeleteChatAction.messageRange:type_name -> WAWebProtobufSyncAction.SyncActionMessageRange
+ 78, // 95: WAWebProtobufSyncAction.ClearChatAction.messageRange:type_name -> WAWebProtobufSyncAction.SyncActionMessageRange
+ 78, // 96: WAWebProtobufSyncAction.MarkChatAsReadAction.messageRange:type_name -> WAWebProtobufSyncAction.SyncActionMessageRange
+ 78, // 97: WAWebProtobufSyncAction.ArchiveChatAction.messageRange:type_name -> WAWebProtobufSyncAction.SyncActionMessageRange
+ 34, // 98: WAWebProtobufSyncAction.RecentEmojiWeightsAction.weights:type_name -> WAWebProtobufSyncAction.RecentEmojiWeight
+ 35, // 99: WAWebProtobufSyncAction.SyncActionData.value:type_name -> WAWebProtobufSyncAction.SyncActionValue
+ 4, // 100: WAWebProtobufSyncAction.CallLogRecord.ParticipantInfo.callResult:type_name -> WAWebProtobufSyncAction.CallLogRecord.CallResult
+ 101, // [101:101] is the sub-list for method output_type
+ 101, // [101:101] is the sub-list for method input_type
+ 101, // [101:101] is the sub-list for extension type_name
+ 101, // [101:101] is the sub-list for extension extendee
+ 0, // [0:101] is the sub-list for field type_name
}
-func init() { file_waSyncAction_WASyncAction_proto_init() }
-func file_waSyncAction_WASyncAction_proto_init() {
- if File_waSyncAction_WASyncAction_proto != nil {
+func init() { file_waSyncAction_WAWebProtobufSyncAction_proto_init() }
+func file_waSyncAction_WAWebProtobufSyncAction_proto_init() {
+ if File_waSyncAction_WAWebProtobufSyncAction_proto != nil {
return
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: unsafe.Slice(unsafe.StringData(file_waSyncAction_WASyncAction_proto_rawDesc), len(file_waSyncAction_WASyncAction_proto_rawDesc)),
- NumEnums: 16,
- NumMessages: 75,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_waSyncAction_WAWebProtobufSyncAction_proto_rawDesc), len(file_waSyncAction_WAWebProtobufSyncAction_proto_rawDesc)),
+ NumEnums: 19,
+ NumMessages: 78,
NumExtensions: 0,
NumServices: 0,
},
- GoTypes: file_waSyncAction_WASyncAction_proto_goTypes,
- DependencyIndexes: file_waSyncAction_WASyncAction_proto_depIdxs,
- EnumInfos: file_waSyncAction_WASyncAction_proto_enumTypes,
- MessageInfos: file_waSyncAction_WASyncAction_proto_msgTypes,
+ GoTypes: file_waSyncAction_WAWebProtobufSyncAction_proto_goTypes,
+ DependencyIndexes: file_waSyncAction_WAWebProtobufSyncAction_proto_depIdxs,
+ EnumInfos: file_waSyncAction_WAWebProtobufSyncAction_proto_enumTypes,
+ MessageInfos: file_waSyncAction_WAWebProtobufSyncAction_proto_msgTypes,
}.Build()
- File_waSyncAction_WASyncAction_proto = out.File
- file_waSyncAction_WASyncAction_proto_goTypes = nil
- file_waSyncAction_WASyncAction_proto_depIdxs = nil
+ File_waSyncAction_WAWebProtobufSyncAction_proto = out.File
+ file_waSyncAction_WAWebProtobufSyncAction_proto_goTypes = nil
+ file_waSyncAction_WAWebProtobufSyncAction_proto_depIdxs = nil
}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.proto b/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WAWebProtobufSyncAction.proto
similarity index 64%
rename from vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.proto
rename to vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WAWebProtobufSyncAction.proto
index bcac54fc..c482c247 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WAWebProtobufSyncAction.proto
@@ -1,11 +1,96 @@
syntax = "proto2";
-package WASyncAction;
+package WAWebProtobufSyncAction;
option go_package = "go.mau.fi/whatsmeow/proto/waSyncAction";
-import "waChatLockSettings/WAProtobufsChatLockSettings.proto";
-import "waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto";
+import "waChatLockSettings/WAWebProtobufsChatLockSettings.proto";
+import "waDeviceCapabilities/WAWebProtobufsDeviceCapabilities.proto";
import "waCommon/WACommon.proto";
+enum CollectionName {
+ COLLECTION_NAME_UNKNOWN = 0;
+ REGULAR = 1;
+ REGULAR_LOW = 2;
+ REGULAR_HIGH = 3;
+ CRITICAL_BLOCK = 4;
+ CRITICAL_UNBLOCK_LOW = 5;
+}
+
+enum MutationProps {
+ STAR_ACTION = 2;
+ CONTACT_ACTION = 3;
+ MUTE_ACTION = 4;
+ PIN_ACTION = 5;
+ SECURITY_NOTIFICATION_SETTING = 6;
+ PUSH_NAME_SETTING = 7;
+ QUICK_REPLY_ACTION = 8;
+ RECENT_EMOJI_WEIGHTS_ACTION = 11;
+ LABEL_MESSAGE_ACTION = 13;
+ LABEL_EDIT_ACTION = 14;
+ LABEL_ASSOCIATION_ACTION = 15;
+ LOCALE_SETTING = 16;
+ ARCHIVE_CHAT_ACTION = 17;
+ DELETE_MESSAGE_FOR_ME_ACTION = 18;
+ KEY_EXPIRATION = 19;
+ MARK_CHAT_AS_READ_ACTION = 20;
+ CLEAR_CHAT_ACTION = 21;
+ DELETE_CHAT_ACTION = 22;
+ UNARCHIVE_CHATS_SETTING = 23;
+ PRIMARY_FEATURE = 24;
+ ANDROID_UNSUPPORTED_ACTIONS = 26;
+ AGENT_ACTION = 27;
+ SUBSCRIPTION_ACTION = 28;
+ USER_STATUS_MUTE_ACTION = 29;
+ TIME_FORMAT_ACTION = 30;
+ NUX_ACTION = 31;
+ PRIMARY_VERSION_ACTION = 32;
+ STICKER_ACTION = 33;
+ REMOVE_RECENT_STICKER_ACTION = 34;
+ CHAT_ASSIGNMENT = 35;
+ CHAT_ASSIGNMENT_OPENED_STATUS = 36;
+ PN_FOR_LID_CHAT_ACTION = 37;
+ MARKETING_MESSAGE_ACTION = 38;
+ MARKETING_MESSAGE_BROADCAST_ACTION = 39;
+ EXTERNAL_WEB_BETA_ACTION = 40;
+ PRIVACY_SETTING_RELAY_ALL_CALLS = 41;
+ CALL_LOG_ACTION = 42;
+ UGC_BOT = 43;
+ STATUS_PRIVACY = 44;
+ BOT_WELCOME_REQUEST_ACTION = 45;
+ DELETE_INDIVIDUAL_CALL_LOG = 46;
+ LABEL_REORDERING_ACTION = 47;
+ PAYMENT_INFO_ACTION = 48;
+ CUSTOM_PAYMENT_METHODS_ACTION = 49;
+ LOCK_CHAT_ACTION = 50;
+ CHAT_LOCK_SETTINGS = 51;
+ WAMO_USER_IDENTIFIER_ACTION = 52;
+ PRIVACY_SETTING_DISABLE_LINK_PREVIEWS_ACTION = 53;
+ DEVICE_CAPABILITIES = 54;
+ NOTE_EDIT_ACTION = 55;
+ FAVORITES_ACTION = 56;
+ MERCHANT_PAYMENT_PARTNER_ACTION = 57;
+ WAFFLE_ACCOUNT_LINK_STATE_ACTION = 58;
+ USERNAME_CHAT_START_MODE = 59;
+ NOTIFICATION_ACTIVITY_SETTING_ACTION = 60;
+ LID_CONTACT_ACTION = 61;
+ CTWA_PER_CUSTOMER_DATA_SHARING_ACTION = 62;
+ PAYMENT_TOS_ACTION = 63;
+ PRIVACY_SETTING_CHANNELS_PERSONALISED_RECOMMENDATION_ACTION = 64;
+ BUSINESS_BROADCAST_ASSOCIATION_ACTION = 65;
+ DETECTED_OUTCOMES_STATUS_ACTION = 66;
+ MAIBA_AI_FEATURES_CONTROL_ACTION = 68;
+ BUSINESS_BROADCAST_LIST_ACTION = 69;
+ MUSIC_USER_ID_ACTION = 70;
+ STATUS_POST_OPT_IN_NOTIFICATION_PREFERENCES_ACTION = 71;
+ AVATAR_UPDATED_ACTION = 72;
+ GALAXY_FLOW_ACTION = 73;
+ PRIVATE_PROCESSING_SETTING_ACTION = 74;
+ NEWSLETTER_SAVED_INTERESTS_ACTION = 75;
+ AI_THREAD_RENAME_ACTION = 76;
+ INTERACTIVE_MESSAGE_ACTION = 77;
+ SHARE_OWN_PN = 10001;
+ BUSINESS_BROADCAST_ACTION = 10002;
+}
+
message CallLogRecord {
enum CallType {
REGULAR = 0;
@@ -56,6 +141,24 @@ message CallLogRecord {
optional CallType callType = 15;
}
+message InteractiveMessageAction {
+ enum InteractiveMessageActionMode {
+ DISABLE_CTA = 1;
+ }
+
+ required InteractiveMessageActionMode type = 1;
+}
+
+message PrivateProcessingSettingAction {
+ enum PrivateProcessingStatus {
+ UNDEFINED = 0;
+ ENABLED = 1;
+ DISABLED = 2;
+ }
+
+ optional PrivateProcessingStatus privateProcessingStatus = 1;
+}
+
message AvatarUpdatedAction {
enum AvatarEventType {
UPDATED = 0;
@@ -100,6 +203,8 @@ message NotificationActivitySettingAction {
message WaffleAccountLinkStateAction {
enum AccountLinkState {
ACTIVE = 0;
+ PAUSED = 1;
+ UNLINKED = 2;
}
optional AccountLinkState linkState = 2;
@@ -117,14 +222,6 @@ message MerchantPaymentPartnerAction {
optional string credentialID = 4;
}
-message GalaxyFlowAction {
- enum GalaxyFlowActionType {
- LAUNCH = 1;
- }
-
- required GalaxyFlowActionType type = 1;
-}
-
message NoteEditAction {
enum NoteType {
UNSTRUCTURED = 1;
@@ -143,6 +240,7 @@ message StatusPrivacyAction {
ALLOW_LIST = 0;
DENY_LIST = 1;
CONTACTS = 2;
+ CLOSE_FRIENDS = 3;
}
optional StatusDistributionMode mode = 1;
@@ -182,6 +280,8 @@ message LabelEditAction {
CUSTOM = 5;
COMMUNITY = 6;
SERVER_ASSIGNED = 7;
+ DRAFTED = 8;
+ AI_HANDOFF = 9;
}
optional string name = 1;
@@ -192,6 +292,7 @@ message LabelEditAction {
optional bool isActive = 6;
optional ListType type = 7;
optional bool isImmutable = 8;
+ optional int64 muteEndTimeMS = 9;
}
message PatchDebugData {
@@ -223,6 +324,99 @@ message PatchDebugData {
optional bool isSenderPrimary = 11;
}
+/*
+enum MutationName {
+ STAR_ACTION = star;
+ CONTACT_ACTION = contact;
+ MUTE_ACTION = mute;
+ PIN_ACTION = pin_v1;
+ SECURITY_NOTIFICATION_SETTING = setting_securityNotification;
+ PUSH_NAME_SETTING = setting_pushName;
+ QUICK_REPLY_ACTION = quick_reply;
+ RECENT_EMOJI_WEIGHTS_ACTION = recent_emoji_weights_action;
+ LABEL_MESSAGE_ACTION = label_message;
+ LABEL_EDIT_ACTION = label_edit;
+ LABEL_ASSOCIATION_ACTION = label_jid;
+ LOCALE_SETTING = setting_locale;
+ ARCHIVE_CHAT_ACTION = archive;
+ DELETE_MESSAGE_FOR_ME_ACTION = deleteMessageForMe;
+ KEY_EXPIRATION = sentinel;
+ MARK_CHAT_AS_READ_ACTION = markChatAsRead;
+ CLEAR_CHAT_ACTION = clearChat;
+ DELETE_CHAT_ACTION = deleteChat;
+ UNARCHIVE_CHATS_SETTING = setting_unarchiveChats;
+ PRIMARY_FEATURE = primary_feature;
+ ANDROID_UNSUPPORTED_ACTIONS = android_unsupported_actions;
+ AGENT_ACTION = deviceAgent;
+ SUBSCRIPTION_ACTION = subscription;
+ USER_STATUS_MUTE_ACTION = userStatusMute;
+ TIME_FORMAT_ACTION = time_format;
+ NUX_ACTION = nux;
+ PRIMARY_VERSION_ACTION = primary_version;
+ STICKER_ACTION = favoriteSticker;
+ REMOVE_RECENT_STICKER_ACTION = removeRecentSticker;
+ CHAT_ASSIGNMENT = agentChatAssignment;
+ CHAT_ASSIGNMENT_OPENED_STATUS = agentChatAssignmentOpenedStatus;
+ PN_FOR_LID_CHAT_ACTION = pnForLidChat;
+ MARKETING_MESSAGE_ACTION = marketingMessage;
+ MARKETING_MESSAGE_BROADCAST_ACTION = marketingMessageBroadcast;
+ EXTERNAL_WEB_BETA_ACTION = external_web_beta;
+ PRIVACY_SETTING_RELAY_ALL_CALLS = setting_relayAllCalls;
+ CALL_LOG_ACTION = call_log;
+ UGC_BOT = ugc_bot;
+ STATUS_PRIVACY = status_privacy;
+ BOT_WELCOME_REQUEST_ACTION = bot_welcome_request;
+ DELETE_INDIVIDUAL_CALL_LOG = delete_individual_call_log;
+ LABEL_REORDERING_ACTION = label_reordering;
+ PAYMENT_INFO_ACTION = payment_info;
+ CUSTOM_PAYMENT_METHODS_ACTION = custom_payment_methods;
+ LOCK_CHAT_ACTION = lock;
+ CHAT_LOCK_SETTINGS = setting_chatLock;
+ WAMO_USER_IDENTIFIER_ACTION = generated_wui;
+ PRIVACY_SETTING_DISABLE_LINK_PREVIEWS_ACTION = setting_disableLinkPreviews;
+ DEVICE_CAPABILITIES = device_capabilities;
+ NOTE_EDIT_ACTION = note_edit;
+ FAVORITES_ACTION = favorites;
+ MERCHANT_PAYMENT_PARTNER_ACTION = merchant_payment_partner;
+ WAFFLE_ACCOUNT_LINK_STATE_ACTION = waffle_account_link_state;
+ USERNAME_CHAT_START_MODE = usernameChatStartMode;
+ NOTIFICATION_ACTIVITY_SETTING_ACTION = notificationActivitySetting;
+ LID_CONTACT_ACTION = lid_contact;
+ CTWA_PER_CUSTOMER_DATA_SHARING_ACTION = ctwaPerCustomerDataSharing;
+ PAYMENT_TOS_ACTION = payment_tos;
+ PRIVACY_SETTING_CHANNELS_PERSONALISED_RECOMMENDATION_ACTION = setting_channels_personalised_recommendation_optout;
+ BUSINESS_BROADCAST_ASSOCIATION_ACTION = broadcast_jid;
+ DETECTED_OUTCOMES_STATUS_ACTION = detected_outcomes_status_action;
+ MAIBA_AI_FEATURES_CONTROL_ACTION = maiba_ai_features_control;
+ BUSINESS_BROADCAST_LIST_ACTION = business_broadcast_list;
+ MUSIC_USER_ID_ACTION = music_user_id;
+ STATUS_POST_OPT_IN_NOTIFICATION_PREFERENCES_ACTION = status_post_opt_in_notification_preferences_action;
+ AVATAR_UPDATED_ACTION = avatar_updated_action;
+ GALAXY_FLOW_ACTION = galaxy_flow_action;
+ PRIVATE_PROCESSING_SETTING_ACTION = private_processing_setting;
+ NEWSLETTER_SAVED_INTERESTS_ACTION = newsletter_saved_interests;
+ AI_THREAD_RENAME_ACTION = ai_thread_rename;
+ INTERACTIVE_MESSAGE_ACTION = interactive_message_action;
+ SHARE_OWN_PN = shareOwnPn;
+ BUSINESS_BROADCAST_ACTION = broadcast;
+}
+*/
+
+/*
+enum CollectionName {
+}
+*/
+
+/*
+enum CollectionNameStr {
+ REGULAR = regular;
+ REGULAR_LOW = regular_low;
+ REGULAR_HIGH = regular_high;
+ CRITICAL_BLOCK = critical_block;
+ CRITICAL_UNBLOCK_LOW = critical_unblock_low;
+}
+*/
+
message RecentEmojiWeight {
optional string emoji = 1;
optional float weight = 2;
@@ -234,7 +428,6 @@ message SyncActionValue {
optional ContactAction contactAction = 3;
optional MuteAction muteAction = 4;
optional PinAction pinAction = 5;
- optional SecurityNotificationSetting securityNotificationSetting = 6;
optional PushNameSetting pushNameSetting = 7;
optional QuickReplyAction quickReplyAction = 8;
optional RecentEmojiWeightsAction recentEmojiWeightsAction = 11;
@@ -266,6 +459,7 @@ message SyncActionValue {
optional ExternalWebBetaAction externalWebBetaAction = 40;
optional PrivacySettingRelayAllCalls privacySettingRelayAllCalls = 41;
optional CallLogAction callLogAction = 42;
+ optional UGCBot ugcBot = 43;
optional StatusPrivacyAction statusPrivacy = 44;
optional BotWelcomeRequestAction botWelcomeRequestAction = 45;
optional DeleteIndividualCallLogAction deleteIndividualCallLog = 46;
@@ -273,10 +467,10 @@ message SyncActionValue {
optional PaymentInfoAction paymentInfoAction = 48;
optional CustomPaymentMethodsAction customPaymentMethodsAction = 49;
optional LockChatAction lockChatAction = 50;
- optional WAProtobufsChatLockSettings.ChatLockSettings chatLockSettings = 51;
+ optional WAWebProtobufsChatLockSettings.ChatLockSettings chatLockSettings = 51;
optional WamoUserIdentifierAction wamoUserIdentifierAction = 52;
optional PrivacySettingDisableLinkPreviewsAction privacySettingDisableLinkPreviewsAction = 53;
- optional WAProtobufsDeviceCapabilities.DeviceCapabilities deviceCapabilities = 54;
+ optional WAWebProtobufsDeviceCapabilities.DeviceCapabilities deviceCapabilities = 54;
optional NoteEditAction noteEditAction = 55;
optional FavoritesAction favoritesAction = 56;
optional MerchantPaymentPartnerAction merchantPaymentPartnerAction = 57;
@@ -294,7 +488,14 @@ message SyncActionValue {
optional MusicUserIdAction musicUserIDAction = 70;
optional StatusPostOptInNotificationPreferencesAction statusPostOptInNotificationPreferencesAction = 71;
optional AvatarUpdatedAction avatarUpdatedAction = 72;
- optional GalaxyFlowAction galaxyFlowAction = 73;
+ optional PrivateProcessingSettingAction privateProcessingSettingAction = 74;
+ optional NewsletterSavedInterestsAction newsletterSavedInterestsAction = 75;
+ optional AiThreadRenameAction aiThreadRenameAction = 76;
+ optional InteractiveMessageAction interactiveMessageAction = 77;
+}
+
+message AiThreadRenameAction {
+ optional string newTitle = 1;
}
message StatusPostOptInNotificationPreferencesAction {
@@ -324,7 +525,6 @@ message LidContactAction {
optional string fullName = 1;
optional string firstName = 2;
optional string username = 3;
- optional bool saveOnPrimaryAddressbook = 4;
}
message FavoritesAction {
@@ -384,8 +584,18 @@ message BotWelcomeRequestAction {
optional bool isSent = 1;
}
+message NewsletterSavedInterestsAction {
+ optional string newsletterSavedInterests = 1;
+}
+
message MusicUserIdAction {
optional string musicUserID = 1;
+ // TODO switch to proto3 and enable this
+ //optional map music_user_id_map = 2;
+}
+
+message UGCBot {
+ optional bytes definition = 1;
}
message CallLogAction {
@@ -542,10 +752,6 @@ message PushNameSetting {
optional string name = 1;
}
-message SecurityNotificationSetting {
- optional bool showNotification = 1;
-}
-
message PinAction {
optional bool pinned = 1;
}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAWebProtobufsUserPassword.pb.go
similarity index 65%
rename from vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.go
rename to vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAWebProtobufsUserPassword.pb.go
index a374b13a..b40e551d 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAWebProtobufsUserPassword.pb.go
@@ -2,7 +2,7 @@
// versions:
// protoc-gen-go v1.36.10
// protoc v3.21.12
-// source: waUserPassword/WAProtobufsUserPassword.proto
+// source: waUserPassword/WAWebProtobufsUserPassword.proto
package waUserPassword
@@ -55,11 +55,11 @@ func (x UserPassword_Transformer) String() string {
}
func (UserPassword_Transformer) Descriptor() protoreflect.EnumDescriptor {
- return file_waUserPassword_WAProtobufsUserPassword_proto_enumTypes[0].Descriptor()
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_enumTypes[0].Descriptor()
}
func (UserPassword_Transformer) Type() protoreflect.EnumType {
- return &file_waUserPassword_WAProtobufsUserPassword_proto_enumTypes[0]
+ return &file_waUserPassword_WAWebProtobufsUserPassword_proto_enumTypes[0]
}
func (x UserPassword_Transformer) Number() protoreflect.EnumNumber {
@@ -78,7 +78,7 @@ func (x *UserPassword_Transformer) UnmarshalJSON(b []byte) error {
// Deprecated: Use UserPassword_Transformer.Descriptor instead.
func (UserPassword_Transformer) EnumDescriptor() ([]byte, []int) {
- return file_waUserPassword_WAProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 0}
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 0}
}
type UserPassword_Encoding int32
@@ -111,11 +111,11 @@ func (x UserPassword_Encoding) String() string {
}
func (UserPassword_Encoding) Descriptor() protoreflect.EnumDescriptor {
- return file_waUserPassword_WAProtobufsUserPassword_proto_enumTypes[1].Descriptor()
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_enumTypes[1].Descriptor()
}
func (UserPassword_Encoding) Type() protoreflect.EnumType {
- return &file_waUserPassword_WAProtobufsUserPassword_proto_enumTypes[1]
+ return &file_waUserPassword_WAWebProtobufsUserPassword_proto_enumTypes[1]
}
func (x UserPassword_Encoding) Number() protoreflect.EnumNumber {
@@ -134,13 +134,13 @@ func (x *UserPassword_Encoding) UnmarshalJSON(b []byte) error {
// Deprecated: Use UserPassword_Encoding.Descriptor instead.
func (UserPassword_Encoding) EnumDescriptor() ([]byte, []int) {
- return file_waUserPassword_WAProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 1}
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 1}
}
type UserPassword struct {
state protoimpl.MessageState `protogen:"open.v1"`
- Encoding *UserPassword_Encoding `protobuf:"varint,1,opt,name=encoding,enum=WAProtobufsUserPassword.UserPassword_Encoding" json:"encoding,omitempty"`
- Transformer *UserPassword_Transformer `protobuf:"varint,2,opt,name=transformer,enum=WAProtobufsUserPassword.UserPassword_Transformer" json:"transformer,omitempty"`
+ Encoding *UserPassword_Encoding `protobuf:"varint,1,opt,name=encoding,enum=WAWebProtobufsUserPassword.UserPassword_Encoding" json:"encoding,omitempty"`
+ Transformer *UserPassword_Transformer `protobuf:"varint,2,opt,name=transformer,enum=WAWebProtobufsUserPassword.UserPassword_Transformer" json:"transformer,omitempty"`
TransformerArg []*UserPassword_TransformerArg `protobuf:"bytes,3,rep,name=transformerArg" json:"transformerArg,omitempty"`
TransformedData []byte `protobuf:"bytes,4,opt,name=transformedData" json:"transformedData,omitempty"`
unknownFields protoimpl.UnknownFields
@@ -149,7 +149,7 @@ type UserPassword struct {
func (x *UserPassword) Reset() {
*x = UserPassword{}
- mi := &file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[0]
+ mi := &file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -161,7 +161,7 @@ func (x *UserPassword) String() string {
func (*UserPassword) ProtoMessage() {}
func (x *UserPassword) ProtoReflect() protoreflect.Message {
- mi := &file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[0]
+ mi := &file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -174,7 +174,7 @@ func (x *UserPassword) ProtoReflect() protoreflect.Message {
// Deprecated: Use UserPassword.ProtoReflect.Descriptor instead.
func (*UserPassword) Descriptor() ([]byte, []int) {
- return file_waUserPassword_WAProtobufsUserPassword_proto_rawDescGZIP(), []int{0}
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescGZIP(), []int{0}
}
func (x *UserPassword) GetEncoding() UserPassword_Encoding {
@@ -215,7 +215,7 @@ type UserPassword_TransformerArg struct {
func (x *UserPassword_TransformerArg) Reset() {
*x = UserPassword_TransformerArg{}
- mi := &file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[1]
+ mi := &file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -227,7 +227,7 @@ func (x *UserPassword_TransformerArg) String() string {
func (*UserPassword_TransformerArg) ProtoMessage() {}
func (x *UserPassword_TransformerArg) ProtoReflect() protoreflect.Message {
- mi := &file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[1]
+ mi := &file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[1]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -240,7 +240,7 @@ func (x *UserPassword_TransformerArg) ProtoReflect() protoreflect.Message {
// Deprecated: Use UserPassword_TransformerArg.ProtoReflect.Descriptor instead.
func (*UserPassword_TransformerArg) Descriptor() ([]byte, []int) {
- return file_waUserPassword_WAProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 0}
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 0}
}
func (x *UserPassword_TransformerArg) GetKey() string {
@@ -270,7 +270,7 @@ type UserPassword_TransformerArg_Value struct {
func (x *UserPassword_TransformerArg_Value) Reset() {
*x = UserPassword_TransformerArg_Value{}
- mi := &file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[2]
+ mi := &file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -282,7 +282,7 @@ func (x *UserPassword_TransformerArg_Value) String() string {
func (*UserPassword_TransformerArg_Value) ProtoMessage() {}
func (x *UserPassword_TransformerArg_Value) ProtoReflect() protoreflect.Message {
- mi := &file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[2]
+ mi := &file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[2]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -295,7 +295,7 @@ func (x *UserPassword_TransformerArg_Value) ProtoReflect() protoreflect.Message
// Deprecated: Use UserPassword_TransformerArg_Value.ProtoReflect.Descriptor instead.
func (*UserPassword_TransformerArg_Value) Descriptor() ([]byte, []int) {
- return file_waUserPassword_WAProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 0, 0}
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescGZIP(), []int{0, 0, 0}
}
func (x *UserPassword_TransformerArg_Value) GetValue() isUserPassword_TransformerArg_Value_Value {
@@ -340,19 +340,19 @@ func (*UserPassword_TransformerArg_Value_AsBlob) isUserPassword_TransformerArg_V
func (*UserPassword_TransformerArg_Value_AsUnsignedInteger) isUserPassword_TransformerArg_Value_Value() {
}
-var File_waUserPassword_WAProtobufsUserPassword_proto protoreflect.FileDescriptor
+var File_waUserPassword_WAWebProtobufsUserPassword_proto protoreflect.FileDescriptor
-const file_waUserPassword_WAProtobufsUserPassword_proto_rawDesc = "" +
+const file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDesc = "" +
"\n" +
- ",waUserPassword/WAProtobufsUserPassword.proto\x12\x17WAProtobufsUserPassword\"\xfa\x04\n" +
- "\fUserPassword\x12J\n" +
- "\bencoding\x18\x01 \x01(\x0e2..WAProtobufsUserPassword.UserPassword.EncodingR\bencoding\x12S\n" +
- "\vtransformer\x18\x02 \x01(\x0e21.WAProtobufsUserPassword.UserPassword.TransformerR\vtransformer\x12\\\n" +
- "\x0etransformerArg\x18\x03 \x03(\v24.WAProtobufsUserPassword.UserPassword.TransformerArgR\x0etransformerArg\x12(\n" +
- "\x0ftransformedData\x18\x04 \x01(\fR\x0ftransformedData\x1a\xd0\x01\n" +
+ "/waUserPassword/WAWebProtobufsUserPassword.proto\x12\x1aWAWebProtobufsUserPassword\"\x86\x05\n" +
+ "\fUserPassword\x12M\n" +
+ "\bencoding\x18\x01 \x01(\x0e21.WAWebProtobufsUserPassword.UserPassword.EncodingR\bencoding\x12V\n" +
+ "\vtransformer\x18\x02 \x01(\x0e24.WAWebProtobufsUserPassword.UserPassword.TransformerR\vtransformer\x12_\n" +
+ "\x0etransformerArg\x18\x03 \x03(\v27.WAWebProtobufsUserPassword.UserPassword.TransformerArgR\x0etransformerArg\x12(\n" +
+ "\x0ftransformedData\x18\x04 \x01(\fR\x0ftransformedData\x1a\xd3\x01\n" +
"\x0eTransformerArg\x12\x10\n" +
- "\x03key\x18\x01 \x01(\tR\x03key\x12P\n" +
- "\x05value\x18\x02 \x01(\v2:.WAProtobufsUserPassword.UserPassword.TransformerArg.ValueR\x05value\x1aZ\n" +
+ "\x03key\x18\x01 \x01(\tR\x03key\x12S\n" +
+ "\x05value\x18\x02 \x01(\v2=.WAWebProtobufsUserPassword.UserPassword.TransformerArg.ValueR\x05value\x1aZ\n" +
"\x05Value\x12\x18\n" +
"\x06asBlob\x18\x01 \x01(\fH\x00R\x06asBlob\x12.\n" +
"\x11asUnsignedInteger\x18\x02 \x01(\rH\x00R\x11asUnsignedIntegerB\a\n" +
@@ -366,31 +366,31 @@ const file_waUserPassword_WAProtobufsUserPassword_proto_rawDesc = "" +
"\vUTF8_BROKEN\x10\x01B*Z(go.mau.fi/whatsmeow/proto/waUserPassword"
var (
- file_waUserPassword_WAProtobufsUserPassword_proto_rawDescOnce sync.Once
- file_waUserPassword_WAProtobufsUserPassword_proto_rawDescData []byte
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescOnce sync.Once
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescData []byte
)
-func file_waUserPassword_WAProtobufsUserPassword_proto_rawDescGZIP() []byte {
- file_waUserPassword_WAProtobufsUserPassword_proto_rawDescOnce.Do(func() {
- file_waUserPassword_WAProtobufsUserPassword_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waUserPassword_WAProtobufsUserPassword_proto_rawDesc), len(file_waUserPassword_WAProtobufsUserPassword_proto_rawDesc)))
+func file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescGZIP() []byte {
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescOnce.Do(func() {
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDesc), len(file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDesc)))
})
- return file_waUserPassword_WAProtobufsUserPassword_proto_rawDescData
+ return file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDescData
}
-var file_waUserPassword_WAProtobufsUserPassword_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
-var file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
-var file_waUserPassword_WAProtobufsUserPassword_proto_goTypes = []any{
- (UserPassword_Transformer)(0), // 0: WAProtobufsUserPassword.UserPassword.Transformer
- (UserPassword_Encoding)(0), // 1: WAProtobufsUserPassword.UserPassword.Encoding
- (*UserPassword)(nil), // 2: WAProtobufsUserPassword.UserPassword
- (*UserPassword_TransformerArg)(nil), // 3: WAProtobufsUserPassword.UserPassword.TransformerArg
- (*UserPassword_TransformerArg_Value)(nil), // 4: WAProtobufsUserPassword.UserPassword.TransformerArg.Value
+var file_waUserPassword_WAWebProtobufsUserPassword_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
+var file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
+var file_waUserPassword_WAWebProtobufsUserPassword_proto_goTypes = []any{
+ (UserPassword_Transformer)(0), // 0: WAWebProtobufsUserPassword.UserPassword.Transformer
+ (UserPassword_Encoding)(0), // 1: WAWebProtobufsUserPassword.UserPassword.Encoding
+ (*UserPassword)(nil), // 2: WAWebProtobufsUserPassword.UserPassword
+ (*UserPassword_TransformerArg)(nil), // 3: WAWebProtobufsUserPassword.UserPassword.TransformerArg
+ (*UserPassword_TransformerArg_Value)(nil), // 4: WAWebProtobufsUserPassword.UserPassword.TransformerArg.Value
}
-var file_waUserPassword_WAProtobufsUserPassword_proto_depIdxs = []int32{
- 1, // 0: WAProtobufsUserPassword.UserPassword.encoding:type_name -> WAProtobufsUserPassword.UserPassword.Encoding
- 0, // 1: WAProtobufsUserPassword.UserPassword.transformer:type_name -> WAProtobufsUserPassword.UserPassword.Transformer
- 3, // 2: WAProtobufsUserPassword.UserPassword.transformerArg:type_name -> WAProtobufsUserPassword.UserPassword.TransformerArg
- 4, // 3: WAProtobufsUserPassword.UserPassword.TransformerArg.value:type_name -> WAProtobufsUserPassword.UserPassword.TransformerArg.Value
+var file_waUserPassword_WAWebProtobufsUserPassword_proto_depIdxs = []int32{
+ 1, // 0: WAWebProtobufsUserPassword.UserPassword.encoding:type_name -> WAWebProtobufsUserPassword.UserPassword.Encoding
+ 0, // 1: WAWebProtobufsUserPassword.UserPassword.transformer:type_name -> WAWebProtobufsUserPassword.UserPassword.Transformer
+ 3, // 2: WAWebProtobufsUserPassword.UserPassword.transformerArg:type_name -> WAWebProtobufsUserPassword.UserPassword.TransformerArg
+ 4, // 3: WAWebProtobufsUserPassword.UserPassword.TransformerArg.value:type_name -> WAWebProtobufsUserPassword.UserPassword.TransformerArg.Value
4, // [4:4] is the sub-list for method output_type
4, // [4:4] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
@@ -398,12 +398,12 @@ var file_waUserPassword_WAProtobufsUserPassword_proto_depIdxs = []int32{
0, // [0:4] is the sub-list for field type_name
}
-func init() { file_waUserPassword_WAProtobufsUserPassword_proto_init() }
-func file_waUserPassword_WAProtobufsUserPassword_proto_init() {
- if File_waUserPassword_WAProtobufsUserPassword_proto != nil {
+func init() { file_waUserPassword_WAWebProtobufsUserPassword_proto_init() }
+func file_waUserPassword_WAWebProtobufsUserPassword_proto_init() {
+ if File_waUserPassword_WAWebProtobufsUserPassword_proto != nil {
return
}
- file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes[2].OneofWrappers = []any{
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes[2].OneofWrappers = []any{
(*UserPassword_TransformerArg_Value_AsBlob)(nil),
(*UserPassword_TransformerArg_Value_AsUnsignedInteger)(nil),
}
@@ -411,18 +411,18 @@ func file_waUserPassword_WAProtobufsUserPassword_proto_init() {
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: unsafe.Slice(unsafe.StringData(file_waUserPassword_WAProtobufsUserPassword_proto_rawDesc), len(file_waUserPassword_WAProtobufsUserPassword_proto_rawDesc)),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDesc), len(file_waUserPassword_WAWebProtobufsUserPassword_proto_rawDesc)),
NumEnums: 2,
NumMessages: 3,
NumExtensions: 0,
NumServices: 0,
},
- GoTypes: file_waUserPassword_WAProtobufsUserPassword_proto_goTypes,
- DependencyIndexes: file_waUserPassword_WAProtobufsUserPassword_proto_depIdxs,
- EnumInfos: file_waUserPassword_WAProtobufsUserPassword_proto_enumTypes,
- MessageInfos: file_waUserPassword_WAProtobufsUserPassword_proto_msgTypes,
+ GoTypes: file_waUserPassword_WAWebProtobufsUserPassword_proto_goTypes,
+ DependencyIndexes: file_waUserPassword_WAWebProtobufsUserPassword_proto_depIdxs,
+ EnumInfos: file_waUserPassword_WAWebProtobufsUserPassword_proto_enumTypes,
+ MessageInfos: file_waUserPassword_WAWebProtobufsUserPassword_proto_msgTypes,
}.Build()
- File_waUserPassword_WAProtobufsUserPassword_proto = out.File
- file_waUserPassword_WAProtobufsUserPassword_proto_goTypes = nil
- file_waUserPassword_WAProtobufsUserPassword_proto_depIdxs = nil
+ File_waUserPassword_WAWebProtobufsUserPassword_proto = out.File
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_goTypes = nil
+ file_waUserPassword_WAWebProtobufsUserPassword_proto_depIdxs = nil
}
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.proto b/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAWebProtobufsUserPassword.proto
similarity index 94%
rename from vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.proto
rename to vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAWebProtobufsUserPassword.proto
index db1c4f19..e445370b 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAWebProtobufsUserPassword.proto
@@ -1,5 +1,5 @@
syntax = "proto2";
-package WAProtobufsUserPassword;
+package WAWebProtobufsUserPassword;
option go_package = "go.mau.fi/whatsmeow/proto/waUserPassword";
message UserPassword {
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go
index 76bcb96c..8059875a 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go
@@ -727,6 +727,7 @@ const (
ClientPayload_UserAgent_TEST ClientPayload_UserAgent_Platform = 34
ClientPayload_UserAgent_SMART_GLASSES ClientPayload_UserAgent_Platform = 35
ClientPayload_UserAgent_BLUE_VR ClientPayload_UserAgent_Platform = 36
+ ClientPayload_UserAgent_AR_WRIST ClientPayload_UserAgent_Platform = 37
)
// Enum value maps for ClientPayload_UserAgent_Platform.
@@ -769,6 +770,7 @@ var (
34: "TEST",
35: "SMART_GLASSES",
36: "BLUE_VR",
+ 37: "AR_WRIST",
}
ClientPayload_UserAgent_Platform_value = map[string]int32{
"ANDROID": 0,
@@ -808,6 +810,7 @@ var (
"TEST": 34,
"SMART_GLASSES": 35,
"BLUE_VR": 36,
+ "AR_WRIST": 37,
}
)
@@ -2068,7 +2071,7 @@ var File_waWa6_WAWebProtobufsWa6_proto protoreflect.FileDescriptor
const file_waWa6_WAWebProtobufsWa6_proto_rawDesc = "" +
"\n" +
- "\x1dwaWa6/WAWebProtobufsWa6.proto\x12\x11WAWebProtobufsWa6\"\xd8*\n" +
+ "\x1dwaWa6/WAWebProtobufsWa6.proto\x12\x11WAWebProtobufsWa6\"\xe6*\n" +
"\rClientPayload\x12\x1a\n" +
"\busername\x18\x01 \x01(\x04R\busername\x12\x18\n" +
"\apassive\x18\x03 \x01(\bR\apassive\x12H\n" +
@@ -2145,7 +2148,7 @@ const file_waWa6_WAWebProtobufsWa6_proto_rawDesc = "" +
"\x06DARWIN\x10\x03\x12\t\n" +
"\x05WIN32\x10\x04\x12\x0e\n" +
"\n" +
- "WIN_HYBRID\x10\x05\x1a\xcf\f\n" +
+ "WIN_HYBRID\x10\x05\x1a\xdd\f\n" +
"\tUserAgent\x12O\n" +
"\bplatform\x18\x01 \x01(\x0e23.WAWebProtobufsWa6.ClientPayload.UserAgent.PlatformR\bplatform\x12U\n" +
"\n" +
@@ -2189,7 +2192,7 @@ const file_waWa6_WAWebProtobufsWa6_proto_rawDesc = "" +
"\aRELEASE\x10\x00\x12\b\n" +
"\x04BETA\x10\x01\x12\t\n" +
"\x05ALPHA\x10\x02\x12\t\n" +
- "\x05DEBUG\x10\x03\"\x97\x04\n" +
+ "\x05DEBUG\x10\x03\"\xa5\x04\n" +
"\bPlatform\x12\v\n" +
"\aANDROID\x10\x00\x12\a\n" +
"\x03IOS\x10\x01\x12\x11\n" +
@@ -2233,7 +2236,8 @@ const file_waWa6_WAWebProtobufsWa6_proto_rawDesc = "" +
"\x04IPAD\x10!\x12\b\n" +
"\x04TEST\x10\"\x12\x11\n" +
"\rSMART_GLASSES\x10#\x12\v\n" +
- "\aBLUE_VR\x10$\x1aq\n" +
+ "\aBLUE_VR\x10$\x12\f\n" +
+ "\bAR_WRIST\x10%\x1aq\n" +
"\vInteropData\x12\x1c\n" +
"\taccountID\x18\x01 \x01(\x04R\taccountID\x12\x14\n" +
"\x05token\x18\x02 \x01(\fR\x05token\x12.\n" +
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto b/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto
index 3ecd0d4a..6d74a45c 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto
@@ -153,6 +153,7 @@ message ClientPayload {
TEST = 34;
SMART_GLASSES = 35;
BLUE_VR = 36;
+ AR_WRIST = 37;
}
message AppVersion {
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go b/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go
index 11d50b67..2c22c236 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go
+++ b/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go
@@ -311,6 +311,8 @@ const (
WebMessageInfo_BIZ_AUTOMATICALLY_LABELED_CHAT_SYSTEM_MESSAGE WebMessageInfo_StubType = 218
WebMessageInfo_PHONE_NUMBER_HIDING_CHAT_DEPRECATED_MESSAGE WebMessageInfo_StubType = 219
WebMessageInfo_QUARANTINED_MESSAGE WebMessageInfo_StubType = 220
+ WebMessageInfo_GROUP_MEMBER_SHARE_GROUP_HISTORY_MODE WebMessageInfo_StubType = 221
+ WebMessageInfo_GROUP_OPEN_BOT_ADDED WebMessageInfo_StubType = 222
)
// Enum value maps for WebMessageInfo_StubType.
@@ -537,6 +539,8 @@ var (
218: "BIZ_AUTOMATICALLY_LABELED_CHAT_SYSTEM_MESSAGE",
219: "PHONE_NUMBER_HIDING_CHAT_DEPRECATED_MESSAGE",
220: "QUARANTINED_MESSAGE",
+ 221: "GROUP_MEMBER_SHARE_GROUP_HISTORY_MODE",
+ 222: "GROUP_OPEN_BOT_ADDED",
}
WebMessageInfo_StubType_value = map[string]int32{
"UNKNOWN": 0,
@@ -760,6 +764,8 @@ var (
"BIZ_AUTOMATICALLY_LABELED_CHAT_SYSTEM_MESSAGE": 218,
"PHONE_NUMBER_HIDING_CHAT_DEPRECATED_MESSAGE": 219,
"QUARANTINED_MESSAGE": 220,
+ "GROUP_MEMBER_SHARE_GROUP_HISTORY_MODE": 221,
+ "GROUP_OPEN_BOT_ADDED": 222,
}
)
@@ -1345,10 +1351,11 @@ func (MessageAddOn_MessageAddOnType) EnumDescriptor() ([]byte, []int) {
type GroupHistoryBundleInfo_ProcessState int32
const (
- GroupHistoryBundleInfo_NOT_INJECTED GroupHistoryBundleInfo_ProcessState = 0
- GroupHistoryBundleInfo_INJECTED GroupHistoryBundleInfo_ProcessState = 1
- GroupHistoryBundleInfo_INJECTED_PARTIAL GroupHistoryBundleInfo_ProcessState = 2
- GroupHistoryBundleInfo_INJECTION_FAILED GroupHistoryBundleInfo_ProcessState = 3
+ GroupHistoryBundleInfo_NOT_INJECTED GroupHistoryBundleInfo_ProcessState = 0
+ GroupHistoryBundleInfo_INJECTED GroupHistoryBundleInfo_ProcessState = 1
+ GroupHistoryBundleInfo_INJECTED_PARTIAL GroupHistoryBundleInfo_ProcessState = 2
+ GroupHistoryBundleInfo_INJECTION_FAILED GroupHistoryBundleInfo_ProcessState = 3
+ GroupHistoryBundleInfo_INJECTION_FAILED_NO_RETRY GroupHistoryBundleInfo_ProcessState = 4
)
// Enum value maps for GroupHistoryBundleInfo_ProcessState.
@@ -1358,12 +1365,14 @@ var (
1: "INJECTED",
2: "INJECTED_PARTIAL",
3: "INJECTION_FAILED",
+ 4: "INJECTION_FAILED_NO_RETRY",
}
GroupHistoryBundleInfo_ProcessState_value = map[string]int32{
- "NOT_INJECTED": 0,
- "INJECTED": 1,
- "INJECTED_PARTIAL": 2,
- "INJECTION_FAILED": 3,
+ "NOT_INJECTED": 0,
+ "INJECTED": 1,
+ "INJECTED_PARTIAL": 2,
+ "INJECTION_FAILED": 3,
+ "INJECTION_FAILED_NO_RETRY": 4,
}
)
@@ -4008,7 +4017,7 @@ var File_waWeb_WAWebProtobufsWeb_proto protoreflect.FileDescriptor
const file_waWeb_WAWebProtobufsWeb_proto_rawDesc = "" +
"\n" +
- "\x1dwaWeb/WAWebProtobufsWeb.proto\x12\x11WAWebProtobufsWeb\x1a\x1dwaE2E/WAWebProtobufsE2E.proto\x1a\x17waCommon/WACommon.proto\"\xe1Z\n" +
+ "\x1dwaWeb/WAWebProtobufsWeb.proto\x12\x11WAWebProtobufsWeb\x1a\x1dwaE2E/WAWebProtobufsE2E.proto\x1a\x17waCommon/WACommon.proto\"\xa8[\n" +
"\x0eWebMessageInfo\x12&\n" +
"\x03key\x18\x01 \x02(\v2\x14.WACommon.MessageKeyR\x03key\x124\n" +
"\amessage\x18\x02 \x01(\v2\x1a.WAWebProtobufsE2E.MessageR\amessage\x12*\n" +
@@ -4085,7 +4094,7 @@ const file_waWeb_WAWebProtobufsWeb_proto_rawDesc = "" +
"\x02FB\x10\x02\x12\a\n" +
"\x03BSP\x10\x01\x12\x0e\n" +
"\n" +
- "BSP_AND_FB\x10\x03\"\xef:\n" +
+ "BSP_AND_FB\x10\x03\"\xb6;\n" +
"\bStubType\x12\v\n" +
"\aUNKNOWN\x10\x00\x12\n" +
"\n" +
@@ -4311,7 +4320,9 @@ const file_waWeb_WAWebProtobufsWeb_proto_rawDesc = "" +
"\x16GROUP_MEMBER_LINK_MODE\x10\xd9\x01\x122\n" +
"-BIZ_AUTOMATICALLY_LABELED_CHAT_SYSTEM_MESSAGE\x10\xda\x01\x120\n" +
"+PHONE_NUMBER_HIDING_CHAT_DEPRECATED_MESSAGE\x10\xdb\x01\x12\x18\n" +
- "\x13QUARANTINED_MESSAGE\x10\xdc\x01\"X\n" +
+ "\x13QUARANTINED_MESSAGE\x10\xdc\x01\x12*\n" +
+ "%GROUP_MEMBER_SHARE_GROUP_HISTORY_MODE\x10\xdd\x01\x12\x19\n" +
+ "\x14GROUP_OPEN_BOT_ADDED\x10\xde\x01\"X\n" +
"\x06Status\x12\t\n" +
"\x05ERROR\x10\x00\x12\v\n" +
"\aPENDING\x10\x01\x12\x0e\n" +
@@ -4474,15 +4485,16 @@ const file_waWeb_WAWebProtobufsWeb_proto_rawDesc = "" +
"\bREACTION\x10\x01\x12\x12\n" +
"\x0eEVENT_RESPONSE\x10\x02\x12\x0f\n" +
"\vPOLL_UPDATE\x10\x03\x12\x0f\n" +
- "\vPIN_IN_CHAT\x10\x04\"\xc1\x02\n" +
+ "\vPIN_IN_CHAT\x10\x04\"\xe0\x02\n" +
"\x16GroupHistoryBundleInfo\x12o\n" +
"\x1edeprecatedMessageHistoryBundle\x18\x01 \x01(\v2'.WAWebProtobufsE2E.MessageHistoryBundleR\x1edeprecatedMessageHistoryBundle\x12Z\n" +
- "\fprocessState\x18\x02 \x01(\x0e26.WAWebProtobufsWeb.GroupHistoryBundleInfo.ProcessStateR\fprocessState\"Z\n" +
+ "\fprocessState\x18\x02 \x01(\x0e26.WAWebProtobufsWeb.GroupHistoryBundleInfo.ProcessStateR\fprocessState\"y\n" +
"\fProcessState\x12\x10\n" +
"\fNOT_INJECTED\x10\x00\x12\f\n" +
"\bINJECTED\x10\x01\x12\x14\n" +
"\x10INJECTED_PARTIAL\x10\x02\x12\x14\n" +
- "\x10INJECTION_FAILED\x10\x03\"s\n" +
+ "\x10INJECTION_FAILED\x10\x03\x12\x1d\n" +
+ "\x19INJECTION_FAILED_NO_RETRY\x10\x04\"s\n" +
"\x0fCommentMetadata\x12@\n" +
"\x10commentParentKey\x18\x01 \x01(\v2\x14.WACommon.MessageKeyR\x10commentParentKey\x12\x1e\n" +
"\n" +
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto b/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto
index 34a645c5..c1bb09d0 100644
--- a/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto
+++ b/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto
@@ -235,6 +235,8 @@ message WebMessageInfo {
BIZ_AUTOMATICALLY_LABELED_CHAT_SYSTEM_MESSAGE = 218;
PHONE_NUMBER_HIDING_CHAT_DEPRECATED_MESSAGE = 219;
QUARANTINED_MESSAGE = 220;
+ GROUP_MEMBER_SHARE_GROUP_HISTORY_MODE = 221;
+ GROUP_OPEN_BOT_ADDED = 222;
}
enum Status {
@@ -479,6 +481,7 @@ message GroupHistoryBundleInfo {
INJECTED = 1;
INJECTED_PARTIAL = 2;
INJECTION_FAILED = 3;
+ INJECTION_FAILED_NO_RETRY = 4;
}
optional WAWebProtobufsE2E.MessageHistoryBundle deprecatedMessageHistoryBundle = 1;
diff --git a/vendor/go.mau.fi/whatsmeow/proto/waWeb/legacy.go b/vendor/go.mau.fi/whatsmeow/proto/waWeb/legacy.go
deleted file mode 100644
index 468cc8e4..00000000
--- a/vendor/go.mau.fi/whatsmeow/proto/waWeb/legacy.go
+++ /dev/null
@@ -1 +0,0 @@
-package waWeb
diff --git a/vendor/go.mau.fi/whatsmeow/send.go b/vendor/go.mau.fi/whatsmeow/send.go
index 46c2b88b..7dc126a8 100644
--- a/vendor/go.mau.fi/whatsmeow/send.go
+++ b/vendor/go.mau.fi/whatsmeow/send.go
@@ -1133,7 +1133,7 @@ func (cli *Client) prepareMessageNode(
extraParams nodeExtraParams,
) (*waBinary.Node, []types.JID, error) {
start := time.Now()
- allDevices, err := cli.GetUserDevicesContext(ctx, participants)
+ allDevices, err := cli.GetUserDevices(ctx, participants)
timings.GetDevices = time.Since(start)
if err != nil {
return nil, nil, fmt.Errorf("failed to get device list: %w", err)
diff --git a/vendor/go.mau.fi/whatsmeow/sendfb.go b/vendor/go.mau.fi/whatsmeow/sendfb.go
index b1c89ab6..573ce29b 100644
--- a/vendor/go.mau.fi/whatsmeow/sendfb.go
+++ b/vendor/go.mau.fi/whatsmeow/sendfb.go
@@ -439,7 +439,7 @@ func (cli *Client) prepareMessageNodeV3(
timings *MessageDebugTimings,
) (*waBinary.Node, []types.JID, error) {
start := time.Now()
- allDevices, err := cli.GetUserDevicesContext(ctx, participants)
+ allDevices, err := cli.GetUserDevices(ctx, participants)
timings.GetDevices = time.Since(start)
if err != nil {
return nil, nil, fmt.Errorf("failed to get device list: %w", err)
diff --git a/vendor/go.mau.fi/whatsmeow/store/clientpayload.go b/vendor/go.mau.fi/whatsmeow/store/clientpayload.go
index cdbd10b9..8eac58ad 100644
--- a/vendor/go.mau.fi/whatsmeow/store/clientpayload.go
+++ b/vendor/go.mau.fi/whatsmeow/store/clientpayload.go
@@ -76,7 +76,7 @@ func (vc WAVersionContainer) ProtoAppVersion() *waWa6.ClientPayload_UserAgent_Ap
}
// waVersion is the WhatsApp web client version
-var waVersion = WAVersionContainer{2, 3000, 1028708243}
+var waVersion = WAVersionContainer{2, 3000, 1029948479}
// waVersionHash is the md5 hash of a dot-separated waVersion
var waVersionHash [16]byte
@@ -109,13 +109,13 @@ var BaseClientPayload = &waWa6.ClientPayload{
AppVersion: waVersion.ProtoAppVersion(),
Mcc: proto.String("000"),
Mnc: proto.String("000"),
- OsVersion: proto.String("0.1.0"),
+ OsVersion: proto.String("0.1"),
Manufacturer: proto.String(""),
Device: proto.String("Desktop"),
- OsBuildNumber: proto.String("0.1.0"),
+ OsBuildNumber: proto.String("0.1"),
LocaleLanguageIso6391: proto.String("en"),
- LocaleCountryIso31661Alpha2: proto.String("en"),
+ LocaleCountryIso31661Alpha2: proto.String("US"),
},
WebInfo: &waWa6.ClientPayload_WebInfo{
WebSubPlatform: waWa6.ClientPayload_WebInfo_WEB_BROWSER.Enum(),
@@ -131,6 +131,25 @@ var DeviceProps = &waCompanionReg.DeviceProps{
Secondary: proto.Uint32(1),
Tertiary: proto.Uint32(0),
},
+ HistorySyncConfig: &waCompanionReg.DeviceProps_HistorySyncConfig{
+ StorageQuotaMb: proto.Uint32(10240),
+ InlineInitialPayloadInE2EeMsg: proto.Bool(true),
+ RecentSyncDaysLimit: nil,
+ SupportCallLogHistory: proto.Bool(false),
+ SupportBotUserAgentChatHistory: proto.Bool(true),
+ SupportCagReactionsAndPolls: proto.Bool(true),
+ SupportBizHostedMsg: proto.Bool(true),
+ SupportRecentSyncChunkMessageCountTuning: proto.Bool(true),
+ SupportHostedGroupMsg: proto.Bool(true),
+ SupportFbidBotChatHistory: proto.Bool(true),
+ SupportAddOnHistorySyncMigration: nil,
+ SupportMessageAssociation: proto.Bool(true),
+ SupportGroupHistory: proto.Bool(false),
+ OnDemandReady: nil,
+ SupportGuestChat: nil,
+ CompleteOnDemandReady: nil,
+ ThumbnailSyncDaysLimit: nil,
+ },
PlatformType: waCompanionReg.DeviceProps_UNKNOWN.Enum(),
RequireFullSync: proto.Bool(false),
}
@@ -172,6 +191,7 @@ func (device *Device) getLoginPayload() *waWa6.ClientPayload {
payload.Device = proto.Uint32(uint32(device.ID.Device))
payload.Passive = proto.Bool(true)
payload.Pull = proto.Bool(true)
+ payload.LidDbMigrated = proto.Bool(true)
return payload
}
diff --git a/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go b/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go
index 50f2d937..59d990b1 100644
--- a/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go
+++ b/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go
@@ -864,14 +864,14 @@ const (
WHEN $2 LIKE '%@lid'
THEN (SELECT pn || '@s.whatsapp.net' FROM whatsmeow_lid_map WHERE lid=replace($2, '@lid', ''))
WHEN $2 LIKE '%@s.whatsapp.net'
- THEN (SELECT lid || '@lid' FROM whatsmeow_lid_map WHERE lid=replace($2, '@s.whatsapp.net', ''))
+ THEN (SELECT lid || '@lid' FROM whatsmeow_lid_map WHERE pn=replace($2, '@s.whatsapp.net', ''))
END
)) AND message_id=$4 AND (sender_jid=$3 OR sender_jid=(
CASE
WHEN $3 LIKE '%@lid'
THEN (SELECT pn || '@s.whatsapp.net' FROM whatsmeow_lid_map WHERE lid=replace($3, '@lid', ''))
WHEN $3 LIKE '%@s.whatsapp.net'
- THEN (SELECT lid || '@lid' FROM whatsmeow_lid_map WHERE lid=replace($3, '@s.whatsapp.net', ''))
+ THEN (SELECT lid || '@lid' FROM whatsmeow_lid_map WHERE pn=replace($3, '@s.whatsapp.net', ''))
END
))
`
@@ -911,7 +911,18 @@ const (
VALUES ($1, $2, $3, $4)
ON CONFLICT (our_jid, their_jid) DO UPDATE SET token=EXCLUDED.token, timestamp=EXCLUDED.timestamp
`
- getPrivacyToken = `SELECT token, timestamp FROM whatsmeow_privacy_tokens WHERE our_jid=$1 AND their_jid=$2`
+ getPrivacyToken = `
+ SELECT token, timestamp FROM whatsmeow_privacy_tokens WHERE our_jid=$1 AND (their_jid=$2 OR their_jid=(
+ CASE
+ WHEN $2 LIKE '%@lid'
+ THEN (SELECT pn || '@s.whatsapp.net' FROM whatsmeow_lid_map WHERE lid=replace($2, '@lid', ''))
+ WHEN $2 LIKE '%@s.whatsapp.net'
+ THEN (SELECT lid || '@lid' FROM whatsmeow_lid_map WHERE pn=replace($2, '@s.whatsapp.net', ''))
+ ELSE $2
+ END
+ ))
+ ORDER BY timestamp DESC LIMIT 1
+ `
)
func (s *SQLStore) PutPrivacyTokens(ctx context.Context, tokens ...store.PrivacyToken) error {
diff --git a/vendor/go.mau.fi/whatsmeow/user.go b/vendor/go.mau.fi/whatsmeow/user.go
index 8e5bd1f3..deda52bf 100644
--- a/vendor/go.mau.fi/whatsmeow/user.go
+++ b/vendor/go.mau.fi/whatsmeow/user.go
@@ -515,6 +515,9 @@ type GetProfilePictureParams struct {
//
// To get a community photo, you should pass `IsCommunity: true`, as otherwise you may get a 401 error.
func (cli *Client) GetProfilePictureInfo(ctx context.Context, jid types.JID, params *GetProfilePictureParams) (*types.ProfilePictureInfo, error) {
+ if cli == nil {
+ return nil, ErrClientIsNil
+ }
attrs := waBinary.Attrs{
"query": "url",
}
diff --git a/vendor/golang.org/x/crypto/argon2/argon2.go b/vendor/golang.org/x/crypto/argon2/argon2.go
index 29f0a2de..2b65ec91 100644
--- a/vendor/golang.org/x/crypto/argon2/argon2.go
+++ b/vendor/golang.org/x/crypto/argon2/argon2.go
@@ -6,7 +6,7 @@
// Argon2 was selected as the winner of the Password Hashing Competition and can
// be used to derive cryptographic keys from passwords.
//
-// For a detailed specification of Argon2 see [1].
+// For a detailed specification of Argon2 see [argon2-specs.pdf].
//
// If you aren't sure which function you need, use Argon2id (IDKey) and
// the parameter recommendations for your scenario.
@@ -17,7 +17,7 @@
// It uses data-independent memory access, which is preferred for password
// hashing and password-based key derivation. Argon2i requires more passes over
// memory than Argon2id to protect from trade-off attacks. The recommended
-// parameters (taken from [2]) for non-interactive operations are time=3 and to
+// parameters (taken from [RFC 9106 Section 7.3]) for non-interactive operations are time=3 and to
// use the maximum available memory.
//
// # Argon2id
@@ -27,11 +27,11 @@
// half of the first iteration over the memory and data-dependent memory access
// for the rest. Argon2id is side-channel resistant and provides better brute-
// force cost savings due to time-memory tradeoffs than Argon2i. The recommended
-// parameters for non-interactive operations (taken from [2]) are time=1 and to
+// parameters for non-interactive operations (taken from [RFC 9106 Section 7.3]) are time=1 and to
// use the maximum available memory.
//
-// [1] https://github.com/P-H-C/phc-winner-argon2/blob/master/argon2-specs.pdf
-// [2] https://tools.ietf.org/html/draft-irtf-cfrg-argon2-03#section-9.3
+// [argon2-specs.pdf]: https://github.com/P-H-C/phc-winner-argon2/blob/master/argon2-specs.pdf
+// [RFC 9106 Section 7.3]: https://www.rfc-editor.org/rfc/rfc9106.html#section-7.3
package argon2
import (
@@ -59,7 +59,7 @@ const (
//
// key := argon2.Key([]byte("some password"), salt, 3, 32*1024, 4, 32)
//
-// The draft RFC recommends[2] time=3, and memory=32*1024 is a sensible number.
+// [RFC 9106 Section 7.3] recommends time=3, and memory=32*1024 as a sensible number.
// If using that amount of memory (32 MB) is not possible in some contexts then
// the time parameter can be increased to compensate.
//
@@ -69,6 +69,8 @@ const (
// adjusted to the number of available CPUs. The cost parameters should be
// increased as memory latency and CPU parallelism increases. Remember to get a
// good random salt.
+//
+// [RFC 9106 Section 7.3]: https://www.rfc-editor.org/rfc/rfc9106.html#section-7.3
func Key(password, salt []byte, time, memory uint32, threads uint8, keyLen uint32) []byte {
return deriveKey(argon2i, password, salt, nil, nil, time, memory, threads, keyLen)
}
@@ -83,7 +85,7 @@ func Key(password, salt []byte, time, memory uint32, threads uint8, keyLen uint3
//
// key := argon2.IDKey([]byte("some password"), salt, 1, 64*1024, 4, 32)
//
-// The draft RFC recommends[2] time=1, and memory=64*1024 is a sensible number.
+// [RFC 9106 Section 7.3] recommends time=1, and memory=64*1024 as a sensible number.
// If using that amount of memory (64 MB) is not possible in some contexts then
// the time parameter can be increased to compensate.
//
@@ -93,6 +95,8 @@ func Key(password, salt []byte, time, memory uint32, threads uint8, keyLen uint3
// adjusted to the numbers of available CPUs. The cost parameters should be
// increased as memory latency and CPU parallelism increases. Remember to get a
// good random salt.
+//
+// [RFC 9106 Section 7.3]: https://www.rfc-editor.org/rfc/rfc9106.html#section-7.3
func IDKey(password, salt []byte, time, memory uint32, threads uint8, keyLen uint32) []byte {
return deriveKey(argon2id, password, salt, nil, nil, time, memory, threads, keyLen)
}
diff --git a/vendor/golang.org/x/mod/module/module.go b/vendor/golang.org/x/mod/module/module.go
index 16e1aa7a..9d3955bd 100644
--- a/vendor/golang.org/x/mod/module/module.go
+++ b/vendor/golang.org/x/mod/module/module.go
@@ -261,7 +261,7 @@ func modPathOK(r rune) bool {
// importPathOK reports whether r can appear in a package import path element.
//
-// Import paths are intermediate between module paths and file paths: we allow
+// Import paths are intermediate between module paths and file paths: we
// disallow characters that would be confusing or ambiguous as arguments to
// 'go get' (such as '@' and ' ' ), but allow certain characters that are
// otherwise-unambiguous on the command line and historically used for some
diff --git a/vendor/golang.org/x/mod/semver/semver.go b/vendor/golang.org/x/mod/semver/semver.go
index 628f8fd6..824b282c 100644
--- a/vendor/golang.org/x/mod/semver/semver.go
+++ b/vendor/golang.org/x/mod/semver/semver.go
@@ -45,8 +45,8 @@ func IsValid(v string) bool {
// Canonical returns the canonical formatting of the semantic version v.
// It fills in any missing .MINOR or .PATCH and discards build metadata.
-// Two semantic versions compare equal only if their canonical formattings
-// are identical strings.
+// Two semantic versions compare equal only if their canonical formatting
+// is an identical string.
// The canonical invalid semantic version is the empty string.
func Canonical(v string) string {
p, ok := parse(v)
diff --git a/vendor/golang.org/x/net/context/context.go b/vendor/golang.org/x/net/context/context.go
index d3cb9517..24cea688 100644
--- a/vendor/golang.org/x/net/context/context.go
+++ b/vendor/golang.org/x/net/context/context.go
@@ -2,42 +2,9 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// Package context defines the Context type, which carries deadlines,
-// cancellation signals, and other request-scoped values across API boundaries
-// and between processes.
-// As of Go 1.7 this package is available in the standard library under the
-// name [context].
+// Package context has been superseded by the standard library [context] package.
//
-// Incoming requests to a server should create a [Context], and outgoing
-// calls to servers should accept a Context. The chain of function
-// calls between them must propagate the Context, optionally replacing
-// it with a derived Context created using [WithCancel], [WithDeadline],
-// [WithTimeout], or [WithValue].
-//
-// Programs that use Contexts should follow these rules to keep interfaces
-// consistent across packages and enable static analysis tools to check context
-// propagation:
-//
-// Do not store Contexts inside a struct type; instead, pass a Context
-// explicitly to each function that needs it. This is discussed further in
-// https://go.dev/blog/context-and-structs. The Context should be the first
-// parameter, typically named ctx:
-//
-// func DoSomething(ctx context.Context, arg Arg) error {
-// // ... use ctx ...
-// }
-//
-// Do not pass a nil [Context], even if a function permits it. Pass [context.TODO]
-// if you are unsure about which Context to use.
-//
-// Use context Values only for request-scoped data that transits processes and
-// APIs, not for passing optional parameters to functions.
-//
-// The same Context may be passed to functions running in different goroutines;
-// Contexts are safe for simultaneous use by multiple goroutines.
-//
-// See https://go.dev/blog/context for example code for a server that uses
-// Contexts.
+// Deprecated: Use the standard library context package instead.
package context
import (
diff --git a/vendor/golang.org/x/net/http2/frame.go b/vendor/golang.org/x/net/http2/frame.go
index 93bcaab0..9a4bd123 100644
--- a/vendor/golang.org/x/net/http2/frame.go
+++ b/vendor/golang.org/x/net/http2/frame.go
@@ -280,6 +280,8 @@ type Framer struct {
// lastHeaderStream is non-zero if the last frame was an
// unfinished HEADERS/CONTINUATION.
lastHeaderStream uint32
+ // lastFrameType holds the type of the last frame for verifying frame order.
+ lastFrameType FrameType
maxReadSize uint32
headerBuf [frameHeaderLen]byte
@@ -488,30 +490,41 @@ func terminalReadFrameError(err error) bool {
return err != nil
}
-// ReadFrame reads a single frame. The returned Frame is only valid
-// until the next call to ReadFrame.
+// ReadFrameHeader reads the header of the next frame.
+// It reads the 9-byte fixed frame header, and does not read any portion of the
+// frame payload. The caller is responsible for consuming the payload, either
+// with ReadFrameForHeader or directly from the Framer's io.Reader.
//
-// If the frame is larger than previously set with SetMaxReadFrameSize, the
-// returned error is ErrFrameTooLarge. Other errors may be of type
-// ConnectionError, StreamError, or anything else from the underlying
-// reader.
+// If the frame is larger than previously set with SetMaxReadFrameSize, it
+// returns the frame header and ErrFrameTooLarge.
//
-// If ReadFrame returns an error and a non-nil Frame, the Frame's StreamID
-// indicates the stream responsible for the error.
-func (fr *Framer) ReadFrame() (Frame, error) {
+// If the returned FrameHeader.StreamID is non-zero, it indicates the stream
+// responsible for the error.
+func (fr *Framer) ReadFrameHeader() (FrameHeader, error) {
fr.errDetail = nil
- if fr.lastFrame != nil {
- fr.lastFrame.invalidate()
- }
fh, err := readFrameHeader(fr.headerBuf[:], fr.r)
if err != nil {
- return nil, err
+ return fh, err
}
if fh.Length > fr.maxReadSize {
if fh == invalidHTTP1LookingFrameHeader() {
- return nil, fmt.Errorf("http2: failed reading the frame payload: %w, note that the frame header looked like an HTTP/1.1 header", ErrFrameTooLarge)
+ return fh, fmt.Errorf("http2: failed reading the frame payload: %w, note that the frame header looked like an HTTP/1.1 header", ErrFrameTooLarge)
}
- return nil, ErrFrameTooLarge
+ return fh, ErrFrameTooLarge
+ }
+ if err := fr.checkFrameOrder(fh); err != nil {
+ return fh, err
+ }
+ return fh, nil
+}
+
+// ReadFrameForHeader reads the payload for the frame with the given FrameHeader.
+//
+// It behaves identically to ReadFrame, other than not checking the maximum
+// frame size.
+func (fr *Framer) ReadFrameForHeader(fh FrameHeader) (Frame, error) {
+ if fr.lastFrame != nil {
+ fr.lastFrame.invalidate()
}
payload := fr.getReadBuf(fh.Length)
if _, err := io.ReadFull(fr.r, payload); err != nil {
@@ -527,9 +540,7 @@ func (fr *Framer) ReadFrame() (Frame, error) {
}
return nil, err
}
- if err := fr.checkFrameOrder(f); err != nil {
- return nil, err
- }
+ fr.lastFrame = f
if fr.logReads {
fr.debugReadLoggerf("http2: Framer %p: read %v", fr, summarizeFrame(f))
}
@@ -539,6 +550,24 @@ func (fr *Framer) ReadFrame() (Frame, error) {
return f, nil
}
+// ReadFrame reads a single frame. The returned Frame is only valid
+// until the next call to ReadFrame or ReadFrameBodyForHeader.
+//
+// If the frame is larger than previously set with SetMaxReadFrameSize, the
+// returned error is ErrFrameTooLarge. Other errors may be of type
+// ConnectionError, StreamError, or anything else from the underlying
+// reader.
+//
+// If ReadFrame returns an error and a non-nil Frame, the Frame's StreamID
+// indicates the stream responsible for the error.
+func (fr *Framer) ReadFrame() (Frame, error) {
+ fh, err := fr.ReadFrameHeader()
+ if err != nil {
+ return nil, err
+ }
+ return fr.ReadFrameForHeader(fh)
+}
+
// connError returns ConnectionError(code) but first
// stashes away a public reason to the caller can optionally relay it
// to the peer before hanging up on them. This might help others debug
@@ -551,20 +580,19 @@ func (fr *Framer) connError(code ErrCode, reason string) error {
// checkFrameOrder reports an error if f is an invalid frame to return
// next from ReadFrame. Mostly it checks whether HEADERS and
// CONTINUATION frames are contiguous.
-func (fr *Framer) checkFrameOrder(f Frame) error {
- last := fr.lastFrame
- fr.lastFrame = f
+func (fr *Framer) checkFrameOrder(fh FrameHeader) error {
+ lastType := fr.lastFrameType
+ fr.lastFrameType = fh.Type
if fr.AllowIllegalReads {
return nil
}
- fh := f.Header()
if fr.lastHeaderStream != 0 {
if fh.Type != FrameContinuation {
return fr.connError(ErrCodeProtocol,
fmt.Sprintf("got %s for stream %d; expected CONTINUATION following %s for stream %d",
fh.Type, fh.StreamID,
- last.Header().Type, fr.lastHeaderStream))
+ lastType, fr.lastHeaderStream))
}
if fh.StreamID != fr.lastHeaderStream {
return fr.connError(ErrCodeProtocol,
@@ -1161,7 +1189,7 @@ var defaultRFC9218Priority = PriorityParam{
// PriorityParam struct below is a superset of both schemes. The exported
// symbols are from RFC 7540 and the non-exported ones are from RFC 9218.
-// PriorityParam are the stream prioritzation parameters.
+// PriorityParam are the stream prioritization parameters.
type PriorityParam struct {
// StreamDep is a 31-bit stream identifier for the
// stream that this stream depends on. Zero means no
diff --git a/vendor/golang.org/x/net/http2/transport.go b/vendor/golang.org/x/net/http2/transport.go
index be759b60..1965913e 100644
--- a/vendor/golang.org/x/net/http2/transport.go
+++ b/vendor/golang.org/x/net/http2/transport.go
@@ -9,6 +9,7 @@ package http2
import (
"bufio"
"bytes"
+ "compress/flate"
"compress/gzip"
"context"
"crypto/rand"
@@ -3076,35 +3077,102 @@ type erringRoundTripper struct{ err error }
func (rt erringRoundTripper) RoundTripErr() error { return rt.err }
func (rt erringRoundTripper) RoundTrip(*http.Request) (*http.Response, error) { return nil, rt.err }
+var errConcurrentReadOnResBody = errors.New("http2: concurrent read on response body")
+
// gzipReader wraps a response body so it can lazily
-// call gzip.NewReader on the first call to Read
+// get gzip.Reader from the pool on the first call to Read.
+// After Close is called it puts gzip.Reader to the pool immediately
+// if there is no Read in progress or later when Read completes.
type gzipReader struct {
_ incomparable
body io.ReadCloser // underlying Response.Body
- zr *gzip.Reader // lazily-initialized gzip reader
- zerr error // sticky error
+ mu sync.Mutex // guards zr and zerr
+ zr *gzip.Reader // stores gzip reader from the pool between reads
+ zerr error // sticky gzip reader init error or sentinel value to detect concurrent read and read after close
+}
+
+type eofReader struct{}
+
+func (eofReader) Read([]byte) (int, error) { return 0, io.EOF }
+func (eofReader) ReadByte() (byte, error) { return 0, io.EOF }
+
+var gzipPool = sync.Pool{New: func() any { return new(gzip.Reader) }}
+
+// gzipPoolGet gets a gzip.Reader from the pool and resets it to read from r.
+func gzipPoolGet(r io.Reader) (*gzip.Reader, error) {
+ zr := gzipPool.Get().(*gzip.Reader)
+ if err := zr.Reset(r); err != nil {
+ gzipPoolPut(zr)
+ return nil, err
+ }
+ return zr, nil
+}
+
+// gzipPoolPut puts a gzip.Reader back into the pool.
+func gzipPoolPut(zr *gzip.Reader) {
+ // Reset will allocate bufio.Reader if we pass it anything
+ // other than a flate.Reader, so ensure that it's getting one.
+ var r flate.Reader = eofReader{}
+ zr.Reset(r)
+ gzipPool.Put(zr)
+}
+
+// acquire returns a gzip.Reader for reading response body.
+// The reader must be released after use.
+func (gz *gzipReader) acquire() (*gzip.Reader, error) {
+ gz.mu.Lock()
+ defer gz.mu.Unlock()
+ if gz.zerr != nil {
+ return nil, gz.zerr
+ }
+ if gz.zr == nil {
+ gz.zr, gz.zerr = gzipPoolGet(gz.body)
+ if gz.zerr != nil {
+ return nil, gz.zerr
+ }
+ }
+ ret := gz.zr
+ gz.zr, gz.zerr = nil, errConcurrentReadOnResBody
+ return ret, nil
+}
+
+// release returns the gzip.Reader to the pool if Close was called during Read.
+func (gz *gzipReader) release(zr *gzip.Reader) {
+ gz.mu.Lock()
+ defer gz.mu.Unlock()
+ if gz.zerr == errConcurrentReadOnResBody {
+ gz.zr, gz.zerr = zr, nil
+ } else { // fs.ErrClosed
+ gzipPoolPut(zr)
+ }
+}
+
+// close returns the gzip.Reader to the pool immediately or
+// signals release to do so after Read completes.
+func (gz *gzipReader) close() {
+ gz.mu.Lock()
+ defer gz.mu.Unlock()
+ if gz.zerr == nil && gz.zr != nil {
+ gzipPoolPut(gz.zr)
+ gz.zr = nil
+ }
+ gz.zerr = fs.ErrClosed
}
func (gz *gzipReader) Read(p []byte) (n int, err error) {
- if gz.zerr != nil {
- return 0, gz.zerr
+ zr, err := gz.acquire()
+ if err != nil {
+ return 0, err
}
- if gz.zr == nil {
- gz.zr, err = gzip.NewReader(gz.body)
- if err != nil {
- gz.zerr = err
- return 0, err
- }
- }
- return gz.zr.Read(p)
+ defer gz.release(zr)
+
+ return zr.Read(p)
}
func (gz *gzipReader) Close() error {
- if err := gz.body.Close(); err != nil {
- return err
- }
- gz.zerr = fs.ErrClosed
- return nil
+ gz.close()
+
+ return gz.body.Close()
}
type errorReader struct{ err error }
diff --git a/vendor/golang.org/x/net/http2/writesched.go b/vendor/golang.org/x/net/http2/writesched.go
index 4d3890f9..7de27be5 100644
--- a/vendor/golang.org/x/net/http2/writesched.go
+++ b/vendor/golang.org/x/net/http2/writesched.go
@@ -185,45 +185,75 @@ func (wr *FrameWriteRequest) replyToWriter(err error) {
}
// writeQueue is used by implementations of WriteScheduler.
+//
+// Each writeQueue contains a queue of FrameWriteRequests, meant to store all
+// FrameWriteRequests associated with a given stream. This is implemented as a
+// two-stage queue: currQueue[currPos:] and nextQueue. Removing an item is done
+// by incrementing currPos of currQueue. Adding an item is done by appending it
+// to the nextQueue. If currQueue is empty when trying to remove an item, we
+// can swap currQueue and nextQueue to remedy the situation.
+// This two-stage queue is analogous to the use of two lists in Okasaki's
+// purely functional queue but without the overhead of reversing the list when
+// swapping stages.
+//
+// writeQueue also contains prev and next, this can be used by implementations
+// of WriteScheduler to construct data structures that represent the order of
+// writing between different streams (e.g. circular linked list).
type writeQueue struct {
- s []FrameWriteRequest
+ currQueue []FrameWriteRequest
+ nextQueue []FrameWriteRequest
+ currPos int
+
prev, next *writeQueue
}
-func (q *writeQueue) empty() bool { return len(q.s) == 0 }
+func (q *writeQueue) empty() bool {
+ return (len(q.currQueue) - q.currPos + len(q.nextQueue)) == 0
+}
func (q *writeQueue) push(wr FrameWriteRequest) {
- q.s = append(q.s, wr)
+ q.nextQueue = append(q.nextQueue, wr)
}
func (q *writeQueue) shift() FrameWriteRequest {
- if len(q.s) == 0 {
+ if q.empty() {
panic("invalid use of queue")
}
- wr := q.s[0]
- // TODO: less copy-happy queue.
- copy(q.s, q.s[1:])
- q.s[len(q.s)-1] = FrameWriteRequest{}
- q.s = q.s[:len(q.s)-1]
+ if q.currPos >= len(q.currQueue) {
+ q.currQueue, q.currPos, q.nextQueue = q.nextQueue, 0, q.currQueue[:0]
+ }
+ wr := q.currQueue[q.currPos]
+ q.currQueue[q.currPos] = FrameWriteRequest{}
+ q.currPos++
return wr
}
+func (q *writeQueue) peek() *FrameWriteRequest {
+ if q.currPos < len(q.currQueue) {
+ return &q.currQueue[q.currPos]
+ }
+ if len(q.nextQueue) > 0 {
+ return &q.nextQueue[0]
+ }
+ return nil
+}
+
// consume consumes up to n bytes from q.s[0]. If the frame is
// entirely consumed, it is removed from the queue. If the frame
// is partially consumed, the frame is kept with the consumed
// bytes removed. Returns true iff any bytes were consumed.
func (q *writeQueue) consume(n int32) (FrameWriteRequest, bool) {
- if len(q.s) == 0 {
+ if q.empty() {
return FrameWriteRequest{}, false
}
- consumed, rest, numresult := q.s[0].Consume(n)
+ consumed, rest, numresult := q.peek().Consume(n)
switch numresult {
case 0:
return FrameWriteRequest{}, false
case 1:
q.shift()
case 2:
- q.s[0] = rest
+ *q.peek() = rest
}
return consumed, true
}
@@ -232,10 +262,15 @@ type writeQueuePool []*writeQueue
// put inserts an unused writeQueue into the pool.
func (p *writeQueuePool) put(q *writeQueue) {
- for i := range q.s {
- q.s[i] = FrameWriteRequest{}
+ for i := range q.currQueue {
+ q.currQueue[i] = FrameWriteRequest{}
}
- q.s = q.s[:0]
+ for i := range q.nextQueue {
+ q.nextQueue[i] = FrameWriteRequest{}
+ }
+ q.currQueue = q.currQueue[:0]
+ q.nextQueue = q.nextQueue[:0]
+ q.currPos = 0
*p = append(*p, q)
}
diff --git a/vendor/golang.org/x/net/http2/writesched_priority_rfc7540.go b/vendor/golang.org/x/net/http2/writesched_priority_rfc7540.go
index 6d24d6a1..4e33c29a 100644
--- a/vendor/golang.org/x/net/http2/writesched_priority_rfc7540.go
+++ b/vendor/golang.org/x/net/http2/writesched_priority_rfc7540.go
@@ -214,8 +214,8 @@ func (z sortPriorityNodeSiblingsRFC7540) Swap(i, k int) { z[i], z[k] = z[k], z[i
func (z sortPriorityNodeSiblingsRFC7540) Less(i, k int) bool {
// Prefer the subtree that has sent fewer bytes relative to its weight.
// See sections 5.3.2 and 5.3.4.
- wi, bi := float64(z[i].weight+1), float64(z[i].subtreeBytes)
- wk, bk := float64(z[k].weight+1), float64(z[k].subtreeBytes)
+ wi, bi := float64(z[i].weight)+1, float64(z[i].subtreeBytes)
+ wk, bk := float64(z[k].weight)+1, float64(z[k].subtreeBytes)
if bi == 0 && bk == 0 {
return wi >= wk
}
@@ -302,7 +302,6 @@ func (ws *priorityWriteSchedulerRFC7540) CloseStream(streamID uint32) {
q := n.q
ws.queuePool.put(&q)
- n.q.s = nil
if ws.maxClosedNodesInTree > 0 {
ws.addClosedOrIdleNode(&ws.closedNodes, ws.maxClosedNodesInTree, n)
} else {
diff --git a/vendor/golang.org/x/net/http2/writesched_priority_rfc9128.go b/vendor/golang.org/x/net/http2/writesched_priority_rfc9218.go
similarity index 99%
rename from vendor/golang.org/x/net/http2/writesched_priority_rfc9128.go
rename to vendor/golang.org/x/net/http2/writesched_priority_rfc9218.go
index 9b5b8808..cb4cadc3 100644
--- a/vendor/golang.org/x/net/http2/writesched_priority_rfc9128.go
+++ b/vendor/golang.org/x/net/http2/writesched_priority_rfc9218.go
@@ -39,7 +39,7 @@ type priorityWriteSchedulerRFC9218 struct {
prioritizeIncremental bool
}
-func newPriorityWriteSchedulerRFC9128() WriteScheduler {
+func newPriorityWriteSchedulerRFC9218() WriteScheduler {
ws := &priorityWriteSchedulerRFC9218{
streams: make(map[uint32]streamMetadata),
}
diff --git a/vendor/golang.org/x/net/publicsuffix/list.go b/vendor/golang.org/x/net/publicsuffix/list.go
index 047cb30e..7ab8b3cf 100644
--- a/vendor/golang.org/x/net/publicsuffix/list.go
+++ b/vendor/golang.org/x/net/publicsuffix/list.go
@@ -51,6 +51,7 @@ package publicsuffix // import "golang.org/x/net/publicsuffix"
import (
"fmt"
"net/http/cookiejar"
+ "net/netip"
"strings"
)
@@ -84,6 +85,10 @@ func (list) String() string {
// domains like "foo.appspot.com" can be found at
// https://wiki.mozilla.org/Public_Suffix_List/Use_Cases
func PublicSuffix(domain string) (publicSuffix string, icann bool) {
+ if _, err := netip.ParseAddr(domain); err == nil {
+ return domain, false
+ }
+
lo, hi := uint32(0), uint32(numTLD)
s, suffix, icannNode, wildcard := domain, len(domain), false, false
loop:
diff --git a/vendor/golang.org/x/oauth2/clientcredentials/clientcredentials.go b/vendor/golang.org/x/oauth2/clientcredentials/clientcredentials.go
index e86346e8..3ee122d1 100644
--- a/vendor/golang.org/x/oauth2/clientcredentials/clientcredentials.go
+++ b/vendor/golang.org/x/oauth2/clientcredentials/clientcredentials.go
@@ -3,7 +3,7 @@
// license that can be found in the LICENSE file.
// Package clientcredentials implements the OAuth2.0 "client credentials" token flow,
-// also known as the "two-legged OAuth 2.0".
+// also known as "two-legged OAuth 2.0".
//
// This should be used when the client is acting on its own behalf or when the client
// is the resource owner. It may also be used when requesting access to protected
diff --git a/vendor/golang.org/x/oauth2/deviceauth.go b/vendor/golang.org/x/oauth2/deviceauth.go
index e99c92f3..e783a943 100644
--- a/vendor/golang.org/x/oauth2/deviceauth.go
+++ b/vendor/golang.org/x/oauth2/deviceauth.go
@@ -6,6 +6,7 @@ import (
"errors"
"fmt"
"io"
+ "mime"
"net/http"
"net/url"
"strings"
@@ -116,10 +117,38 @@ func retrieveDeviceAuth(ctx context.Context, c *Config, v url.Values) (*DeviceAu
return nil, fmt.Errorf("oauth2: cannot auth device: %v", err)
}
if code := r.StatusCode; code < 200 || code > 299 {
- return nil, &RetrieveError{
+ retrieveError := &RetrieveError{
Response: r,
Body: body,
}
+
+ content, _, _ := mime.ParseMediaType(r.Header.Get("Content-Type"))
+ switch content {
+ case "application/x-www-form-urlencoded", "text/plain":
+ // some endpoints return a query string
+ vals, err := url.ParseQuery(string(body))
+ if err != nil {
+ return nil, retrieveError
+ }
+ retrieveError.ErrorCode = vals.Get("error")
+ retrieveError.ErrorDescription = vals.Get("error_description")
+ retrieveError.ErrorURI = vals.Get("error_uri")
+ default:
+ var tj struct {
+ // https://datatracker.ietf.org/doc/html/rfc6749#section-5.2
+ ErrorCode string `json:"error"`
+ ErrorDescription string `json:"error_description"`
+ ErrorURI string `json:"error_uri"`
+ }
+ if json.Unmarshal(body, &tj) != nil {
+ return nil, retrieveError
+ }
+ retrieveError.ErrorCode = tj.ErrorCode
+ retrieveError.ErrorDescription = tj.ErrorDescription
+ retrieveError.ErrorURI = tj.ErrorURI
+ }
+
+ return nil, retrieveError
}
da := &DeviceAuthResponse{}
diff --git a/vendor/golang.org/x/oauth2/google/google.go b/vendor/golang.org/x/oauth2/google/google.go
index e2eb9c92..7d1fdd31 100644
--- a/vendor/golang.org/x/oauth2/google/google.go
+++ b/vendor/golang.org/x/oauth2/google/google.go
@@ -252,7 +252,7 @@ func (f *credentialsFile) tokenSource(ctx context.Context, params CredentialsPar
// Further information about retrieving access tokens from the GCE metadata
// server can be found at https://cloud.google.com/compute/docs/authentication.
func ComputeTokenSource(account string, scope ...string) oauth2.TokenSource {
- // refresh 3 minutes and 45 seconds early. The shortest MDS cache is currently 4 minutes, so any
+ // Refresh 3 minutes and 45 seconds early. The shortest MDS cache is currently 4 minutes, so any
// refreshes earlier are a waste of compute.
earlyExpirySecs := 225 * time.Second
return computeTokenSource(account, earlyExpirySecs, scope...)
diff --git a/vendor/golang.org/x/oauth2/oauth2.go b/vendor/golang.org/x/oauth2/oauth2.go
index 3e3b6306..5c527d31 100644
--- a/vendor/golang.org/x/oauth2/oauth2.go
+++ b/vendor/golang.org/x/oauth2/oauth2.go
@@ -98,7 +98,7 @@ const (
// in the POST body as application/x-www-form-urlencoded parameters.
AuthStyleInParams AuthStyle = 1
- // AuthStyleInHeader sends the client_id and client_password
+ // AuthStyleInHeader sends the client_id and client_secret
// using HTTP Basic Authorization. This is an optional style
// described in the OAuth2 RFC 6749 section 2.3.1.
AuthStyleInHeader AuthStyle = 2
diff --git a/vendor/golang.org/x/oauth2/pkce.go b/vendor/golang.org/x/oauth2/pkce.go
index cea8374d..f99384f0 100644
--- a/vendor/golang.org/x/oauth2/pkce.go
+++ b/vendor/golang.org/x/oauth2/pkce.go
@@ -51,7 +51,7 @@ func S256ChallengeFromVerifier(verifier string) string {
return base64.RawURLEncoding.EncodeToString(sha[:])
}
-// S256ChallengeOption derives a PKCE code challenge derived from verifier with
+// S256ChallengeOption derives a PKCE code challenge from the verifier with
// method S256. It should be passed to [Config.AuthCodeURL] or [Config.DeviceAuth]
// only.
func S256ChallengeOption(verifier string) AuthCodeOption {
diff --git a/vendor/golang.org/x/oauth2/token.go b/vendor/golang.org/x/oauth2/token.go
index 239ec329..e995eebb 100644
--- a/vendor/golang.org/x/oauth2/token.go
+++ b/vendor/golang.org/x/oauth2/token.go
@@ -103,7 +103,7 @@ func (t *Token) WithExtra(extra any) *Token {
}
// Extra returns an extra field.
-// Extra fields are key-value pairs returned by the server as a
+// Extra fields are key-value pairs returned by the server as
// part of the token retrieval response.
func (t *Token) Extra(key string) any {
if raw, ok := t.raw.(map[string]any); ok {
diff --git a/vendor/golang.org/x/oauth2/transport.go b/vendor/golang.org/x/oauth2/transport.go
index 8bbebbac..9922ec33 100644
--- a/vendor/golang.org/x/oauth2/transport.go
+++ b/vendor/golang.org/x/oauth2/transport.go
@@ -58,7 +58,7 @@ func (t *Transport) RoundTrip(req *http.Request) (*http.Response, error) {
var cancelOnce sync.Once
// CancelRequest does nothing. It used to be a legacy cancellation mechanism
-// but now only it only logs on first use to warn that it's deprecated.
+// but now only logs on first use to warn that it's deprecated.
//
// Deprecated: use contexts for cancellation instead.
func (t *Transport) CancelRequest(req *http.Request) {
diff --git a/vendor/golang.org/x/sync/errgroup/errgroup.go b/vendor/golang.org/x/sync/errgroup/errgroup.go
index 1d8cffae..2f45dbc8 100644
--- a/vendor/golang.org/x/sync/errgroup/errgroup.go
+++ b/vendor/golang.org/x/sync/errgroup/errgroup.go
@@ -3,7 +3,7 @@
// license that can be found in the LICENSE file.
// Package errgroup provides synchronization, error propagation, and Context
-// cancelation for groups of goroutines working on subtasks of a common task.
+// cancellation for groups of goroutines working on subtasks of a common task.
//
// [errgroup.Group] is related to [sync.WaitGroup] but adds handling of tasks
// returning errors.
diff --git a/vendor/golang.org/x/sys/cpu/cpu.go b/vendor/golang.org/x/sys/cpu/cpu.go
index 63541994..34c9ae76 100644
--- a/vendor/golang.org/x/sys/cpu/cpu.go
+++ b/vendor/golang.org/x/sys/cpu/cpu.go
@@ -92,6 +92,9 @@ var ARM64 struct {
HasSHA2 bool // SHA2 hardware implementation
HasCRC32 bool // CRC32 hardware implementation
HasATOMICS bool // Atomic memory operation instruction set
+ HasHPDS bool // Hierarchical permission disables in translations tables
+ HasLOR bool // Limited ordering regions
+ HasPAN bool // Privileged access never
HasFPHP bool // Half precision floating-point instruction set
HasASIMDHP bool // Advanced SIMD half precision instruction set
HasCPUID bool // CPUID identification scheme registers
diff --git a/vendor/golang.org/x/sys/cpu/cpu_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_arm64.go
index af2aa99f..f449c679 100644
--- a/vendor/golang.org/x/sys/cpu/cpu_arm64.go
+++ b/vendor/golang.org/x/sys/cpu/cpu_arm64.go
@@ -65,10 +65,10 @@ func setMinimalFeatures() {
func readARM64Registers() {
Initialized = true
- parseARM64SystemRegisters(getisar0(), getisar1(), getpfr0())
+ parseARM64SystemRegisters(getisar0(), getisar1(), getmmfr1(), getpfr0())
}
-func parseARM64SystemRegisters(isar0, isar1, pfr0 uint64) {
+func parseARM64SystemRegisters(isar0, isar1, mmfr1, pfr0 uint64) {
// ID_AA64ISAR0_EL1
switch extractBits(isar0, 4, 7) {
case 1:
@@ -152,6 +152,22 @@ func parseARM64SystemRegisters(isar0, isar1, pfr0 uint64) {
ARM64.HasI8MM = true
}
+ // ID_AA64MMFR1_EL1
+ switch extractBits(mmfr1, 12, 15) {
+ case 1, 2:
+ ARM64.HasHPDS = true
+ }
+
+ switch extractBits(mmfr1, 16, 19) {
+ case 1:
+ ARM64.HasLOR = true
+ }
+
+ switch extractBits(mmfr1, 20, 23) {
+ case 1, 2, 3:
+ ARM64.HasPAN = true
+ }
+
// ID_AA64PFR0_EL1
switch extractBits(pfr0, 16, 19) {
case 0:
diff --git a/vendor/golang.org/x/sys/cpu/cpu_arm64.s b/vendor/golang.org/x/sys/cpu/cpu_arm64.s
index 22cc9984..a4f24b3b 100644
--- a/vendor/golang.org/x/sys/cpu/cpu_arm64.s
+++ b/vendor/golang.org/x/sys/cpu/cpu_arm64.s
@@ -9,31 +9,34 @@
// func getisar0() uint64
TEXT ·getisar0(SB),NOSPLIT,$0-8
// get Instruction Set Attributes 0 into x0
- // mrs x0, ID_AA64ISAR0_EL1 = d5380600
- WORD $0xd5380600
+ MRS ID_AA64ISAR0_EL1, R0
MOVD R0, ret+0(FP)
RET
// func getisar1() uint64
TEXT ·getisar1(SB),NOSPLIT,$0-8
// get Instruction Set Attributes 1 into x0
- // mrs x0, ID_AA64ISAR1_EL1 = d5380620
- WORD $0xd5380620
+ MRS ID_AA64ISAR1_EL1, R0
+ MOVD R0, ret+0(FP)
+ RET
+
+// func getmmfr1() uint64
+TEXT ·getmmfr1(SB),NOSPLIT,$0-8
+ // get Memory Model Feature Register 1 into x0
+ MRS ID_AA64MMFR1_EL1, R0
MOVD R0, ret+0(FP)
RET
// func getpfr0() uint64
TEXT ·getpfr0(SB),NOSPLIT,$0-8
// get Processor Feature Register 0 into x0
- // mrs x0, ID_AA64PFR0_EL1 = d5380400
- WORD $0xd5380400
+ MRS ID_AA64PFR0_EL1, R0
MOVD R0, ret+0(FP)
RET
// func getzfr0() uint64
TEXT ·getzfr0(SB),NOSPLIT,$0-8
// get SVE Feature Register 0 into x0
- // mrs x0, ID_AA64ZFR0_EL1 = d5380480
- WORD $0xd5380480
+ MRS ID_AA64ZFR0_EL1, R0
MOVD R0, ret+0(FP)
RET
diff --git a/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go
index 6ac6e1ef..e3fc5a8d 100644
--- a/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go
+++ b/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go
@@ -8,5 +8,6 @@ package cpu
func getisar0() uint64
func getisar1() uint64
+func getmmfr1() uint64
func getpfr0() uint64
func getzfr0() uint64
diff --git a/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go
index 7f194678..8df2079e 100644
--- a/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go
+++ b/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go
@@ -8,4 +8,5 @@ package cpu
func getisar0() uint64 { return 0 }
func getisar1() uint64 { return 0 }
+func getmmfr1() uint64 { return 0 }
func getpfr0() uint64 { return 0 }
diff --git a/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go
index ebfb3fc8..19aea063 100644
--- a/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go
+++ b/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go
@@ -167,7 +167,7 @@ func doinit() {
setMinimalFeatures()
return
}
- parseARM64SystemRegisters(cpuid.aa64isar0, cpuid.aa64isar1, cpuid.aa64pfr0)
+ parseARM64SystemRegisters(cpuid.aa64isar0, cpuid.aa64isar1, cpuid.aa64mmfr1, cpuid.aa64pfr0)
Initialized = true
}
diff --git a/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.go
index 85b64d5c..87fd3a77 100644
--- a/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.go
+++ b/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.go
@@ -59,7 +59,7 @@ func doinit() {
if !ok {
return
}
- parseARM64SystemRegisters(isar0, isar1, 0)
+ parseARM64SystemRegisters(isar0, isar1, 0, 0)
Initialized = true
}
diff --git a/vendor/golang.org/x/sys/unix/mkerrors.sh b/vendor/golang.org/x/sys/unix/mkerrors.sh
index d1c8b264..42517077 100644
--- a/vendor/golang.org/x/sys/unix/mkerrors.sh
+++ b/vendor/golang.org/x/sys/unix/mkerrors.sh
@@ -226,6 +226,7 @@ struct ltchars {
#include
#include
#include
+#include
#include
#include
#include
@@ -529,6 +530,7 @@ ccflags="$@"
$2 ~ /^O[CNPFPL][A-Z]+[^_][A-Z]+$/ ||
$2 ~ /^(NL|CR|TAB|BS|VT|FF)DLY$/ ||
$2 ~ /^(NL|CR|TAB|BS|VT|FF)[0-9]$/ ||
+ $2 ~ /^(DT|EI|ELF|EV|NN|NT|PF|SHF|SHN|SHT|STB|STT|VER)_/ ||
$2 ~ /^O?XTABS$/ ||
$2 ~ /^TC[IO](ON|OFF)$/ ||
$2 ~ /^IN_/ ||
diff --git a/vendor/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go
index 9439af96..06c0eea6 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux.go
@@ -2643,3 +2643,9 @@ func SchedGetAttr(pid int, flags uint) (*SchedAttr, error) {
//sys Cachestat(fd uint, crange *CachestatRange, cstat *Cachestat_t, flags uint) (err error)
//sys Mseal(b []byte, flags uint) (err error)
+
+//sys setMemPolicy(mode int, mask *CPUSet, size int) (err error) = SYS_SET_MEMPOLICY
+
+func SetMemPolicy(mode int, mask *CPUSet) error {
+ return setMemPolicy(mode, mask, _CPU_SETSIZE)
+}
diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go
index b6db27d9..d0a75da5 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go
@@ -853,20 +853,86 @@ const (
DM_VERSION_MAJOR = 0x4
DM_VERSION_MINOR = 0x32
DM_VERSION_PATCHLEVEL = 0x0
+ DT_ADDRRNGHI = 0x6ffffeff
+ DT_ADDRRNGLO = 0x6ffffe00
DT_BLK = 0x6
DT_CHR = 0x2
+ DT_DEBUG = 0x15
DT_DIR = 0x4
+ DT_ENCODING = 0x20
DT_FIFO = 0x1
+ DT_FINI = 0xd
+ DT_FLAGS_1 = 0x6ffffffb
+ DT_GNU_HASH = 0x6ffffef5
+ DT_HASH = 0x4
+ DT_HIOS = 0x6ffff000
+ DT_HIPROC = 0x7fffffff
+ DT_INIT = 0xc
+ DT_JMPREL = 0x17
DT_LNK = 0xa
+ DT_LOOS = 0x6000000d
+ DT_LOPROC = 0x70000000
+ DT_NEEDED = 0x1
+ DT_NULL = 0x0
+ DT_PLTGOT = 0x3
+ DT_PLTREL = 0x14
+ DT_PLTRELSZ = 0x2
DT_REG = 0x8
+ DT_REL = 0x11
+ DT_RELA = 0x7
+ DT_RELACOUNT = 0x6ffffff9
+ DT_RELAENT = 0x9
+ DT_RELASZ = 0x8
+ DT_RELCOUNT = 0x6ffffffa
+ DT_RELENT = 0x13
+ DT_RELSZ = 0x12
+ DT_RPATH = 0xf
DT_SOCK = 0xc
+ DT_SONAME = 0xe
+ DT_STRSZ = 0xa
+ DT_STRTAB = 0x5
+ DT_SYMBOLIC = 0x10
+ DT_SYMENT = 0xb
+ DT_SYMTAB = 0x6
+ DT_TEXTREL = 0x16
DT_UNKNOWN = 0x0
+ DT_VALRNGHI = 0x6ffffdff
+ DT_VALRNGLO = 0x6ffffd00
+ DT_VERDEF = 0x6ffffffc
+ DT_VERDEFNUM = 0x6ffffffd
+ DT_VERNEED = 0x6ffffffe
+ DT_VERNEEDNUM = 0x6fffffff
+ DT_VERSYM = 0x6ffffff0
DT_WHT = 0xe
ECHO = 0x8
ECRYPTFS_SUPER_MAGIC = 0xf15f
EFD_SEMAPHORE = 0x1
EFIVARFS_MAGIC = 0xde5e81e4
EFS_SUPER_MAGIC = 0x414a53
+ EI_CLASS = 0x4
+ EI_DATA = 0x5
+ EI_MAG0 = 0x0
+ EI_MAG1 = 0x1
+ EI_MAG2 = 0x2
+ EI_MAG3 = 0x3
+ EI_NIDENT = 0x10
+ EI_OSABI = 0x7
+ EI_PAD = 0x8
+ EI_VERSION = 0x6
+ ELFCLASS32 = 0x1
+ ELFCLASS64 = 0x2
+ ELFCLASSNONE = 0x0
+ ELFCLASSNUM = 0x3
+ ELFDATA2LSB = 0x1
+ ELFDATA2MSB = 0x2
+ ELFDATANONE = 0x0
+ ELFMAG = "\177ELF"
+ ELFMAG0 = 0x7f
+ ELFMAG1 = 'E'
+ ELFMAG2 = 'L'
+ ELFMAG3 = 'F'
+ ELFOSABI_LINUX = 0x3
+ ELFOSABI_NONE = 0x0
EM_386 = 0x3
EM_486 = 0x6
EM_68K = 0x4
@@ -1152,14 +1218,24 @@ const (
ETH_P_WCCP = 0x883e
ETH_P_X25 = 0x805
ETH_P_XDSA = 0xf8
+ ET_CORE = 0x4
+ ET_DYN = 0x3
+ ET_EXEC = 0x2
+ ET_HIPROC = 0xffff
+ ET_LOPROC = 0xff00
+ ET_NONE = 0x0
+ ET_REL = 0x1
EV_ABS = 0x3
EV_CNT = 0x20
+ EV_CURRENT = 0x1
EV_FF = 0x15
EV_FF_STATUS = 0x17
EV_KEY = 0x1
EV_LED = 0x11
EV_MAX = 0x1f
EV_MSC = 0x4
+ EV_NONE = 0x0
+ EV_NUM = 0x2
EV_PWR = 0x16
EV_REL = 0x2
EV_REP = 0x14
@@ -2276,7 +2352,167 @@ const (
NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100
+ NN_386_IOPERM = "LINUX"
+ NN_386_TLS = "LINUX"
+ NN_ARC_V2 = "LINUX"
+ NN_ARM_FPMR = "LINUX"
+ NN_ARM_GCS = "LINUX"
+ NN_ARM_HW_BREAK = "LINUX"
+ NN_ARM_HW_WATCH = "LINUX"
+ NN_ARM_PACA_KEYS = "LINUX"
+ NN_ARM_PACG_KEYS = "LINUX"
+ NN_ARM_PAC_ENABLED_KEYS = "LINUX"
+ NN_ARM_PAC_MASK = "LINUX"
+ NN_ARM_POE = "LINUX"
+ NN_ARM_SSVE = "LINUX"
+ NN_ARM_SVE = "LINUX"
+ NN_ARM_SYSTEM_CALL = "LINUX"
+ NN_ARM_TAGGED_ADDR_CTRL = "LINUX"
+ NN_ARM_TLS = "LINUX"
+ NN_ARM_VFP = "LINUX"
+ NN_ARM_ZA = "LINUX"
+ NN_ARM_ZT = "LINUX"
+ NN_AUXV = "CORE"
+ NN_FILE = "CORE"
+ NN_GNU_PROPERTY_TYPE_0 = "GNU"
+ NN_LOONGARCH_CPUCFG = "LINUX"
+ NN_LOONGARCH_CSR = "LINUX"
+ NN_LOONGARCH_HW_BREAK = "LINUX"
+ NN_LOONGARCH_HW_WATCH = "LINUX"
+ NN_LOONGARCH_LASX = "LINUX"
+ NN_LOONGARCH_LBT = "LINUX"
+ NN_LOONGARCH_LSX = "LINUX"
+ NN_MIPS_DSP = "LINUX"
+ NN_MIPS_FP_MODE = "LINUX"
+ NN_MIPS_MSA = "LINUX"
+ NN_PPC_DEXCR = "LINUX"
+ NN_PPC_DSCR = "LINUX"
+ NN_PPC_EBB = "LINUX"
+ NN_PPC_HASHKEYR = "LINUX"
+ NN_PPC_PKEY = "LINUX"
+ NN_PPC_PMU = "LINUX"
+ NN_PPC_PPR = "LINUX"
+ NN_PPC_SPE = "LINUX"
+ NN_PPC_TAR = "LINUX"
+ NN_PPC_TM_CDSCR = "LINUX"
+ NN_PPC_TM_CFPR = "LINUX"
+ NN_PPC_TM_CGPR = "LINUX"
+ NN_PPC_TM_CPPR = "LINUX"
+ NN_PPC_TM_CTAR = "LINUX"
+ NN_PPC_TM_CVMX = "LINUX"
+ NN_PPC_TM_CVSX = "LINUX"
+ NN_PPC_TM_SPR = "LINUX"
+ NN_PPC_VMX = "LINUX"
+ NN_PPC_VSX = "LINUX"
+ NN_PRFPREG = "CORE"
+ NN_PRPSINFO = "CORE"
+ NN_PRSTATUS = "CORE"
+ NN_PRXFPREG = "LINUX"
+ NN_RISCV_CSR = "LINUX"
+ NN_RISCV_TAGGED_ADDR_CTRL = "LINUX"
+ NN_RISCV_VECTOR = "LINUX"
+ NN_S390_CTRS = "LINUX"
+ NN_S390_GS_BC = "LINUX"
+ NN_S390_GS_CB = "LINUX"
+ NN_S390_HIGH_GPRS = "LINUX"
+ NN_S390_LAST_BREAK = "LINUX"
+ NN_S390_PREFIX = "LINUX"
+ NN_S390_PV_CPU_DATA = "LINUX"
+ NN_S390_RI_CB = "LINUX"
+ NN_S390_SYSTEM_CALL = "LINUX"
+ NN_S390_TDB = "LINUX"
+ NN_S390_TIMER = "LINUX"
+ NN_S390_TODCMP = "LINUX"
+ NN_S390_TODPREG = "LINUX"
+ NN_S390_VXRS_HIGH = "LINUX"
+ NN_S390_VXRS_LOW = "LINUX"
+ NN_SIGINFO = "CORE"
+ NN_TASKSTRUCT = "CORE"
+ NN_VMCOREDD = "LINUX"
+ NN_X86_SHSTK = "LINUX"
+ NN_X86_XSAVE_LAYOUT = "LINUX"
+ NN_X86_XSTATE = "LINUX"
NSFS_MAGIC = 0x6e736673
+ NT_386_IOPERM = 0x201
+ NT_386_TLS = 0x200
+ NT_ARC_V2 = 0x600
+ NT_ARM_FPMR = 0x40e
+ NT_ARM_GCS = 0x410
+ NT_ARM_HW_BREAK = 0x402
+ NT_ARM_HW_WATCH = 0x403
+ NT_ARM_PACA_KEYS = 0x407
+ NT_ARM_PACG_KEYS = 0x408
+ NT_ARM_PAC_ENABLED_KEYS = 0x40a
+ NT_ARM_PAC_MASK = 0x406
+ NT_ARM_POE = 0x40f
+ NT_ARM_SSVE = 0x40b
+ NT_ARM_SVE = 0x405
+ NT_ARM_SYSTEM_CALL = 0x404
+ NT_ARM_TAGGED_ADDR_CTRL = 0x409
+ NT_ARM_TLS = 0x401
+ NT_ARM_VFP = 0x400
+ NT_ARM_ZA = 0x40c
+ NT_ARM_ZT = 0x40d
+ NT_AUXV = 0x6
+ NT_FILE = 0x46494c45
+ NT_GNU_PROPERTY_TYPE_0 = 0x5
+ NT_LOONGARCH_CPUCFG = 0xa00
+ NT_LOONGARCH_CSR = 0xa01
+ NT_LOONGARCH_HW_BREAK = 0xa05
+ NT_LOONGARCH_HW_WATCH = 0xa06
+ NT_LOONGARCH_LASX = 0xa03
+ NT_LOONGARCH_LBT = 0xa04
+ NT_LOONGARCH_LSX = 0xa02
+ NT_MIPS_DSP = 0x800
+ NT_MIPS_FP_MODE = 0x801
+ NT_MIPS_MSA = 0x802
+ NT_PPC_DEXCR = 0x111
+ NT_PPC_DSCR = 0x105
+ NT_PPC_EBB = 0x106
+ NT_PPC_HASHKEYR = 0x112
+ NT_PPC_PKEY = 0x110
+ NT_PPC_PMU = 0x107
+ NT_PPC_PPR = 0x104
+ NT_PPC_SPE = 0x101
+ NT_PPC_TAR = 0x103
+ NT_PPC_TM_CDSCR = 0x10f
+ NT_PPC_TM_CFPR = 0x109
+ NT_PPC_TM_CGPR = 0x108
+ NT_PPC_TM_CPPR = 0x10e
+ NT_PPC_TM_CTAR = 0x10d
+ NT_PPC_TM_CVMX = 0x10a
+ NT_PPC_TM_CVSX = 0x10b
+ NT_PPC_TM_SPR = 0x10c
+ NT_PPC_VMX = 0x100
+ NT_PPC_VSX = 0x102
+ NT_PRFPREG = 0x2
+ NT_PRPSINFO = 0x3
+ NT_PRSTATUS = 0x1
+ NT_PRXFPREG = 0x46e62b7f
+ NT_RISCV_CSR = 0x900
+ NT_RISCV_TAGGED_ADDR_CTRL = 0x902
+ NT_RISCV_VECTOR = 0x901
+ NT_S390_CTRS = 0x304
+ NT_S390_GS_BC = 0x30c
+ NT_S390_GS_CB = 0x30b
+ NT_S390_HIGH_GPRS = 0x300
+ NT_S390_LAST_BREAK = 0x306
+ NT_S390_PREFIX = 0x305
+ NT_S390_PV_CPU_DATA = 0x30e
+ NT_S390_RI_CB = 0x30d
+ NT_S390_SYSTEM_CALL = 0x307
+ NT_S390_TDB = 0x308
+ NT_S390_TIMER = 0x301
+ NT_S390_TODCMP = 0x302
+ NT_S390_TODPREG = 0x303
+ NT_S390_VXRS_HIGH = 0x30a
+ NT_S390_VXRS_LOW = 0x309
+ NT_SIGINFO = 0x53494749
+ NT_TASKSTRUCT = 0x4
+ NT_VMCOREDD = 0x700
+ NT_X86_SHSTK = 0x204
+ NT_X86_XSAVE_LAYOUT = 0x205
+ NT_X86_XSTATE = 0x202
OCFS2_SUPER_MAGIC = 0x7461636f
OCRNL = 0x8
OFDEL = 0x80
@@ -2463,6 +2699,59 @@ const (
PERF_RECORD_MISC_USER = 0x2
PERF_SAMPLE_BRANCH_PLM_ALL = 0x7
PERF_SAMPLE_WEIGHT_TYPE = 0x1004000
+ PF_ALG = 0x26
+ PF_APPLETALK = 0x5
+ PF_ASH = 0x12
+ PF_ATMPVC = 0x8
+ PF_ATMSVC = 0x14
+ PF_AX25 = 0x3
+ PF_BLUETOOTH = 0x1f
+ PF_BRIDGE = 0x7
+ PF_CAIF = 0x25
+ PF_CAN = 0x1d
+ PF_DECnet = 0xc
+ PF_ECONET = 0x13
+ PF_FILE = 0x1
+ PF_IB = 0x1b
+ PF_IEEE802154 = 0x24
+ PF_INET = 0x2
+ PF_INET6 = 0xa
+ PF_IPX = 0x4
+ PF_IRDA = 0x17
+ PF_ISDN = 0x22
+ PF_IUCV = 0x20
+ PF_KCM = 0x29
+ PF_KEY = 0xf
+ PF_LLC = 0x1a
+ PF_LOCAL = 0x1
+ PF_MAX = 0x2e
+ PF_MCTP = 0x2d
+ PF_MPLS = 0x1c
+ PF_NETBEUI = 0xd
+ PF_NETLINK = 0x10
+ PF_NETROM = 0x6
+ PF_NFC = 0x27
+ PF_PACKET = 0x11
+ PF_PHONET = 0x23
+ PF_PPPOX = 0x18
+ PF_QIPCRTR = 0x2a
+ PF_R = 0x4
+ PF_RDS = 0x15
+ PF_ROSE = 0xb
+ PF_ROUTE = 0x10
+ PF_RXRPC = 0x21
+ PF_SECURITY = 0xe
+ PF_SMC = 0x2b
+ PF_SNA = 0x16
+ PF_TIPC = 0x1e
+ PF_UNIX = 0x1
+ PF_UNSPEC = 0x0
+ PF_VSOCK = 0x28
+ PF_W = 0x2
+ PF_WANPIPE = 0x19
+ PF_X = 0x1
+ PF_X25 = 0x9
+ PF_XDP = 0x2c
PID_FS_MAGIC = 0x50494446
PIPEFS_MAGIC = 0x50495045
PPPIOCGNPMODE = 0xc008744c
@@ -2758,6 +3047,23 @@ const (
PTRACE_SYSCALL_INFO_NONE = 0x0
PTRACE_SYSCALL_INFO_SECCOMP = 0x3
PTRACE_TRACEME = 0x0
+ PT_AARCH64_MEMTAG_MTE = 0x70000002
+ PT_DYNAMIC = 0x2
+ PT_GNU_EH_FRAME = 0x6474e550
+ PT_GNU_PROPERTY = 0x6474e553
+ PT_GNU_RELRO = 0x6474e552
+ PT_GNU_STACK = 0x6474e551
+ PT_HIOS = 0x6fffffff
+ PT_HIPROC = 0x7fffffff
+ PT_INTERP = 0x3
+ PT_LOAD = 0x1
+ PT_LOOS = 0x60000000
+ PT_LOPROC = 0x70000000
+ PT_NOTE = 0x4
+ PT_NULL = 0x0
+ PT_PHDR = 0x6
+ PT_SHLIB = 0x5
+ PT_TLS = 0x7
P_ALL = 0x0
P_PGID = 0x2
P_PID = 0x1
@@ -3091,6 +3397,47 @@ const (
SEEK_MAX = 0x4
SEEK_SET = 0x0
SELINUX_MAGIC = 0xf97cff8c
+ SHF_ALLOC = 0x2
+ SHF_EXCLUDE = 0x8000000
+ SHF_EXECINSTR = 0x4
+ SHF_GROUP = 0x200
+ SHF_INFO_LINK = 0x40
+ SHF_LINK_ORDER = 0x80
+ SHF_MASKOS = 0xff00000
+ SHF_MASKPROC = 0xf0000000
+ SHF_MERGE = 0x10
+ SHF_ORDERED = 0x4000000
+ SHF_OS_NONCONFORMING = 0x100
+ SHF_RELA_LIVEPATCH = 0x100000
+ SHF_RO_AFTER_INIT = 0x200000
+ SHF_STRINGS = 0x20
+ SHF_TLS = 0x400
+ SHF_WRITE = 0x1
+ SHN_ABS = 0xfff1
+ SHN_COMMON = 0xfff2
+ SHN_HIPROC = 0xff1f
+ SHN_HIRESERVE = 0xffff
+ SHN_LIVEPATCH = 0xff20
+ SHN_LOPROC = 0xff00
+ SHN_LORESERVE = 0xff00
+ SHN_UNDEF = 0x0
+ SHT_DYNAMIC = 0x6
+ SHT_DYNSYM = 0xb
+ SHT_HASH = 0x5
+ SHT_HIPROC = 0x7fffffff
+ SHT_HIUSER = 0xffffffff
+ SHT_LOPROC = 0x70000000
+ SHT_LOUSER = 0x80000000
+ SHT_NOBITS = 0x8
+ SHT_NOTE = 0x7
+ SHT_NULL = 0x0
+ SHT_NUM = 0xc
+ SHT_PROGBITS = 0x1
+ SHT_REL = 0x9
+ SHT_RELA = 0x4
+ SHT_SHLIB = 0xa
+ SHT_STRTAB = 0x3
+ SHT_SYMTAB = 0x2
SHUT_RD = 0x0
SHUT_RDWR = 0x2
SHUT_WR = 0x1
@@ -3317,6 +3664,16 @@ const (
STATX_UID = 0x8
STATX_WRITE_ATOMIC = 0x10000
STATX__RESERVED = 0x80000000
+ STB_GLOBAL = 0x1
+ STB_LOCAL = 0x0
+ STB_WEAK = 0x2
+ STT_COMMON = 0x5
+ STT_FILE = 0x4
+ STT_FUNC = 0x2
+ STT_NOTYPE = 0x0
+ STT_OBJECT = 0x1
+ STT_SECTION = 0x3
+ STT_TLS = 0x6
SYNC_FILE_RANGE_WAIT_AFTER = 0x4
SYNC_FILE_RANGE_WAIT_BEFORE = 0x1
SYNC_FILE_RANGE_WRITE = 0x2
@@ -3553,6 +3910,8 @@ const (
UTIME_OMIT = 0x3ffffffe
V9FS_MAGIC = 0x1021997
VERASE = 0x2
+ VER_FLG_BASE = 0x1
+ VER_FLG_WEAK = 0x2
VINTR = 0x0
VKILL = 0x3
VLNEXT = 0xf
diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux.go b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
index 5cc1e8eb..8935d10a 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
@@ -2238,3 +2238,13 @@ func Mseal(b []byte, flags uint) (err error) {
}
return
}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func setMemPolicy(mode int, mask *CPUSet, size int) (err error) {
+ _, _, e1 := Syscall(SYS_SET_MEMPOLICY, uintptr(mode), uintptr(unsafe.Pointer(mask)), uintptr(size))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+}
diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go
index 944e75a1..c1a46701 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go
@@ -3590,6 +3590,8 @@ type Nhmsg struct {
Flags uint32
}
+const SizeofNhmsg = 0x8
+
type NexthopGrp struct {
Id uint32
Weight uint8
@@ -3597,6 +3599,8 @@ type NexthopGrp struct {
Resvd2 uint16
}
+const SizeofNexthopGrp = 0x8
+
const (
NHA_UNSPEC = 0x0
NHA_ID = 0x1
@@ -6332,3 +6336,30 @@ type SockDiagReq struct {
}
const RTM_NEWNVLAN = 0x70
+
+const (
+ MPOL_BIND = 0x2
+ MPOL_DEFAULT = 0x0
+ MPOL_F_ADDR = 0x2
+ MPOL_F_MEMS_ALLOWED = 0x4
+ MPOL_F_MOF = 0x8
+ MPOL_F_MORON = 0x10
+ MPOL_F_NODE = 0x1
+ MPOL_F_NUMA_BALANCING = 0x2000
+ MPOL_F_RELATIVE_NODES = 0x4000
+ MPOL_F_SHARED = 0x1
+ MPOL_F_STATIC_NODES = 0x8000
+ MPOL_INTERLEAVE = 0x3
+ MPOL_LOCAL = 0x4
+ MPOL_MAX = 0x7
+ MPOL_MF_INTERNAL = 0x10
+ MPOL_MF_LAZY = 0x8
+ MPOL_MF_MOVE_ALL = 0x4
+ MPOL_MF_MOVE = 0x2
+ MPOL_MF_STRICT = 0x1
+ MPOL_MF_VALID = 0x7
+ MPOL_MODE_FLAGS = 0xe000
+ MPOL_PREFERRED = 0x1
+ MPOL_PREFERRED_MANY = 0x5
+ MPOL_WEIGHTED_INTERLEAVE = 0x6
+)
diff --git a/vendor/golang.org/x/sys/windows/syscall_windows.go b/vendor/golang.org/x/sys/windows/syscall_windows.go
index bd513373..69439df2 100644
--- a/vendor/golang.org/x/sys/windows/syscall_windows.go
+++ b/vendor/golang.org/x/sys/windows/syscall_windows.go
@@ -892,8 +892,12 @@ const socket_error = uintptr(^uint32(0))
//sys MultiByteToWideChar(codePage uint32, dwFlags uint32, str *byte, nstr int32, wchar *uint16, nwchar int32) (nwrite int32, err error) = kernel32.MultiByteToWideChar
//sys getBestInterfaceEx(sockaddr unsafe.Pointer, pdwBestIfIndex *uint32) (errcode error) = iphlpapi.GetBestInterfaceEx
//sys GetIfEntry2Ex(level uint32, row *MibIfRow2) (errcode error) = iphlpapi.GetIfEntry2Ex
+//sys GetIpForwardEntry2(row *MibIpForwardRow2) (errcode error) = iphlpapi.GetIpForwardEntry2
+//sys GetIpForwardTable2(family uint16, table **MibIpForwardTable2) (errcode error) = iphlpapi.GetIpForwardTable2
//sys GetUnicastIpAddressEntry(row *MibUnicastIpAddressRow) (errcode error) = iphlpapi.GetUnicastIpAddressEntry
+//sys FreeMibTable(memory unsafe.Pointer) = iphlpapi.FreeMibTable
//sys NotifyIpInterfaceChange(family uint16, callback uintptr, callerContext unsafe.Pointer, initialNotification bool, notificationHandle *Handle) (errcode error) = iphlpapi.NotifyIpInterfaceChange
+//sys NotifyRouteChange2(family uint16, callback uintptr, callerContext unsafe.Pointer, initialNotification bool, notificationHandle *Handle) (errcode error) = iphlpapi.NotifyRouteChange2
//sys NotifyUnicastIpAddressChange(family uint16, callback uintptr, callerContext unsafe.Pointer, initialNotification bool, notificationHandle *Handle) (errcode error) = iphlpapi.NotifyUnicastIpAddressChange
//sys CancelMibChangeNotify2(notificationHandle Handle) (errcode error) = iphlpapi.CancelMibChangeNotify2
@@ -916,6 +920,17 @@ type RawSockaddrInet6 struct {
Scope_id uint32
}
+// RawSockaddrInet is a union that contains an IPv4, an IPv6 address, or an address family. See
+// https://learn.microsoft.com/en-us/windows/win32/api/ws2ipdef/ns-ws2ipdef-sockaddr_inet.
+//
+// A [*RawSockaddrInet] may be converted to a [*RawSockaddrInet4] or [*RawSockaddrInet6] using
+// unsafe, depending on the address family.
+type RawSockaddrInet struct {
+ Family uint16
+ Port uint16
+ Data [6]uint32
+}
+
type RawSockaddr struct {
Family uint16
Data [14]int8
diff --git a/vendor/golang.org/x/sys/windows/types_windows.go b/vendor/golang.org/x/sys/windows/types_windows.go
index 358be3c7..6e4f50eb 100644
--- a/vendor/golang.org/x/sys/windows/types_windows.go
+++ b/vendor/golang.org/x/sys/windows/types_windows.go
@@ -2320,6 +2320,82 @@ type MibIfRow2 struct {
OutQLen uint64
}
+// IP_ADDRESS_PREFIX stores an IP address prefix. See
+// https://learn.microsoft.com/en-us/windows/win32/api/netioapi/ns-netioapi-ip_address_prefix.
+type IpAddressPrefix struct {
+ Prefix RawSockaddrInet
+ PrefixLength uint8
+}
+
+// NL_ROUTE_ORIGIN enumeration from nldef.h or
+// https://learn.microsoft.com/en-us/windows/win32/api/nldef/ne-nldef-nl_route_origin.
+const (
+ NlroManual = 0
+ NlroWellKnown = 1
+ NlroDHCP = 2
+ NlroRouterAdvertisement = 3
+ Nlro6to4 = 4
+)
+
+// NL_ROUTE_ORIGIN enumeration from nldef.h or
+// https://learn.microsoft.com/en-us/windows/win32/api/nldef/ne-nldef-nl_route_protocol.
+const (
+ MIB_IPPROTO_OTHER = 1
+ MIB_IPPROTO_LOCAL = 2
+ MIB_IPPROTO_NETMGMT = 3
+ MIB_IPPROTO_ICMP = 4
+ MIB_IPPROTO_EGP = 5
+ MIB_IPPROTO_GGP = 6
+ MIB_IPPROTO_HELLO = 7
+ MIB_IPPROTO_RIP = 8
+ MIB_IPPROTO_IS_IS = 9
+ MIB_IPPROTO_ES_IS = 10
+ MIB_IPPROTO_CISCO = 11
+ MIB_IPPROTO_BBN = 12
+ MIB_IPPROTO_OSPF = 13
+ MIB_IPPROTO_BGP = 14
+ MIB_IPPROTO_IDPR = 15
+ MIB_IPPROTO_EIGRP = 16
+ MIB_IPPROTO_DVMRP = 17
+ MIB_IPPROTO_RPL = 18
+ MIB_IPPROTO_DHCP = 19
+ MIB_IPPROTO_NT_AUTOSTATIC = 10002
+ MIB_IPPROTO_NT_STATIC = 10006
+ MIB_IPPROTO_NT_STATIC_NON_DOD = 10007
+)
+
+// MIB_IPFORWARD_ROW2 stores information about an IP route entry. See
+// https://learn.microsoft.com/en-us/windows/win32/api/netioapi/ns-netioapi-mib_ipforward_row2.
+type MibIpForwardRow2 struct {
+ InterfaceLuid uint64
+ InterfaceIndex uint32
+ DestinationPrefix IpAddressPrefix
+ NextHop RawSockaddrInet
+ SitePrefixLength uint8
+ ValidLifetime uint32
+ PreferredLifetime uint32
+ Metric uint32
+ Protocol uint32
+ Loopback uint8
+ AutoconfigureAddress uint8
+ Publish uint8
+ Immortal uint8
+ Age uint32
+ Origin uint32
+}
+
+// MIB_IPFORWARD_TABLE2 contains a table of IP route entries. See
+// https://learn.microsoft.com/en-us/windows/win32/api/netioapi/ns-netioapi-mib_ipforward_table2.
+type MibIpForwardTable2 struct {
+ NumEntries uint32
+ Table [1]MibIpForwardRow2
+}
+
+// Rows returns the IP route entries in the table.
+func (t *MibIpForwardTable2) Rows() []MibIpForwardRow2 {
+ return unsafe.Slice(&t.Table[0], t.NumEntries)
+}
+
// MIB_UNICASTIPADDRESS_ROW stores information about a unicast IP address. See
// https://learn.microsoft.com/en-us/windows/win32/api/netioapi/ns-netioapi-mib_unicastipaddress_row.
type MibUnicastIpAddressRow struct {
diff --git a/vendor/golang.org/x/sys/windows/zsyscall_windows.go b/vendor/golang.org/x/sys/windows/zsyscall_windows.go
index 426151a0..f25b7308 100644
--- a/vendor/golang.org/x/sys/windows/zsyscall_windows.go
+++ b/vendor/golang.org/x/sys/windows/zsyscall_windows.go
@@ -182,13 +182,17 @@ var (
procDwmGetWindowAttribute = moddwmapi.NewProc("DwmGetWindowAttribute")
procDwmSetWindowAttribute = moddwmapi.NewProc("DwmSetWindowAttribute")
procCancelMibChangeNotify2 = modiphlpapi.NewProc("CancelMibChangeNotify2")
+ procFreeMibTable = modiphlpapi.NewProc("FreeMibTable")
procGetAdaptersAddresses = modiphlpapi.NewProc("GetAdaptersAddresses")
procGetAdaptersInfo = modiphlpapi.NewProc("GetAdaptersInfo")
procGetBestInterfaceEx = modiphlpapi.NewProc("GetBestInterfaceEx")
procGetIfEntry = modiphlpapi.NewProc("GetIfEntry")
procGetIfEntry2Ex = modiphlpapi.NewProc("GetIfEntry2Ex")
+ procGetIpForwardEntry2 = modiphlpapi.NewProc("GetIpForwardEntry2")
+ procGetIpForwardTable2 = modiphlpapi.NewProc("GetIpForwardTable2")
procGetUnicastIpAddressEntry = modiphlpapi.NewProc("GetUnicastIpAddressEntry")
procNotifyIpInterfaceChange = modiphlpapi.NewProc("NotifyIpInterfaceChange")
+ procNotifyRouteChange2 = modiphlpapi.NewProc("NotifyRouteChange2")
procNotifyUnicastIpAddressChange = modiphlpapi.NewProc("NotifyUnicastIpAddressChange")
procAddDllDirectory = modkernel32.NewProc("AddDllDirectory")
procAssignProcessToJobObject = modkernel32.NewProc("AssignProcessToJobObject")
@@ -1624,6 +1628,11 @@ func CancelMibChangeNotify2(notificationHandle Handle) (errcode error) {
return
}
+func FreeMibTable(memory unsafe.Pointer) {
+ syscall.SyscallN(procFreeMibTable.Addr(), uintptr(memory))
+ return
+}
+
func GetAdaptersAddresses(family uint32, flags uint32, reserved uintptr, adapterAddresses *IpAdapterAddresses, sizePointer *uint32) (errcode error) {
r0, _, _ := syscall.SyscallN(procGetAdaptersAddresses.Addr(), uintptr(family), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(adapterAddresses)), uintptr(unsafe.Pointer(sizePointer)))
if r0 != 0 {
@@ -1664,6 +1673,22 @@ func GetIfEntry2Ex(level uint32, row *MibIfRow2) (errcode error) {
return
}
+func GetIpForwardEntry2(row *MibIpForwardRow2) (errcode error) {
+ r0, _, _ := syscall.SyscallN(procGetIpForwardEntry2.Addr(), uintptr(unsafe.Pointer(row)))
+ if r0 != 0 {
+ errcode = syscall.Errno(r0)
+ }
+ return
+}
+
+func GetIpForwardTable2(family uint16, table **MibIpForwardTable2) (errcode error) {
+ r0, _, _ := syscall.SyscallN(procGetIpForwardTable2.Addr(), uintptr(family), uintptr(unsafe.Pointer(table)))
+ if r0 != 0 {
+ errcode = syscall.Errno(r0)
+ }
+ return
+}
+
func GetUnicastIpAddressEntry(row *MibUnicastIpAddressRow) (errcode error) {
r0, _, _ := syscall.SyscallN(procGetUnicastIpAddressEntry.Addr(), uintptr(unsafe.Pointer(row)))
if r0 != 0 {
@@ -1684,6 +1709,18 @@ func NotifyIpInterfaceChange(family uint16, callback uintptr, callerContext unsa
return
}
+func NotifyRouteChange2(family uint16, callback uintptr, callerContext unsafe.Pointer, initialNotification bool, notificationHandle *Handle) (errcode error) {
+ var _p0 uint32
+ if initialNotification {
+ _p0 = 1
+ }
+ r0, _, _ := syscall.SyscallN(procNotifyRouteChange2.Addr(), uintptr(family), uintptr(callback), uintptr(callerContext), uintptr(_p0), uintptr(unsafe.Pointer(notificationHandle)))
+ if r0 != 0 {
+ errcode = syscall.Errno(r0)
+ }
+ return
+}
+
func NotifyUnicastIpAddressChange(family uint16, callback uintptr, callerContext unsafe.Pointer, initialNotification bool, notificationHandle *Handle) (errcode error) {
var _p0 uint32
if initialNotification {
diff --git a/vendor/golang.org/x/term/terminal.go b/vendor/golang.org/x/term/terminal.go
index bddb2e2a..9255449b 100644
--- a/vendor/golang.org/x/term/terminal.go
+++ b/vendor/golang.org/x/term/terminal.go
@@ -413,7 +413,7 @@ func (t *Terminal) eraseNPreviousChars(n int) {
}
}
-// countToLeftWord returns then number of characters from the cursor to the
+// countToLeftWord returns the number of characters from the cursor to the
// start of the previous word.
func (t *Terminal) countToLeftWord() int {
if t.pos == 0 {
@@ -438,7 +438,7 @@ func (t *Terminal) countToLeftWord() int {
return t.pos - pos
}
-// countToRightWord returns then number of characters from the cursor to the
+// countToRightWord returns the number of characters from the cursor to the
// start of the next word.
func (t *Terminal) countToRightWord() int {
pos := t.pos
@@ -478,7 +478,7 @@ func visualLength(runes []rune) int {
return length
}
-// histroryAt unlocks the terminal and relocks it while calling History.At.
+// historyAt unlocks the terminal and relocks it while calling History.At.
func (t *Terminal) historyAt(idx int) (string, bool) {
t.lock.Unlock() // Unlock to avoid deadlock if History methods use the output writer.
defer t.lock.Lock() // panic in At (or Len) protection.
diff --git a/vendor/golang.org/x/tools/go/ast/inspector/cursor.go b/vendor/golang.org/x/tools/go/ast/inspector/cursor.go
index 7e72d3c2..fc9bbc71 100644
--- a/vendor/golang.org/x/tools/go/ast/inspector/cursor.go
+++ b/vendor/golang.org/x/tools/go/ast/inspector/cursor.go
@@ -467,7 +467,9 @@ func (c Cursor) FindByPos(start, end token.Pos) (Cursor, bool) {
// This algorithm could be implemented using c.Inspect,
// but it is about 2.5x slower.
- best := int32(-1) // push index of latest (=innermost) node containing range
+ // best is the push-index of the latest (=innermost) node containing range.
+ // (Beware: latest is not always innermost because FuncDecl.{Name,Type} overlap.)
+ best := int32(-1)
for i, limit := c.indices(); i < limit; i++ {
ev := events[i]
if ev.index > i { // push?
@@ -481,6 +483,19 @@ func (c Cursor) FindByPos(start, end token.Pos) (Cursor, bool) {
continue
}
} else {
+ // Edge case: FuncDecl.Name and .Type overlap:
+ // Don't update best from Name to FuncDecl.Type.
+ //
+ // The condition can be read as:
+ // - n is FuncType
+ // - n.parent is FuncDecl
+ // - best is strictly beneath the FuncDecl
+ if ev.typ == 1< ev.parent {
+ continue
+ }
+
nodeEnd = n.End()
if n.Pos() > start {
break // disjoint, after; stop
diff --git a/vendor/golang.org/x/tools/go/packages/visit.go b/vendor/golang.org/x/tools/go/packages/visit.go
index af6a60d7..c546b1b6 100644
--- a/vendor/golang.org/x/tools/go/packages/visit.go
+++ b/vendor/golang.org/x/tools/go/packages/visit.go
@@ -78,7 +78,7 @@ func PrintErrors(pkgs []*Package) int {
return n
}
-// Postorder returns an iterator over the the packages in
+// Postorder returns an iterator over the packages in
// the import graph whose roots are pkg.
// Packages are enumerated in dependencies-first order.
func Postorder(pkgs []*Package) iter.Seq[*Package] {
diff --git a/vendor/golang.org/x/tools/go/types/objectpath/objectpath.go b/vendor/golang.org/x/tools/go/types/objectpath/objectpath.go
index 6c0c7496..6646bf55 100644
--- a/vendor/golang.org/x/tools/go/types/objectpath/objectpath.go
+++ b/vendor/golang.org/x/tools/go/types/objectpath/objectpath.go
@@ -249,7 +249,7 @@ func (enc *Encoder) For(obj types.Object) (Path, error) {
case *types.Func:
// A func, if not package-level, must be a method.
- if recv := obj.Type().(*types.Signature).Recv(); recv == nil {
+ if recv := obj.Signature().Recv(); recv == nil {
return "", fmt.Errorf("func is not a method: %v", obj)
}
@@ -405,7 +405,7 @@ func (enc *Encoder) concreteMethod(meth *types.Func) (Path, bool) {
return "", false
}
- _, named := typesinternal.ReceiverNamed(meth.Type().(*types.Signature).Recv())
+ _, named := typesinternal.ReceiverNamed(meth.Signature().Recv())
if named == nil {
return "", false
}
diff --git a/vendor/golang.org/x/tools/go/types/typeutil/map.go b/vendor/golang.org/x/tools/go/types/typeutil/map.go
index f035a0b6..36624572 100644
--- a/vendor/golang.org/x/tools/go/types/typeutil/map.go
+++ b/vendor/golang.org/x/tools/go/types/typeutil/map.go
@@ -304,8 +304,7 @@ func (h hasher) hash(t types.Type) uint32 {
case *types.Named:
hash := h.hashTypeName(t.Obj())
targs := t.TypeArgs()
- for i := 0; i < targs.Len(); i++ {
- targ := targs.At(i)
+ for targ := range targs.Types() {
hash += 2 * h.hash(targ)
}
return hash
diff --git a/vendor/golang.org/x/tools/imports/forward.go b/vendor/golang.org/x/tools/imports/forward.go
index 22ae7777..5d120d07 100644
--- a/vendor/golang.org/x/tools/imports/forward.go
+++ b/vendor/golang.org/x/tools/imports/forward.go
@@ -69,3 +69,9 @@ func Process(filename string, src []byte, opt *Options) ([]byte, error) {
}
return intimp.Process(filename, src, intopt)
}
+
+// VendorlessPath returns the devendorized version of the import path ipath.
+// For example, VendorlessPath("foo/barbendor/a/b") return "a/b".
+func VendorlessPath(ipath string) string {
+ return intimp.VendorlessPath(ipath)
+}
diff --git a/vendor/golang.org/x/tools/internal/gcimporter/bimport.go b/vendor/golang.org/x/tools/internal/gcimporter/bimport.go
index 734c4619..555ef626 100644
--- a/vendor/golang.org/x/tools/internal/gcimporter/bimport.go
+++ b/vendor/golang.org/x/tools/internal/gcimporter/bimport.go
@@ -34,7 +34,7 @@ type fileInfo struct {
const maxlines = 64 * 1024
func (s *fakeFileSet) pos(file string, line, column int) token.Pos {
- // TODO(mdempsky): Make use of column.
+ _ = column // TODO(mdempsky): Make use of column.
// Since we don't know the set of needed file positions, we reserve maxlines
// positions per file. We delay calling token.File.SetLines until all
diff --git a/vendor/golang.org/x/tools/internal/gcimporter/iexport.go b/vendor/golang.org/x/tools/internal/gcimporter/iexport.go
index 4a4357d2..2bef2b05 100644
--- a/vendor/golang.org/x/tools/internal/gcimporter/iexport.go
+++ b/vendor/golang.org/x/tools/internal/gcimporter/iexport.go
@@ -829,8 +829,7 @@ func (p *iexporter) doDecl(obj types.Object) {
// their name must be qualified before exporting recv.
if rparams := sig.RecvTypeParams(); rparams.Len() > 0 {
prefix := obj.Name() + "." + m.Name()
- for i := 0; i < rparams.Len(); i++ {
- rparam := rparams.At(i)
+ for rparam := range rparams.TypeParams() {
name := tparamExportName(prefix, rparam)
w.p.tparamNames[rparam.Obj()] = name
}
@@ -944,6 +943,13 @@ func (w *exportWriter) posV0(pos token.Pos) {
}
func (w *exportWriter) pkg(pkg *types.Package) {
+ if pkg == nil {
+ // [exportWriter.typ] accepts a nil pkg only for types
+ // of constants, which cannot contain named objects
+ // such as fields or methods and thus should never
+ // reach this method (#76222).
+ panic("nil package")
+ }
// Ensure any referenced packages are declared in the main index.
w.p.allPkgs[pkg] = true
@@ -959,9 +965,11 @@ func (w *exportWriter) qualifiedType(obj *types.TypeName) {
w.pkg(obj.Pkg())
}
-// TODO(rfindley): what does 'pkg' even mean here? It would be better to pass
-// it in explicitly into signatures and structs that may use it for
-// constructing fields.
+// typ emits the specified type.
+//
+// Objects within the type (struct fields and interface methods) are
+// qualified by pkg. It may be nil if the type cannot contain objects,
+// such as the type of a constant.
func (w *exportWriter) typ(t types.Type, pkg *types.Package) {
w.data.uint64(w.p.typOff(t, pkg))
}
@@ -991,6 +999,7 @@ func (w *exportWriter) startType(k itag) {
w.data.uint64(uint64(k))
}
+// doTyp is the implementation of [exportWriter.typ].
func (w *exportWriter) doTyp(t types.Type, pkg *types.Package) {
if trace {
w.p.trace("exporting type %s (%T)", t, t)
@@ -1064,7 +1073,7 @@ func (w *exportWriter) doTyp(t types.Type, pkg *types.Package) {
case *types.Signature:
w.startType(signatureType)
- w.pkg(pkg)
+ w.pkg(pkg) // qualifies param/result vars
w.signature(t)
case *types.Struct:
@@ -1110,19 +1119,19 @@ func (w *exportWriter) doTyp(t types.Type, pkg *types.Package) {
case *types.Interface:
w.startType(interfaceType)
- w.pkg(pkg)
+ w.pkg(pkg) // qualifies unexported method funcs
n := t.NumEmbeddeds()
w.uint64(uint64(n))
for i := 0; i < n; i++ {
ft := t.EmbeddedType(i)
- tPkg := pkg
if named, _ := types.Unalias(ft).(*types.Named); named != nil {
w.pos(named.Obj().Pos())
} else {
+ // e.g. ~int
w.pos(token.NoPos)
}
- w.typ(ft, tPkg)
+ w.typ(ft, pkg)
}
// See comment for struct fields. In shallow mode we change the encoding
@@ -1223,20 +1232,19 @@ func (w *exportWriter) signature(sig *types.Signature) {
func (w *exportWriter) typeList(ts *types.TypeList, pkg *types.Package) {
w.uint64(uint64(ts.Len()))
- for i := 0; i < ts.Len(); i++ {
- w.typ(ts.At(i), pkg)
+ for t := range ts.Types() {
+ w.typ(t, pkg)
}
}
func (w *exportWriter) tparamList(prefix string, list *types.TypeParamList, pkg *types.Package) {
ll := uint64(list.Len())
w.uint64(ll)
- for i := 0; i < list.Len(); i++ {
- tparam := list.At(i)
+ for tparam := range list.TypeParams() {
// Set the type parameter exportName before exporting its type.
exportName := tparamExportName(prefix, tparam)
w.p.tparamNames[tparam.Obj()] = exportName
- w.typ(list.At(i), pkg)
+ w.typ(tparam, pkg)
}
}
diff --git a/vendor/golang.org/x/tools/internal/gcimporter/iimport.go b/vendor/golang.org/x/tools/internal/gcimporter/iimport.go
index 82e6c9d2..4d6d5009 100644
--- a/vendor/golang.org/x/tools/internal/gcimporter/iimport.go
+++ b/vendor/golang.org/x/tools/internal/gcimporter/iimport.go
@@ -432,10 +432,10 @@ func (p *iimporter) doDecl(pkg *types.Package, name string) {
errorf("%v.%v not in index", pkg, name)
}
- r := &importReader{p: p, currPkg: pkg}
+ r := &importReader{p: p}
r.declReader.Reset(p.declData[off:])
- r.obj(name)
+ r.obj(pkg, name)
}
func (p *iimporter) stringAt(off uint64) string {
@@ -551,7 +551,6 @@ func canReuse(def *types.Named, rhs types.Type) bool {
type importReader struct {
p *iimporter
declReader bytes.Reader
- currPkg *types.Package
prevFile string
prevLine int64
prevColumn int64
@@ -565,7 +564,8 @@ type importReader struct {
// for 1.24, but the fix was not worth back-porting).
var markBlack = func(name *types.TypeName) {}
-func (r *importReader) obj(name string) {
+// obj decodes and declares the package-level object denoted by (pkg, name).
+func (r *importReader) obj(pkg *types.Package, name string) {
tag := r.byte()
pos := r.pos()
@@ -576,27 +576,27 @@ func (r *importReader) obj(name string) {
tparams = r.tparamList()
}
typ := r.typ()
- obj := aliases.NewAlias(r.p.aliases, pos, r.currPkg, name, typ, tparams)
+ obj := aliases.NewAlias(r.p.aliases, pos, pkg, name, typ, tparams)
markBlack(obj) // workaround for golang/go#69912
r.declare(obj)
case constTag:
typ, val := r.value()
- r.declare(types.NewConst(pos, r.currPkg, name, typ, val))
+ r.declare(types.NewConst(pos, pkg, name, typ, val))
case funcTag, genericFuncTag:
var tparams []*types.TypeParam
if tag == genericFuncTag {
tparams = r.tparamList()
}
- sig := r.signature(nil, nil, tparams)
- r.declare(types.NewFunc(pos, r.currPkg, name, sig))
+ sig := r.signature(pkg, nil, nil, tparams)
+ r.declare(types.NewFunc(pos, pkg, name, sig))
case typeTag, genericTypeTag:
// Types can be recursive. We need to setup a stub
// declaration before recursing.
- obj := types.NewTypeName(pos, r.currPkg, name, nil)
+ obj := types.NewTypeName(pos, pkg, name, nil)
named := types.NewNamed(obj, nil, nil)
markBlack(obj) // workaround for golang/go#69912
@@ -616,7 +616,7 @@ func (r *importReader) obj(name string) {
for n := r.uint64(); n > 0; n-- {
mpos := r.pos()
mname := r.ident()
- recv := r.param()
+ recv := r.param(pkg)
// If the receiver has any targs, set those as the
// rparams of the method (since those are the
@@ -630,9 +630,9 @@ func (r *importReader) obj(name string) {
rparams[i] = types.Unalias(targs.At(i)).(*types.TypeParam)
}
}
- msig := r.signature(recv, rparams, nil)
+ msig := r.signature(pkg, recv, rparams, nil)
- named.AddMethod(types.NewFunc(mpos, r.currPkg, mname, msig))
+ named.AddMethod(types.NewFunc(mpos, pkg, mname, msig))
}
}
@@ -644,12 +644,12 @@ func (r *importReader) obj(name string) {
errorf("unexpected type param type")
}
name0 := tparamName(name)
- tn := types.NewTypeName(pos, r.currPkg, name0, nil)
+ tn := types.NewTypeName(pos, pkg, name0, nil)
t := types.NewTypeParam(tn, nil)
// To handle recursive references to the typeparam within its
// bound, save the partial type in tparamIndex before reading the bounds.
- id := ident{r.currPkg, name}
+ id := ident{pkg, name}
r.p.tparamIndex[id] = t
var implicit bool
if r.p.version >= iexportVersionGo1_18 {
@@ -672,7 +672,7 @@ func (r *importReader) obj(name string) {
case varTag:
typ := r.typ()
- v := types.NewVar(pos, r.currPkg, name, typ)
+ v := types.NewVar(pos, pkg, name, typ)
typesinternal.SetVarKind(v, typesinternal.PackageVar)
r.declare(v)
@@ -905,11 +905,11 @@ func (r *importReader) doType(base *types.Named) (res types.Type) {
case mapType:
return types.NewMap(r.typ(), r.typ())
case signatureType:
- r.currPkg = r.pkg()
- return r.signature(nil, nil, nil)
+ paramPkg := r.pkg()
+ return r.signature(paramPkg, nil, nil, nil)
case structType:
- r.currPkg = r.pkg()
+ fieldPkg := r.pkg()
fields := make([]*types.Var, r.uint64())
tags := make([]string, len(fields))
@@ -932,7 +932,7 @@ func (r *importReader) doType(base *types.Named) (res types.Type) {
// discussed in iexport.go, this is not correct, but mostly works and is
// preferable to failing (for now at least).
if field == nil {
- field = types.NewField(fpos, r.currPkg, fname, ftyp, emb)
+ field = types.NewField(fpos, fieldPkg, fname, ftyp, emb)
}
fields[i] = field
@@ -941,7 +941,7 @@ func (r *importReader) doType(base *types.Named) (res types.Type) {
return types.NewStruct(fields, tags)
case interfaceType:
- r.currPkg = r.pkg()
+ methodPkg := r.pkg() // qualifies methods and their param/result vars
embeddeds := make([]types.Type, r.uint64())
for i := range embeddeds {
@@ -963,12 +963,12 @@ func (r *importReader) doType(base *types.Named) (res types.Type) {
// don't agree with this.
var recv *types.Var
if base != nil {
- recv = types.NewVar(token.NoPos, r.currPkg, "", base)
+ recv = types.NewVar(token.NoPos, methodPkg, "", base)
}
- msig := r.signature(recv, nil, nil)
+ msig := r.signature(methodPkg, recv, nil, nil)
if method == nil {
- method = types.NewFunc(mpos, r.currPkg, mname, msig)
+ method = types.NewFunc(mpos, methodPkg, mname, msig)
}
methods[i] = method
}
@@ -1049,9 +1049,9 @@ func (r *importReader) objectPathObject() types.Object {
return obj
}
-func (r *importReader) signature(recv *types.Var, rparams []*types.TypeParam, tparams []*types.TypeParam) *types.Signature {
- params := r.paramList()
- results := r.paramList()
+func (r *importReader) signature(paramPkg *types.Package, recv *types.Var, rparams []*types.TypeParam, tparams []*types.TypeParam) *types.Signature {
+ params := r.paramList(paramPkg)
+ results := r.paramList(paramPkg)
variadic := params.Len() > 0 && r.bool()
return types.NewSignatureType(recv, rparams, tparams, params, results, variadic)
}
@@ -1070,19 +1070,19 @@ func (r *importReader) tparamList() []*types.TypeParam {
return xs
}
-func (r *importReader) paramList() *types.Tuple {
+func (r *importReader) paramList(pkg *types.Package) *types.Tuple {
xs := make([]*types.Var, r.uint64())
for i := range xs {
- xs[i] = r.param()
+ xs[i] = r.param(pkg)
}
return types.NewTuple(xs...)
}
-func (r *importReader) param() *types.Var {
+func (r *importReader) param(pkg *types.Package) *types.Var {
pos := r.pos()
name := r.ident()
typ := r.typ()
- return types.NewParam(pos, r.currPkg, name, typ)
+ return types.NewParam(pos, pkg, name, typ)
}
func (r *importReader) bool() bool {
diff --git a/vendor/golang.org/x/tools/internal/stdlib/deps.go b/vendor/golang.org/x/tools/internal/stdlib/deps.go
index 96ad6c58..581784da 100644
--- a/vendor/golang.org/x/tools/internal/stdlib/deps.go
+++ b/vendor/golang.org/x/tools/internal/stdlib/deps.go
@@ -12,354 +12,508 @@ type pkginfo struct {
}
var deps = [...]pkginfo{
- {"archive/tar", "\x03k\x03E;\x01\n\x01$\x01\x01\x02\x05\b\x02\x01\x02\x02\f"},
- {"archive/zip", "\x02\x04a\a\x03\x12\x021;\x01+\x05\x01\x0f\x03\x02\x0e\x04"},
- {"bufio", "\x03k\x83\x01D\x14"},
- {"bytes", "n*Y\x03\fG\x02\x02"},
+ {"archive/tar", "\x03n\x03E<\x01\n\x01$\x01\x01\x02\x05\b\x02\x01\x02\x02\f"},
+ {"archive/zip", "\x02\x04d\a\x03\x12\x021<\x01+\x05\x01\x0f\x03\x02\x0e\x04"},
+ {"bufio", "\x03n\x84\x01D\x14"},
+ {"bytes", "q*Z\x03\fG\x02\x02"},
{"cmp", ""},
- {"compress/bzip2", "\x02\x02\xed\x01A"},
- {"compress/flate", "\x02l\x03\x80\x01\f\x033\x01\x03"},
- {"compress/gzip", "\x02\x04a\a\x03\x14lT"},
- {"compress/lzw", "\x02l\x03\x80\x01"},
- {"compress/zlib", "\x02\x04a\a\x03\x12\x01m"},
- {"container/heap", "\xb3\x02"},
+ {"compress/bzip2", "\x02\x02\xf1\x01A"},
+ {"compress/flate", "\x02o\x03\x81\x01\f\x033\x01\x03"},
+ {"compress/gzip", "\x02\x04d\a\x03\x14mT"},
+ {"compress/lzw", "\x02o\x03\x81\x01"},
+ {"compress/zlib", "\x02\x04d\a\x03\x12\x01n"},
+ {"container/heap", "\xb7\x02"},
{"container/list", ""},
{"container/ring", ""},
- {"context", "n\\m\x01\r"},
- {"crypto", "\x83\x01nC"},
- {"crypto/aes", "\x10\n\a\x93\x02"},
- {"crypto/cipher", "\x03\x1e\x01\x01\x1e\x11\x1c+X"},
- {"crypto/des", "\x10\x13\x1e-+\x9b\x01\x03"},
- {"crypto/dsa", "A\x04)\x83\x01\r"},
- {"crypto/ecdh", "\x03\v\f\x0e\x04\x15\x04\r\x1c\x83\x01"},
- {"crypto/ecdsa", "\x0e\x05\x03\x04\x01\x0e\a\v\x05\x01\x04\f\x01\x1c\x83\x01\r\x05K\x01"},
- {"crypto/ed25519", "\x0e\x1c\x11\x06\n\a\x1c\x83\x01C"},
- {"crypto/elliptic", "0>\x83\x01\r9"},
- {"crypto/fips140", " \x05"},
- {"crypto/hkdf", "-\x13\x01-\x15"},
- {"crypto/hmac", "\x1a\x14\x12\x01\x111"},
- {"crypto/internal/boring", "\x0e\x02\rf"},
- {"crypto/internal/boring/bbig", "\x1a\xe4\x01M"},
- {"crypto/internal/boring/bcache", "\xb8\x02\x13"},
+ {"context", "q[o\x01\r"},
+ {"crypto", "\x86\x01oC"},
+ {"crypto/aes", "\x10\n\t\x95\x02"},
+ {"crypto/cipher", "\x03 \x01\x01\x1f\x11\x1c+Y"},
+ {"crypto/des", "\x10\x15\x1f-+\x9c\x01\x03"},
+ {"crypto/dsa", "D\x04)\x84\x01\r"},
+ {"crypto/ecdh", "\x03\v\f\x10\x04\x16\x04\r\x1c\x84\x01"},
+ {"crypto/ecdsa", "\x0e\x05\x03\x04\x01\x10\a\v\x06\x01\x04\f\x01\x1c\x84\x01\r\x05K\x01"},
+ {"crypto/ed25519", "\x0e\x1e\x11\a\n\a\x1c\x84\x01C"},
+ {"crypto/elliptic", "2?\x84\x01\r9"},
+ {"crypto/fips140", "\"\x05"},
+ {"crypto/hkdf", "/\x14\x01-\x15"},
+ {"crypto/hmac", "\x1a\x16\x13\x01\x111"},
+ {"crypto/internal/boring", "\x0e\x02\ri"},
+ {"crypto/internal/boring/bbig", "\x1a\xe8\x01M"},
+ {"crypto/internal/boring/bcache", "\xbc\x02\x13"},
{"crypto/internal/boring/sig", ""},
- {"crypto/internal/cryptotest", "\x03\r\n\x06$\x0e\x19\x06\x12\x12 \x04\a\t\x16\x01\x11\x11\x1b\x01\a\x05\b\x03\x05\v"},
- {"crypto/internal/entropy", "F"},
- {"crypto/internal/fips140", "?/\x15\xa7\x01\v\x16"},
- {"crypto/internal/fips140/aes", "\x03\x1d\x03\x02\x13\x05\x01\x01\x05*\x92\x014"},
- {"crypto/internal/fips140/aes/gcm", " \x01\x02\x02\x02\x11\x05\x01\x06*\x8f\x01"},
- {"crypto/internal/fips140/alias", "\xcb\x02"},
- {"crypto/internal/fips140/bigmod", "%\x18\x01\x06*\x92\x01"},
- {"crypto/internal/fips140/check", " \x0e\x06\t\x02\xb2\x01Z"},
- {"crypto/internal/fips140/check/checktest", "%\x85\x02!"},
- {"crypto/internal/fips140/drbg", "\x03\x1c\x01\x01\x04\x13\x05\b\x01(\x83\x01\x0f7"},
- {"crypto/internal/fips140/ecdh", "\x03\x1d\x05\x02\t\r1\x83\x01\x0f7"},
- {"crypto/internal/fips140/ecdsa", "\x03\x1d\x04\x01\x02\a\x02\x068\x15nF"},
- {"crypto/internal/fips140/ed25519", "\x03\x1d\x05\x02\x04\v8\xc6\x01\x03"},
- {"crypto/internal/fips140/edwards25519", "%\a\f\x051\x92\x017"},
- {"crypto/internal/fips140/edwards25519/field", "%\x13\x051\x92\x01"},
- {"crypto/internal/fips140/hkdf", "\x03\x1d\x05\t\x06:\x15"},
- {"crypto/internal/fips140/hmac", "\x03\x1d\x14\x01\x018\x15"},
- {"crypto/internal/fips140/mlkem", "\x03\x1d\x05\x02\x0e\x03\x051"},
- {"crypto/internal/fips140/nistec", "%\f\a\x051\x92\x01*\r\x14"},
- {"crypto/internal/fips140/nistec/fiat", "%\x136\x92\x01"},
- {"crypto/internal/fips140/pbkdf2", "\x03\x1d\x05\t\x06:\x15"},
- {"crypto/internal/fips140/rsa", "\x03\x1d\x04\x01\x02\r\x01\x01\x026\x15nF"},
- {"crypto/internal/fips140/sha256", "\x03\x1d\x1d\x01\x06*\x15}"},
- {"crypto/internal/fips140/sha3", "\x03\x1d\x18\x05\x010\x92\x01K"},
- {"crypto/internal/fips140/sha512", "\x03\x1d\x1d\x01\x06*\x15}"},
- {"crypto/internal/fips140/ssh", "%^"},
- {"crypto/internal/fips140/subtle", "#\x1a\xc3\x01"},
- {"crypto/internal/fips140/tls12", "\x03\x1d\x05\t\x06\x028\x15"},
- {"crypto/internal/fips140/tls13", "\x03\x1d\x05\b\a\t1\x15"},
- {"crypto/internal/fips140cache", "\xaa\x02\r&"},
+ {"crypto/internal/constanttime", ""},
+ {"crypto/internal/cryptotest", "\x03\r\n\b%\x0e\x19\x06\x12\x12 \x04\x06\t\x18\x01\x11\x11\x1b\x01\a\x05\b\x03\x05\v"},
+ {"crypto/internal/entropy", "I"},
+ {"crypto/internal/entropy/v1.0.0", "B/\x93\x018\x13"},
+ {"crypto/internal/fips140", "A0\xbd\x01\v\x16"},
+ {"crypto/internal/fips140/aes", "\x03\x1f\x03\x02\x13\x05\x01\x01\x06*\x93\x014"},
+ {"crypto/internal/fips140/aes/gcm", "\"\x01\x02\x02\x02\x11\x05\x01\a*\x90\x01"},
+ {"crypto/internal/fips140/alias", "\xcf\x02"},
+ {"crypto/internal/fips140/bigmod", "'\x18\x01\a*\x93\x01"},
+ {"crypto/internal/fips140/check", "\"\x0e\x06\t\x02\xb4\x01Z"},
+ {"crypto/internal/fips140/check/checktest", "'\x87\x02!"},
+ {"crypto/internal/fips140/drbg", "\x03\x1e\x01\x01\x04\x13\x05\t\x01(\x84\x01\x0f7\x01"},
+ {"crypto/internal/fips140/ecdh", "\x03\x1f\x05\x02\t\r2\x84\x01\x0f7"},
+ {"crypto/internal/fips140/ecdsa", "\x03\x1f\x04\x01\x02\a\x02\x069\x15oF"},
+ {"crypto/internal/fips140/ed25519", "\x03\x1f\x05\x02\x04\v9\xc7\x01\x03"},
+ {"crypto/internal/fips140/edwards25519", "\x1e\t\a\x112\x93\x017"},
+ {"crypto/internal/fips140/edwards25519/field", "'\x13\x052\x93\x01"},
+ {"crypto/internal/fips140/hkdf", "\x03\x1f\x05\t\x06;\x15"},
+ {"crypto/internal/fips140/hmac", "\x03\x1f\x14\x01\x019\x15"},
+ {"crypto/internal/fips140/mlkem", "\x03\x1f\x05\x02\x0e\x03\x052\xca\x01"},
+ {"crypto/internal/fips140/nistec", "\x1e\t\f\f2\x93\x01*\r\x14"},
+ {"crypto/internal/fips140/nistec/fiat", "'\x137\x93\x01"},
+ {"crypto/internal/fips140/pbkdf2", "\x03\x1f\x05\t\x06;\x15"},
+ {"crypto/internal/fips140/rsa", "\x03\x1b\x04\x04\x01\x02\r\x01\x01\x027\x15oF"},
+ {"crypto/internal/fips140/sha256", "\x03\x1f\x1d\x01\a*\x15~"},
+ {"crypto/internal/fips140/sha3", "\x03\x1f\x18\x05\x011\x93\x01K"},
+ {"crypto/internal/fips140/sha512", "\x03\x1f\x1d\x01\a*\x15~"},
+ {"crypto/internal/fips140/ssh", "'_"},
+ {"crypto/internal/fips140/subtle", "\x1e\a\x1a\xc5\x01"},
+ {"crypto/internal/fips140/tls12", "\x03\x1f\x05\t\x06\x029\x15"},
+ {"crypto/internal/fips140/tls13", "\x03\x1f\x05\b\a\t2\x15"},
+ {"crypto/internal/fips140cache", "\xae\x02\r&"},
{"crypto/internal/fips140deps", ""},
- {"crypto/internal/fips140deps/byteorder", "\x99\x01"},
- {"crypto/internal/fips140deps/cpu", "\xae\x01\a"},
- {"crypto/internal/fips140deps/godebug", "\xb6\x01"},
- {"crypto/internal/fips140hash", "5\x1b3\xc8\x01"},
- {"crypto/internal/fips140only", "'\r\x01\x01M3;"},
+ {"crypto/internal/fips140deps/byteorder", "\x9c\x01"},
+ {"crypto/internal/fips140deps/cpu", "\xb1\x01\a"},
+ {"crypto/internal/fips140deps/godebug", "\xb9\x01"},
+ {"crypto/internal/fips140deps/time", "\xc9\x02"},
+ {"crypto/internal/fips140hash", "7\x1c3\xc9\x01"},
+ {"crypto/internal/fips140only", ")\r\x01\x01N3<"},
{"crypto/internal/fips140test", ""},
- {"crypto/internal/hpke", "\x0e\x01\x01\x03\x053#+gM"},
- {"crypto/internal/impl", "\xb5\x02"},
- {"crypto/internal/randutil", "\xf1\x01\x12"},
- {"crypto/internal/sysrand", "nn! \r\r\x01\x01\f\x06"},
- {"crypto/internal/sysrand/internal/seccomp", "n"},
- {"crypto/md5", "\x0e3-\x15\x16g"},
- {"crypto/mlkem", "/"},
- {"crypto/pbkdf2", "2\x0e\x01-\x15"},
- {"crypto/rand", "\x1a\x06\a\x1a\x04\x01(\x83\x01\rM"},
- {"crypto/rc4", "#\x1e-\xc6\x01"},
- {"crypto/rsa", "\x0e\f\x01\t\x0f\r\x01\x04\x06\a\x1c\x03\x123;\f\x01"},
- {"crypto/sha1", "\x0e\f'\x03*\x15\x16\x15R"},
- {"crypto/sha256", "\x0e\f\x1aO"},
- {"crypto/sha3", "\x0e'N\xc8\x01"},
- {"crypto/sha512", "\x0e\f\x1cM"},
- {"crypto/subtle", "8\x9b\x01W"},
- {"crypto/tls", "\x03\b\x02\x01\x01\x01\x01\x02\x01\x01\x01\x02\x01\x01\a\x01\r\n\x01\t\x05\x03\x01\x01\x01\x01\x02\x01\x02\x01\x17\x02\x03\x12\x16\x15\b;\x16\x16\r\b\x01\x01\x01\x02\x01\r\x06\x02\x01\x0f"},
- {"crypto/tls/internal/fips140tls", "\x17\xa1\x02"},
- {"crypto/x509", "\x03\v\x01\x01\x01\x01\x01\x01\x01\x012\x05\x01\x01\x02\x05\x0e\x06\x02\x02\x03E\x038\x01\x02\b\x01\x01\x02\a\x10\x05\x01\x06\x02\x05\n\x01\x02\x0e\x02\x01\x01\x02\x03\x01"},
- {"crypto/x509/pkix", "d\x06\a\x8d\x01G"},
- {"database/sql", "\x03\nK\x16\x03\x80\x01\v\a\"\x05\b\x02\x03\x01\r\x02\x02\x02"},
- {"database/sql/driver", "\ra\x03\xb4\x01\x0f\x11"},
- {"debug/buildinfo", "\x03X\x02\x01\x01\b\a\x03e\x19\x02\x01+\x0f\x1f"},
- {"debug/dwarf", "\x03d\a\x03\x80\x011\x11\x01\x01"},
- {"debug/elf", "\x03\x06Q\r\a\x03e\x1a\x01,\x17\x01\x16"},
- {"debug/gosym", "\x03d\n\xc2\x01\x01\x01\x02"},
- {"debug/macho", "\x03\x06Q\r\ne\x1b,\x17\x01"},
- {"debug/pe", "\x03\x06Q\r\a\x03e\x1b,\x17\x01\x16"},
- {"debug/plan9obj", "g\a\x03e\x1b,"},
- {"embed", "n*@\x19\x01S"},
+ {"crypto/internal/hpke", "\x0e\x01\x01\x03\x056#+hM"},
+ {"crypto/internal/impl", "\xb9\x02"},
+ {"crypto/internal/randutil", "\xf5\x01\x12"},
+ {"crypto/internal/sysrand", "qo! \r\r\x01\x01\f\x06"},
+ {"crypto/internal/sysrand/internal/seccomp", "q"},
+ {"crypto/md5", "\x0e6-\x15\x16h"},
+ {"crypto/mlkem", "1"},
+ {"crypto/pbkdf2", "4\x0f\x01-\x15"},
+ {"crypto/rand", "\x1a\b\a\x1b\x04\x01(\x84\x01\rM"},
+ {"crypto/rc4", "%\x1f-\xc7\x01"},
+ {"crypto/rsa", "\x0e\f\x01\v\x0f\x0e\x01\x04\x06\a\x1c\x03\x123<\f\x01"},
+ {"crypto/sha1", "\x0e\f*\x03*\x15\x16\x15S"},
+ {"crypto/sha256", "\x0e\f\x1cP"},
+ {"crypto/sha3", "\x0e)O\xc9\x01"},
+ {"crypto/sha512", "\x0e\f\x1eN"},
+ {"crypto/subtle", "\x1e\x1c\x9c\x01X"},
+ {"crypto/tls", "\x03\b\x02\x01\x01\x01\x01\x02\x01\x01\x01\x02\x01\x01\t\x01\r\n\x01\n\x05\x03\x01\x01\x01\x01\x02\x01\x02\x01\x17\x02\x03\x12\x16\x15\b<\x16\x16\r\b\x01\x01\x01\x02\x01\r\x06\x02\x01\x0f"},
+ {"crypto/tls/internal/fips140tls", "\x17\xa5\x02"},
+ {"crypto/x509", "\x03\v\x01\x01\x01\x01\x01\x01\x01\x015\x05\x01\x01\x02\x05\x0e\x06\x02\x02\x03E\x039\x01\x02\b\x01\x01\x02\a\x10\x05\x01\x06\x02\x05\b\x02\x01\x02\x0e\x02\x01\x01\x02\x03\x01"},
+ {"crypto/x509/pkix", "g\x06\a\x8e\x01G"},
+ {"database/sql", "\x03\nN\x16\x03\x81\x01\v\a\"\x05\b\x02\x03\x01\r\x02\x02\x02"},
+ {"database/sql/driver", "\rd\x03\xb5\x01\x0f\x11"},
+ {"debug/buildinfo", "\x03[\x02\x01\x01\b\a\x03e\x1a\x02\x01+\x0f\x1f"},
+ {"debug/dwarf", "\x03g\a\x03\x81\x011\x11\x01\x01"},
+ {"debug/elf", "\x03\x06T\r\a\x03e\x1b\x01\f \x17\x01\x16"},
+ {"debug/gosym", "\x03g\n\xc3\x01\x01\x01\x02"},
+ {"debug/macho", "\x03\x06T\r\ne\x1c,\x17\x01"},
+ {"debug/pe", "\x03\x06T\r\a\x03e\x1c,\x17\x01\x16"},
+ {"debug/plan9obj", "j\a\x03e\x1c,"},
+ {"embed", "q*A\x19\x01S"},
{"embed/internal/embedtest", ""},
{"encoding", ""},
- {"encoding/ascii85", "\xf1\x01C"},
- {"encoding/asn1", "\x03k\x03\x8c\x01\x01'\r\x02\x01\x10\x03\x01"},
- {"encoding/base32", "\xf1\x01A\x02"},
- {"encoding/base64", "\x99\x01XA\x02"},
- {"encoding/binary", "n\x83\x01\f(\r\x05"},
- {"encoding/csv", "\x02\x01k\x03\x80\x01D\x12\x02"},
- {"encoding/gob", "\x02`\x05\a\x03e\x1b\v\x01\x03\x1d\b\x12\x01\x0f\x02"},
- {"encoding/hex", "n\x03\x80\x01A\x03"},
- {"encoding/json", "\x03\x01^\x04\b\x03\x80\x01\f(\r\x02\x01\x02\x10\x01\x01\x02"},
- {"encoding/pem", "\x03c\b\x83\x01A\x03"},
- {"encoding/xml", "\x02\x01_\f\x03\x80\x014\x05\n\x01\x02\x10\x02"},
- {"errors", "\xca\x01\x81\x01"},
- {"expvar", "kK?\b\v\x15\r\b\x02\x03\x01\x11"},
- {"flag", "b\f\x03\x80\x01,\b\x05\b\x02\x01\x10"},
- {"fmt", "nE>\f \b\r\x02\x03\x12"},
- {"go/ast", "\x03\x01m\x0e\x01q\x03)\b\r\x02\x01"},
- {"go/build", "\x02\x01k\x03\x01\x02\x02\a\x02\x01\x17\x1f\x04\x02\t\x19\x13\x01+\x01\x04\x01\a\b\x02\x01\x12\x02\x02"},
- {"go/build/constraint", "n\xc6\x01\x01\x12\x02"},
- {"go/constant", "q\x0f}\x01\x024\x01\x02\x12"},
- {"go/doc", "\x04m\x01\x05\t>31\x10\x02\x01\x12\x02"},
- {"go/doc/comment", "\x03n\xc1\x01\x01\x01\x01\x12\x02"},
- {"go/format", "\x03n\x01\v\x01\x02qD"},
- {"go/importer", "s\a\x01\x01\x04\x01p9"},
- {"go/internal/gccgoimporter", "\x02\x01X\x13\x03\x04\v\x01n\x02,\x01\x05\x11\x01\f\b"},
- {"go/internal/gcimporter", "\x02o\x0f\x010\x05\x0e-,\x15\x03\x02"},
- {"go/internal/srcimporter", "q\x01\x01\n\x03\x01p,\x01\x05\x12\x02\x14"},
- {"go/parser", "\x03k\x03\x01\x02\v\x01q\x01+\x06\x12"},
- {"go/printer", "q\x01\x02\x03\tq\f \x15\x02\x01\x02\v\x05\x02"},
- {"go/scanner", "\x03n\x0fq2\x10\x01\x13\x02"},
- {"go/token", "\x04m\x83\x01>\x02\x03\x01\x0f\x02"},
- {"go/types", "\x03\x01\x06d\x03\x01\x03\b\x03\x02\x15\x1f\x061\x04\x03\t \x06\a\b\x01\x01\x01\x02\x01\x0f\x02\x02"},
- {"go/version", "\xbb\x01z"},
- {"hash", "\xf1\x01"},
- {"hash/adler32", "n\x15\x16"},
- {"hash/crc32", "n\x15\x16\x15\x89\x01\x01\x13"},
- {"hash/crc64", "n\x15\x16\x9e\x01"},
- {"hash/fnv", "n\x15\x16g"},
- {"hash/maphash", "\x83\x01\x11!\x03\x93\x01"},
- {"html", "\xb5\x02\x02\x12"},
- {"html/template", "\x03h\x06\x18-;\x01\n!\x05\x01\x02\x03\f\x01\x02\f\x01\x03\x02"},
- {"image", "\x02l\x1ee\x0f4\x03\x01"},
+ {"encoding/ascii85", "\xf5\x01C"},
+ {"encoding/asn1", "\x03n\x03e(\x01'\r\x02\x01\x10\x03\x01"},
+ {"encoding/base32", "\xf5\x01A\x02"},
+ {"encoding/base64", "\x9c\x01YA\x02"},
+ {"encoding/binary", "q\x84\x01\f(\r\x05"},
+ {"encoding/csv", "\x02\x01n\x03\x81\x01D\x12\x02"},
+ {"encoding/gob", "\x02c\x05\a\x03e\x1c\v\x01\x03\x1d\b\x12\x01\x0f\x02"},
+ {"encoding/hex", "q\x03\x81\x01A\x03"},
+ {"encoding/json", "\x03\x01a\x04\b\x03\x81\x01\f(\r\x02\x01\x02\x10\x01\x01\x02"},
+ {"encoding/pem", "\x03f\b\x84\x01A\x03"},
+ {"encoding/xml", "\x02\x01b\f\x03\x81\x014\x05\n\x01\x02\x10\x02"},
+ {"errors", "\xcc\x01\x83\x01"},
+ {"expvar", "nK@\b\v\x15\r\b\x02\x03\x01\x11"},
+ {"flag", "e\f\x03\x81\x01,\b\x05\b\x02\x01\x10"},
+ {"fmt", "qE&\x19\f \b\r\x02\x03\x12"},
+ {"go/ast", "\x03\x01p\x0e\x01r\x03)\b\r\x02\x01\x12\x02"},
+ {"go/build", "\x02\x01n\x03\x01\x02\x02\a\x02\x01\x17\x1f\x04\x02\b\x1b\x13\x01+\x01\x04\x01\a\b\x02\x01\x12\x02\x02"},
+ {"go/build/constraint", "q\xc7\x01\x01\x12\x02"},
+ {"go/constant", "t\x0f~\x01\x024\x01\x02\x12"},
+ {"go/doc", "\x04p\x01\x05\t=51\x10\x02\x01\x12\x02"},
+ {"go/doc/comment", "\x03q\xc2\x01\x01\x01\x01\x12\x02"},
+ {"go/format", "\x03q\x01\v\x01\x02rD"},
+ {"go/importer", "v\a\x01\x01\x04\x01q9"},
+ {"go/internal/gccgoimporter", "\x02\x01[\x13\x03\x04\v\x01o\x02,\x01\x05\x11\x01\f\b"},
+ {"go/internal/gcimporter", "\x02r\x0f\x010\x05\r/,\x15\x03\x02"},
+ {"go/internal/srcimporter", "t\x01\x01\n\x03\x01q,\x01\x05\x12\x02\x14"},
+ {"go/parser", "\x03n\x03\x01\x02\v\x01r\x01+\x06\x12"},
+ {"go/printer", "t\x01\x02\x03\tr\f \x15\x02\x01\x02\v\x05\x02"},
+ {"go/scanner", "\x03q\x0fr2\x10\x01\x13\x02"},
+ {"go/token", "\x04p\x84\x01>\x02\x03\x01\x0f\x02"},
+ {"go/types", "\x03\x01\x06g\x03\x01\x03\b\x03\x024\x062\x04\x03\t \x06\a\b\x01\x01\x01\x02\x01\x0f\x02\x02"},
+ {"go/version", "\xbe\x01{"},
+ {"hash", "\xf5\x01"},
+ {"hash/adler32", "q\x15\x16"},
+ {"hash/crc32", "q\x15\x16\x15\x8a\x01\x01\x13"},
+ {"hash/crc64", "q\x15\x16\x9f\x01"},
+ {"hash/fnv", "q\x15\x16h"},
+ {"hash/maphash", "\x86\x01\x11<|"},
+ {"html", "\xb9\x02\x02\x12"},
+ {"html/template", "\x03k\x06\x18-<\x01\n!\x05\x01\x02\x03\f\x01\x02\f\x01\x03\x02"},
+ {"image", "\x02o\x1ef\x0f4\x03\x01"},
{"image/color", ""},
- {"image/color/palette", "\x8c\x01"},
- {"image/draw", "\x8b\x01\x01\x04"},
- {"image/gif", "\x02\x01\x05f\x03\x1a\x01\x01\x01\vX"},
- {"image/internal/imageutil", "\x8b\x01"},
- {"image/jpeg", "\x02l\x1d\x01\x04a"},
- {"image/png", "\x02\a^\n\x12\x02\x06\x01eC"},
- {"index/suffixarray", "\x03d\a\x83\x01\f+\n\x01"},
- {"internal/abi", "\xb5\x01\x96\x01"},
- {"internal/asan", "\xcb\x02"},
- {"internal/bisect", "\xaa\x02\r\x01"},
- {"internal/buildcfg", "qGe\x06\x02\x05\n\x01"},
- {"internal/bytealg", "\xae\x01\x9d\x01"},
+ {"image/color/palette", "\x8f\x01"},
+ {"image/draw", "\x8e\x01\x01\x04"},
+ {"image/gif", "\x02\x01\x05i\x03\x1a\x01\x01\x01\vY"},
+ {"image/internal/imageutil", "\x8e\x01"},
+ {"image/jpeg", "\x02o\x1d\x01\x04b"},
+ {"image/png", "\x02\aa\n\x12\x02\x06\x01fC"},
+ {"index/suffixarray", "\x03g\a\x84\x01\f+\n\x01"},
+ {"internal/abi", "\xb8\x01\x97\x01"},
+ {"internal/asan", "\xcf\x02"},
+ {"internal/bisect", "\xae\x02\r\x01"},
+ {"internal/buildcfg", "tGf\x06\x02\x05\n\x01"},
+ {"internal/bytealg", "\xb1\x01\x9e\x01"},
{"internal/byteorder", ""},
{"internal/cfg", ""},
- {"internal/cgrouptest", "q[Q\x06\x0f\x02\x01\x04\x01"},
- {"internal/chacha8rand", "\x99\x01\x15\a\x96\x01"},
+ {"internal/cgrouptest", "tZS\x06\x0f\x02\x01\x04\x01"},
+ {"internal/chacha8rand", "\x9c\x01\x15\a\x97\x01"},
{"internal/copyright", ""},
{"internal/coverage", ""},
{"internal/coverage/calloc", ""},
- {"internal/coverage/cfile", "k\x06\x16\x17\x01\x02\x01\x01\x01\x01\x01\x01\x01#\x02$,\x06\a\n\x01\x03\r\x06"},
- {"internal/coverage/cformat", "\x04m-\x04O\v6\x01\x02\r"},
- {"internal/coverage/cmerge", "q-_"},
- {"internal/coverage/decodecounter", "g\n-\v\x02F,\x17\x17"},
- {"internal/coverage/decodemeta", "\x02e\n\x16\x17\v\x02F,"},
- {"internal/coverage/encodecounter", "\x02e\n-\f\x01\x02D\v!\x15"},
- {"internal/coverage/encodemeta", "\x02\x01d\n\x12\x04\x17\r\x02D,."},
- {"internal/coverage/pods", "\x04m-\x7f\x06\x05\n\x02\x01"},
- {"internal/coverage/rtcov", "\xcb\x02"},
- {"internal/coverage/slicereader", "g\n\x80\x01Z"},
- {"internal/coverage/slicewriter", "q\x80\x01"},
- {"internal/coverage/stringtab", "q8\x04D"},
+ {"internal/coverage/cfile", "n\x06\x16\x17\x01\x02\x01\x01\x01\x01\x01\x01\x01\"\x02&,\x06\a\n\x01\x03\r\x06"},
+ {"internal/coverage/cformat", "\x04p-\x04P\v6\x01\x02\r"},
+ {"internal/coverage/cmerge", "t-`"},
+ {"internal/coverage/decodecounter", "j\n-\v\x02G,\x17\x17"},
+ {"internal/coverage/decodemeta", "\x02h\n\x16\x17\v\x02G,"},
+ {"internal/coverage/encodecounter", "\x02h\n-\f\x01\x02E\v!\x15"},
+ {"internal/coverage/encodemeta", "\x02\x01g\n\x12\x04\x17\r\x02E,."},
+ {"internal/coverage/pods", "\x04p-\x80\x01\x06\x05\n\x02\x01"},
+ {"internal/coverage/rtcov", "\xcf\x02"},
+ {"internal/coverage/slicereader", "j\n\x81\x01Z"},
+ {"internal/coverage/slicewriter", "t\x81\x01"},
+ {"internal/coverage/stringtab", "t8\x04E"},
{"internal/coverage/test", ""},
{"internal/coverage/uleb128", ""},
- {"internal/cpu", "\xcb\x02"},
- {"internal/dag", "\x04m\xc1\x01\x03"},
- {"internal/diff", "\x03n\xc2\x01\x02"},
- {"internal/exportdata", "\x02\x01k\x03\x02c\x1b,\x01\x05\x11\x01\x02"},
- {"internal/filepathlite", "n*@\x1a@"},
- {"internal/fmtsort", "\x04\xa1\x02\r"},
- {"internal/fuzz", "\x03\nB\x18\x04\x03\x03\x01\v\x036;\f\x03\x1d\x01\x05\x02\x05\n\x01\x02\x01\x01\f\x04\x02"},
+ {"internal/cpu", "\xcf\x02"},
+ {"internal/dag", "\x04p\xc2\x01\x03"},
+ {"internal/diff", "\x03q\xc3\x01\x02"},
+ {"internal/exportdata", "\x02\x01n\x03\x02c\x1c,\x01\x05\x11\x01\x02"},
+ {"internal/filepathlite", "q*A\x1a@"},
+ {"internal/fmtsort", "\x04\xa5\x02\r"},
+ {"internal/fuzz", "\x03\nE\x18\x04\x03\x03\x01\v\x036<\f\x03\x1d\x01\x05\x02\x05\n\x01\x02\x01\x01\f\x04\x02"},
{"internal/goarch", ""},
- {"internal/godebug", "\x96\x01!\x80\x01\x01\x13"},
+ {"internal/godebug", "\x99\x01!\x81\x01\x01\x13"},
{"internal/godebugs", ""},
{"internal/goexperiment", ""},
{"internal/goos", ""},
- {"internal/goroot", "\x9d\x02\x01\x05\x12\x02"},
+ {"internal/goroot", "\xa1\x02\x01\x05\x12\x02"},
{"internal/gover", "\x04"},
{"internal/goversion", ""},
- {"internal/itoa", ""},
- {"internal/lazyregexp", "\x9d\x02\v\r\x02"},
- {"internal/lazytemplate", "\xf1\x01,\x18\x02\f"},
- {"internal/msan", "\xcb\x02"},
+ {"internal/lazyregexp", "\xa1\x02\v\r\x02"},
+ {"internal/lazytemplate", "\xf5\x01,\x18\x02\f"},
+ {"internal/msan", "\xcf\x02"},
{"internal/nettrace", ""},
- {"internal/obscuretestdata", "f\x8b\x01,"},
- {"internal/oserror", "n"},
- {"internal/pkgbits", "\x03L\x18\a\x03\x04\vq\r\x1f\r\n\x01"},
+ {"internal/obscuretestdata", "i\x8c\x01,"},
+ {"internal/oserror", "q"},
+ {"internal/pkgbits", "\x03O\x18\a\x03\x04\vr\r\x1f\r\n\x01"},
{"internal/platform", ""},
- {"internal/poll", "nO\x1f\x159\r\x01\x01\f\x06"},
- {"internal/profile", "\x03\x04g\x03\x80\x017\v\x01\x01\x10"},
+ {"internal/poll", "qj\x05\x159\r\x01\x01\f\x06"},
+ {"internal/profile", "\x03\x04j\x03\x81\x017\n\x01\x01\x01\x10"},
{"internal/profilerecord", ""},
- {"internal/race", "\x94\x01\xb7\x01"},
- {"internal/reflectlite", "\x94\x01!9\b\x13\x01\a\x03E;\x01\x03\a\x01\x03\x02\x02\x01\x02\x06\x02\x01\x01\n\x01\x01\x05\x01\x02\x05\b\x01\x01\x01\x02\x01\r\x02\x02\x02\b\x01\x01\x01"},
- {"net/http/cgi", "\x02Q\x1b\x03\x80\x01\x04\a\v\x01\x13\x01\x01\x01\x04\x01\x05\x02\b\x02\x01\x10\x0e"},
- {"net/http/cookiejar", "\x04j\x03\x96\x01\x01\b\f\x16\x03\x02\x0e\x04"},
- {"net/http/fcgi", "\x02\x01\nZ\a\x03\x80\x01\x16\x01\x01\x14\x18\x02\x0e"},
- {"net/http/httptest", "\x02\x01\nF\x02\x1b\x01\x80\x01\x04\x12\x01\n\t\x02\x17\x01\x02\x0e\x0e"},
- {"net/http/httptrace", "\rFnF\x14\n "},
- {"net/http/httputil", "\x02\x01\na\x03\x80\x01\x04\x0f\x03\x01\x05\x02\x01\v\x01\x19\x02\x0e\x0e"},
- {"net/http/internal", "\x02\x01k\x03\x80\x01"},
- {"net/http/internal/ascii", "\xb5\x02\x12"},
- {"net/http/internal/httpcommon", "\ra\x03\x9c\x01\x0e\x01\x17\x01\x01\x02\x1c\x02"},
- {"net/http/internal/testcert", "\xb5\x02"},
- {"net/http/pprof", "\x02\x01\nd\x18-\x11*\x04\x13\x14\x01\r\x04\x03\x01\x02\x01\x10"},
+ {"log/slog/internal/benchmarks", "\rd\x03\x81\x01\x06\x03:\x11"},
+ {"log/slog/internal/buffer", "\xbb\x02"},
+ {"log/syslog", "q\x03\x85\x01\x12\x16\x18\x02\x0e"},
+ {"maps", "\xf8\x01W"},
+ {"math", "\xb1\x01SK"},
+ {"math/big", "\x03n\x03(\x15D\f\x03\x020\x02\x01\x02\x14"},
+ {"math/big/internal/asmgen", "\x03\x01p\x90\x012\x03"},
+ {"math/bits", "\xcf\x02"},
+ {"math/cmplx", "\x81\x02\x03"},
+ {"math/rand", "\xb9\x01H:\x01\x13"},
+ {"math/rand/v2", "q+\x03b\x03K"},
+ {"mime", "\x02\x01f\b\x03\x81\x01\v!\x15\x03\x02\x10\x02"},
+ {"mime/multipart", "\x02\x01K#\x03E<\v\x01\a\x02\x15\x02\x06\x0f\x02\x01\x16"},
+ {"mime/quotedprintable", "\x02\x01q\x81\x01"},
+ {"net", "\x04\td*\x1e\n\x05\x12\x01\x01\x04\x15\x01%\x06\r\b\x05\x01\x01\f\x06\a"},
+ {"net/http", "\x02\x01\x03\x01\x04\x02A\b\x13\x01\a\x03E<\x01\x03\a\x01\x03\x02\x02\x01\x02\x06\x02\x01\x01\n\x01\x01\x05\x01\x02\x05\b\x01\x01\x01\x02\x01\r\x02\x02\x02\b\x01\x01\x01"},
+ {"net/http/cgi", "\x02T\x1b\x03\x81\x01\x04\a\v\x01\x13\x01\x01\x01\x04\x01\x05\x02\b\x02\x01\x10\x0e"},
+ {"net/http/cookiejar", "\x04m\x03\x97\x01\x01\b\f\x16\x03\x02\x0e\x04"},
+ {"net/http/fcgi", "\x02\x01\n]\a\x03\x81\x01\x16\x01\x01\x14\x18\x02\x0e"},
+ {"net/http/httptest", "\x02\x01\nI\x02\x1b\x01\x81\x01\x04\x12\x01\n\t\x02\x17\x01\x02\x0e\x0e"},
+ {"net/http/httptrace", "\rImH\x14\n "},
+ {"net/http/httputil", "\x02\x01\nd\x03\x81\x01\x04\x0f\x03\x01\x05\x02\x01\v\x01\x19\x02\x0e\x0e"},
+ {"net/http/internal", "\x02\x01n\x03\x81\x01"},
+ {"net/http/internal/ascii", "\xb9\x02\x12"},
+ {"net/http/internal/httpcommon", "\rd\x03\x9d\x01\x0e\x01\x17\x01\x01\x02\x1c\x02"},
+ {"net/http/internal/testcert", "\xb9\x02"},
+ {"net/http/pprof", "\x02\x01\ng\x18-\x02\x0e,\x04\x13\x14\x01\r\x04\x03\x01\x02\x01\x10"},
{"net/internal/cgotest", ""},
- {"net/internal/socktest", "q\xc6\x01\x02"},
- {"net/mail", "\x02l\x03\x80\x01\x04\x0f\x03\x14\x1a\x02\x0e\x04"},
- {"net/netip", "\x04j*\x01$@\x034\x16"},
- {"net/rpc", "\x02g\x05\x03\x0f\ng\x04\x12\x01\x1d\r\x03\x02"},
- {"net/rpc/jsonrpc", "k\x03\x03\x80\x01\x16\x11\x1f"},
- {"net/smtp", "\x19/\v\x13\b\x03\x80\x01\x16\x14\x1a"},
- {"net/textproto", "\x02\x01k\x03\x80\x01\f\n-\x01\x02\x14"},
- {"net/url", "n\x03\x8b\x01&\x10\x02\x01\x16"},
- {"os", "n*\x01\x19\x03\b\t\x12\x03\x01\x05\x10\x018\b\x05\x01\x01\f\x06"},
- {"os/exec", "\x03\naH%\x01\x15\x01+\x06\a\n\x01\x04\f"},
- {"os/exec/internal/fdtest", "\xb9\x02"},
- {"os/signal", "\r\x90\x02\x15\x05\x02"},
- {"os/user", "\x02\x01k\x03\x80\x01,\r\n\x01\x02"},
- {"path", "n*\xb1\x01"},
- {"path/filepath", "n*\x1a@+\r\b\x03\x04\x10"},
- {"plugin", "n"},
- {"reflect", "n&\x04\x1d\b\f\x06\x04\x1b\x06\t-\n\x03\x10\x02\x02"},
+ {"net/internal/socktest", "t\xc7\x01\x02"},
+ {"net/mail", "\x02o\x03\x81\x01\x04\x0f\x03\x14\x1a\x02\x0e\x04"},
+ {"net/netip", "\x04m*\x01e\x034\x16"},
+ {"net/rpc", "\x02j\x05\x03\x0f\nh\x04\x12\x01\x1d\r\x03\x02"},
+ {"net/rpc/jsonrpc", "n\x03\x03\x81\x01\x16\x11\x1f"},
+ {"net/smtp", "\x192\v\x13\b\x03\x81\x01\x16\x14\x1a"},
+ {"net/textproto", "\x02\x01n\x03\x81\x01\f\n-\x01\x02\x14"},
+ {"net/url", "q\x03\xa7\x01\v\x10\x02\x01\x16"},
+ {"os", "q*\x01\x19\x03\x10\x13\x01\x03\x01\x05\x10\x018\b\x05\x01\x01\f\x06"},
+ {"os/exec", "\x03\ndH&\x01\x15\x01+\x06\a\n\x01\x04\f"},
+ {"os/exec/internal/fdtest", "\xbd\x02"},
+ {"os/signal", "\r\x94\x02\x15\x05\x02"},
+ {"os/user", "\x02\x01n\x03\x81\x01,\r\n\x01\x02"},
+ {"path", "q*\xb2\x01"},
+ {"path/filepath", "q*\x1aA+\r\b\x03\x04\x10"},
+ {"plugin", "q"},
+ {"reflect", "q&\x04\x1d\x13\b\x03\x05\x17\x06\t-\n\x03\x10\x02\x02"},
{"reflect/internal/example1", ""},
{"reflect/internal/example2", ""},
- {"regexp", "\x03\xee\x018\t\x02\x01\x02\x10\x02"},
- {"regexp/syntax", "\xb2\x02\x01\x01\x01\x02\x10\x02"},
- {"runtime", "\x94\x01\x04\x01\x03\f\x06\a\x02\x01\x01\x0f\x03\x01\x01\x01\x01\x01\x02\x01\x01\x04\x10c"},
- {"runtime/coverage", "\xa0\x01Q"},
- {"runtime/debug", "qUW\r\b\x02\x01\x10\x06"},
- {"runtime/metrics", "\xb7\x01F-!"},
- {"runtime/pprof", "\x02\x01\x01\x03\x06Z\a\x03#4)\f \r\b\x01\x01\x01\x02\x02\t\x03\x06"},
- {"runtime/race", "\xb0\x02"},
+ {"regexp", "\x03\xf2\x018\t\x02\x01\x02\x10\x02"},
+ {"regexp/syntax", "\xb6\x02\x01\x01\x01\x02\x10\x02"},
+ {"runtime", "\x97\x01\x04\x01\x03\f\x06\a\x02\x01\x01\x0e\x03\x01\x01\x01\x02\x01\x01\x02\x01\x04\x01\x10c"},
+ {"runtime/coverage", "\xa3\x01R"},
+ {"runtime/debug", "tTY\r\b\x02\x01\x10\x06"},
+ {"runtime/metrics", "\xba\x01G-!"},
+ {"runtime/pprof", "\x02\x01\x01\x03\x06]\a\x03#$\x0f+\f \r\b\x01\x01\x01\x02\x02\t\x03\x06"},
+ {"runtime/race", "\xb4\x02"},
{"runtime/race/internal/amd64v1", ""},
- {"runtime/trace", "\ra\x03w\t9\b\x05\x01\r\x06"},
- {"slices", "\x04\xf0\x01\fK"},
- {"sort", "\xca\x0162"},
- {"strconv", "n*@%\x03I"},
- {"strings", "n&\x04@\x19\x03\f7\x10\x02\x02"},
+ {"runtime/trace", "\rd\x03x\t9\b\x05\x01\r\x06"},
+ {"slices", "\x04\xf4\x01\fK"},
+ {"sort", "\xcc\x0182"},
+ {"strconv", "q*@\x01q"},
+ {"strings", "q&\x04A\x19\x03\f7\x10\x02\x02"},
{"structs", ""},
- {"sync", "\xc9\x01\x10\x01P\x0e\x13"},
- {"sync/atomic", "\xcb\x02"},
- {"syscall", "n'\x03\x01\x1c\b\x03\x03\x06\vV\b\x05\x01\x13"},
- {"testing", "\x03\na\x02\x01X\x14\x14\f\x05\x1b\x06\x02\x05\x02\x05\x01\x02\x01\x02\x01\r\x02\x02\x02"},
- {"testing/fstest", "n\x03\x80\x01\x01\n&\x10\x03\b\b"},
- {"testing/internal/testdeps", "\x02\v\xa7\x01-\x10,\x03\x05\x03\x06\a\x02\x0e"},
- {"testing/iotest", "\x03k\x03\x80\x01\x04"},
- {"testing/quick", "p\x01\x8c\x01\x05#\x10\x10"},
- {"testing/slogtest", "\ra\x03\x86\x01.\x05\x10\v"},
- {"testing/synctest", "\xda\x01`\x11"},
- {"text/scanner", "\x03n\x80\x01,*\x02"},
- {"text/tabwriter", "q\x80\x01X"},
- {"text/template", "n\x03B>\x01\n \x01\x05\x01\x02\x05\v\x02\r\x03\x02"},
- {"text/template/parse", "\x03n\xb9\x01\n\x01\x12\x02"},
- {"time", "n*\x1e\"(*\r\x02\x12"},
- {"time/tzdata", "n\xcb\x01\x12"},
+ {"sync", "\xcb\x01\x12\x01P\x0e\x13"},
+ {"sync/atomic", "\xcf\x02"},
+ {"syscall", "q'\x03\x01\x1c\n\x03\x06\f\x04S\b\x05\x01\x13"},
+ {"testing", "\x03\nd\x02\x01W\x16\x14\f\x05\x1b\x06\x02\x05\x02\x05\x01\x02\x01\x02\x01\r\x02\x04"},
+ {"testing/fstest", "q\x03\x81\x01\x01\n&\x10\x03\b\b"},
+ {"testing/internal/testdeps", "\x02\v\xaa\x01.\x10,\x03\x05\x03\x06\a\x02\x0e"},
+ {"testing/iotest", "\x03n\x03\x81\x01\x04"},
+ {"testing/quick", "s\x01\x8d\x01\x05#\x10\x10"},
+ {"testing/slogtest", "\rd\x03\x87\x01.\x05\x10\v"},
+ {"testing/synctest", "\xde\x01`\x11"},
+ {"text/scanner", "\x03q\x81\x01,*\x02"},
+ {"text/tabwriter", "t\x81\x01X"},
+ {"text/template", "q\x03B?\x01\n \x01\x05\x01\x02\x05\v\x02\r\x03\x02"},
+ {"text/template/parse", "\x03q\xba\x01\n\x01\x12\x02"},
+ {"time", "q*\x1e#(*\r\x02\x12"},
+ {"time/tzdata", "q\xcc\x01\x12"},
{"unicode", ""},
{"unicode/utf16", ""},
{"unicode/utf8", ""},
- {"unique", "\x94\x01!#\x01Q\r\x01\x13\x12"},
+ {"unique", "\x97\x01!$\x01Q\r\x01\x13\x12"},
{"unsafe", ""},
- {"vendor/golang.org/x/crypto/chacha20", "\x10W\a\x92\x01*&"},
- {"vendor/golang.org/x/crypto/chacha20poly1305", "\x10W\a\xde\x01\x04\x01\a"},
- {"vendor/golang.org/x/crypto/cryptobyte", "d\n\x03\x8d\x01' \n"},
+ {"vendor/golang.org/x/crypto/chacha20", "\x10Z\a\x93\x01*&"},
+ {"vendor/golang.org/x/crypto/chacha20poly1305", "\x10Z\a\xdf\x01\x04\x01\a"},
+ {"vendor/golang.org/x/crypto/cryptobyte", "g\n\x03\x8e\x01' \n"},
{"vendor/golang.org/x/crypto/cryptobyte/asn1", ""},
- {"vendor/golang.org/x/crypto/internal/alias", "\xcb\x02"},
- {"vendor/golang.org/x/crypto/internal/poly1305", "R\x15\x99\x01"},
- {"vendor/golang.org/x/net/dns/dnsmessage", "n"},
- {"vendor/golang.org/x/net/http/httpguts", "\x87\x02\x14\x1a\x14\r"},
- {"vendor/golang.org/x/net/http/httpproxy", "n\x03\x96\x01\x10\x05\x01\x18\x14\r"},
- {"vendor/golang.org/x/net/http2/hpack", "\x03k\x03\x80\x01F"},
- {"vendor/golang.org/x/net/idna", "q\x8c\x018\x14\x10\x02\x01"},
- {"vendor/golang.org/x/net/nettest", "\x03d\a\x03\x80\x01\x11\x05\x16\x01\f\n\x01\x02\x02\x01\v"},
- {"vendor/golang.org/x/sys/cpu", "\x9d\x02\r\n\x01\x16"},
- {"vendor/golang.org/x/text/secure/bidirule", "n\xdb\x01\x11\x01"},
- {"vendor/golang.org/x/text/transform", "\x03k\x83\x01X"},
- {"vendor/golang.org/x/text/unicode/bidi", "\x03\bf\x84\x01>\x16"},
- {"vendor/golang.org/x/text/unicode/norm", "g\n\x80\x01F\x12\x11"},
- {"weak", "\x94\x01\x96\x01!"},
+ {"vendor/golang.org/x/crypto/internal/alias", "\xcf\x02"},
+ {"vendor/golang.org/x/crypto/internal/poly1305", "U\x15\x9a\x01"},
+ {"vendor/golang.org/x/net/dns/dnsmessage", "q"},
+ {"vendor/golang.org/x/net/http/httpguts", "\x8b\x02\x14\x1a\x14\r"},
+ {"vendor/golang.org/x/net/http/httpproxy", "q\x03\x97\x01\x10\x05\x01\x18\x14\r"},
+ {"vendor/golang.org/x/net/http2/hpack", "\x03n\x03\x81\x01F"},
+ {"vendor/golang.org/x/net/idna", "t\x8d\x018\x14\x10\x02\x01"},
+ {"vendor/golang.org/x/net/nettest", "\x03g\a\x03\x81\x01\x11\x05\x16\x01\f\n\x01\x02\x02\x01\v"},
+ {"vendor/golang.org/x/sys/cpu", "\xa1\x02\r\n\x01\x16"},
+ {"vendor/golang.org/x/text/secure/bidirule", "q\xdc\x01\x11\x01"},
+ {"vendor/golang.org/x/text/transform", "\x03n\x84\x01X"},
+ {"vendor/golang.org/x/text/unicode/bidi", "\x03\bi\x85\x01>\x16"},
+ {"vendor/golang.org/x/text/unicode/norm", "j\n\x81\x01F\x12\x11"},
+ {"weak", "\x97\x01\x97\x01!"},
}
+
+// bootstrap is the list of bootstrap packages extracted from cmd/dist.
+var bootstrap = map[string]bool{
+ "cmp": true,
+ "cmd/asm": true,
+ "cmd/asm/internal/arch": true,
+ "cmd/asm/internal/asm": true,
+ "cmd/asm/internal/flags": true,
+ "cmd/asm/internal/lex": true,
+ "cmd/cgo": true,
+ "cmd/compile": true,
+ "cmd/compile/internal/abi": true,
+ "cmd/compile/internal/abt": true,
+ "cmd/compile/internal/amd64": true,
+ "cmd/compile/internal/arm": true,
+ "cmd/compile/internal/arm64": true,
+ "cmd/compile/internal/base": true,
+ "cmd/compile/internal/bitvec": true,
+ "cmd/compile/internal/compare": true,
+ "cmd/compile/internal/coverage": true,
+ "cmd/compile/internal/deadlocals": true,
+ "cmd/compile/internal/devirtualize": true,
+ "cmd/compile/internal/dwarfgen": true,
+ "cmd/compile/internal/escape": true,
+ "cmd/compile/internal/gc": true,
+ "cmd/compile/internal/importer": true,
+ "cmd/compile/internal/inline": true,
+ "cmd/compile/internal/inline/inlheur": true,
+ "cmd/compile/internal/inline/interleaved": true,
+ "cmd/compile/internal/ir": true,
+ "cmd/compile/internal/liveness": true,
+ "cmd/compile/internal/logopt": true,
+ "cmd/compile/internal/loong64": true,
+ "cmd/compile/internal/loopvar": true,
+ "cmd/compile/internal/mips": true,
+ "cmd/compile/internal/mips64": true,
+ "cmd/compile/internal/noder": true,
+ "cmd/compile/internal/objw": true,
+ "cmd/compile/internal/pgoir": true,
+ "cmd/compile/internal/pkginit": true,
+ "cmd/compile/internal/ppc64": true,
+ "cmd/compile/internal/rangefunc": true,
+ "cmd/compile/internal/reflectdata": true,
+ "cmd/compile/internal/riscv64": true,
+ "cmd/compile/internal/rttype": true,
+ "cmd/compile/internal/s390x": true,
+ "cmd/compile/internal/ssa": true,
+ "cmd/compile/internal/ssagen": true,
+ "cmd/compile/internal/staticdata": true,
+ "cmd/compile/internal/staticinit": true,
+ "cmd/compile/internal/syntax": true,
+ "cmd/compile/internal/test": true,
+ "cmd/compile/internal/typebits": true,
+ "cmd/compile/internal/typecheck": true,
+ "cmd/compile/internal/types": true,
+ "cmd/compile/internal/types2": true,
+ "cmd/compile/internal/walk": true,
+ "cmd/compile/internal/wasm": true,
+ "cmd/compile/internal/x86": true,
+ "cmd/internal/archive": true,
+ "cmd/internal/bio": true,
+ "cmd/internal/codesign": true,
+ "cmd/internal/dwarf": true,
+ "cmd/internal/edit": true,
+ "cmd/internal/gcprog": true,
+ "cmd/internal/goobj": true,
+ "cmd/internal/hash": true,
+ "cmd/internal/macho": true,
+ "cmd/internal/obj": true,
+ "cmd/internal/obj/arm": true,
+ "cmd/internal/obj/arm64": true,
+ "cmd/internal/obj/loong64": true,
+ "cmd/internal/obj/mips": true,
+ "cmd/internal/obj/ppc64": true,
+ "cmd/internal/obj/riscv": true,
+ "cmd/internal/obj/s390x": true,
+ "cmd/internal/obj/wasm": true,
+ "cmd/internal/obj/x86": true,
+ "cmd/internal/objabi": true,
+ "cmd/internal/par": true,
+ "cmd/internal/pgo": true,
+ "cmd/internal/pkgpath": true,
+ "cmd/internal/quoted": true,
+ "cmd/internal/src": true,
+ "cmd/internal/sys": true,
+ "cmd/internal/telemetry": true,
+ "cmd/internal/telemetry/counter": true,
+ "cmd/link": true,
+ "cmd/link/internal/amd64": true,
+ "cmd/link/internal/arm": true,
+ "cmd/link/internal/arm64": true,
+ "cmd/link/internal/benchmark": true,
+ "cmd/link/internal/dwtest": true,
+ "cmd/link/internal/ld": true,
+ "cmd/link/internal/loadelf": true,
+ "cmd/link/internal/loader": true,
+ "cmd/link/internal/loadmacho": true,
+ "cmd/link/internal/loadpe": true,
+ "cmd/link/internal/loadxcoff": true,
+ "cmd/link/internal/loong64": true,
+ "cmd/link/internal/mips": true,
+ "cmd/link/internal/mips64": true,
+ "cmd/link/internal/ppc64": true,
+ "cmd/link/internal/riscv64": true,
+ "cmd/link/internal/s390x": true,
+ "cmd/link/internal/sym": true,
+ "cmd/link/internal/wasm": true,
+ "cmd/link/internal/x86": true,
+ "compress/flate": true,
+ "compress/zlib": true,
+ "container/heap": true,
+ "debug/dwarf": true,
+ "debug/elf": true,
+ "debug/macho": true,
+ "debug/pe": true,
+ "go/build/constraint": true,
+ "go/constant": true,
+ "go/version": true,
+ "internal/abi": true,
+ "internal/coverage": true,
+ "cmd/internal/cov/covcmd": true,
+ "internal/bisect": true,
+ "internal/buildcfg": true,
+ "internal/exportdata": true,
+ "internal/goarch": true,
+ "internal/godebugs": true,
+ "internal/goexperiment": true,
+ "internal/goroot": true,
+ "internal/gover": true,
+ "internal/goversion": true,
+ "internal/lazyregexp": true,
+ "internal/pkgbits": true,
+ "internal/platform": true,
+ "internal/profile": true,
+ "internal/race": true,
+ "internal/runtime/gc": true,
+ "internal/saferio": true,
+ "internal/syscall/unix": true,
+ "internal/types/errors": true,
+ "internal/unsafeheader": true,
+ "internal/xcoff": true,
+ "internal/zstd": true,
+ "math/bits": true,
+ "sort": true,
+}
+
+// BootstrapVersion is the minor version of Go used during toolchain
+// bootstrapping. Packages for which [IsBootstrapPackage] must not use
+// features of Go newer than this version.
+const BootstrapVersion = Version(24) // go1.24.6
diff --git a/vendor/golang.org/x/tools/internal/stdlib/import.go b/vendor/golang.org/x/tools/internal/stdlib/import.go
index f6909878..8ecc672b 100644
--- a/vendor/golang.org/x/tools/internal/stdlib/import.go
+++ b/vendor/golang.org/x/tools/internal/stdlib/import.go
@@ -87,3 +87,11 @@ func find(pkg string) (int, bool) {
return strings.Compare(p.name, n)
})
}
+
+// IsBootstrapPackage reports whether pkg is one of the low-level
+// packages in the Go distribution that must compile with the older
+// language version specified by [BootstrapVersion] during toolchain
+// bootstrapping; see golang.org/s/go15bootstrap.
+func IsBootstrapPackage(pkg string) bool {
+ return bootstrap[pkg]
+}
diff --git a/vendor/golang.org/x/tools/internal/stdlib/manifest.go b/vendor/golang.org/x/tools/internal/stdlib/manifest.go
index c1faa50d..362f23c4 100644
--- a/vendor/golang.org/x/tools/internal/stdlib/manifest.go
+++ b/vendor/golang.org/x/tools/internal/stdlib/manifest.go
@@ -225,6 +225,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*Buffer).Grow", Method, 1, ""},
{"(*Buffer).Len", Method, 0, ""},
{"(*Buffer).Next", Method, 0, ""},
+ {"(*Buffer).Peek", Method, 26, ""},
{"(*Buffer).Read", Method, 0, ""},
{"(*Buffer).ReadByte", Method, 0, ""},
{"(*Buffer).ReadBytes", Method, 0, ""},
@@ -1628,6 +1629,7 @@ var PackageSymbols = map[string][]Symbol{
{"ResultNoRows", Var, 0, ""},
{"Rows", Type, 0, ""},
{"RowsAffected", Type, 0, ""},
+ {"RowsColumnScanner", Type, 26, ""},
{"RowsColumnTypeDatabaseTypeName", Type, 8, ""},
{"RowsColumnTypeLength", Type, 8, ""},
{"RowsColumnTypeNullable", Type, 8, ""},
@@ -4953,6 +4955,7 @@ var PackageSymbols = map[string][]Symbol{
},
"errors": {
{"As", Func, 13, "func(err error, target any) bool"},
+ {"AsType", Func, 26, "func[E error](err error) (E, bool)"},
{"ErrUnsupported", Var, 21, ""},
{"Is", Func, 13, "func(err error, target error) bool"},
{"Join", Func, 20, "func(errs ...error) error"},
@@ -5090,7 +5093,7 @@ var PackageSymbols = map[string][]Symbol{
{"Append", Func, 19, "func(b []byte, a ...any) []byte"},
{"Appendf", Func, 19, "func(b []byte, format string, a ...any) []byte"},
{"Appendln", Func, 19, "func(b []byte, a ...any) []byte"},
- {"Errorf", Func, 0, "func(format string, a ...any) error"},
+ {"Errorf", Func, 0, "func(format string, a ...any) (err error)"},
{"FormatString", Func, 20, "func(state State, verb rune) string"},
{"Formatter", Type, 0, ""},
{"Fprint", Func, 0, "func(w io.Writer, a ...any) (n int, err error)"},
@@ -5155,6 +5158,9 @@ var PackageSymbols = map[string][]Symbol{
{"(*DeclStmt).Pos", Method, 0, ""},
{"(*DeferStmt).End", Method, 0, ""},
{"(*DeferStmt).Pos", Method, 0, ""},
+ {"(*Directive).End", Method, 26, ""},
+ {"(*Directive).ParseArgs", Method, 26, ""},
+ {"(*Directive).Pos", Method, 26, ""},
{"(*Ellipsis).End", Method, 0, ""},
{"(*Ellipsis).Pos", Method, 0, ""},
{"(*EmptyStmt).End", Method, 0, ""},
@@ -5320,6 +5326,15 @@ var PackageSymbols = map[string][]Symbol{
{"DeferStmt", Type, 0, ""},
{"DeferStmt.Call", Field, 0, ""},
{"DeferStmt.Defer", Field, 0, ""},
+ {"Directive", Type, 26, ""},
+ {"Directive.Args", Field, 26, ""},
+ {"Directive.ArgsPos", Field, 26, ""},
+ {"Directive.Name", Field, 26, ""},
+ {"Directive.Slash", Field, 26, ""},
+ {"Directive.Tool", Field, 26, ""},
+ {"DirectiveArg", Type, 26, ""},
+ {"DirectiveArg.Arg", Field, 26, ""},
+ {"DirectiveArg.Pos", Field, 26, ""},
{"Ellipsis", Type, 0, ""},
{"Ellipsis.Ellipsis", Field, 0, ""},
{"Ellipsis.Elt", Field, 0, ""},
@@ -5469,6 +5484,7 @@ var PackageSymbols = map[string][]Symbol{
{"ParenExpr.Lparen", Field, 0, ""},
{"ParenExpr.Rparen", Field, 0, ""},
{"ParenExpr.X", Field, 0, ""},
+ {"ParseDirective", Func, 26, "func(pos token.Pos, c string) (Directive, bool)"},
{"Pkg", Const, 0, ""},
{"Preorder", Func, 23, "func(root Node) iter.Seq[Node]"},
{"PreorderStack", Func, 25, "func(root Node, stack []Node, f func(n Node, stack []Node) bool)"},
@@ -7271,6 +7287,10 @@ var PackageSymbols = map[string][]Symbol{
{"(*Logger).WarnContext", Method, 21, ""},
{"(*Logger).With", Method, 21, ""},
{"(*Logger).WithGroup", Method, 21, ""},
+ {"(*MultiHandler).Enabled", Method, 26, ""},
+ {"(*MultiHandler).Handle", Method, 26, ""},
+ {"(*MultiHandler).WithAttrs", Method, 26, ""},
+ {"(*MultiHandler).WithGroup", Method, 26, ""},
{"(*Record).Add", Method, 21, ""},
{"(*Record).AddAttrs", Method, 21, ""},
{"(*TextHandler).Enabled", Method, 21, ""},
@@ -7358,9 +7378,11 @@ var PackageSymbols = map[string][]Symbol{
{"LogValuer", Type, 21, ""},
{"Logger", Type, 21, ""},
{"MessageKey", Const, 21, ""},
+ {"MultiHandler", Type, 26, ""},
{"New", Func, 21, "func(h Handler) *Logger"},
{"NewJSONHandler", Func, 21, "func(w io.Writer, opts *HandlerOptions) *JSONHandler"},
{"NewLogLogger", Func, 21, "func(h Handler, level Level) *log.Logger"},
+ {"NewMultiHandler", Func, 26, "func(handlers ...Handler) *MultiHandler"},
{"NewRecord", Func, 21, "func(t time.Time, level Level, msg string, pc uintptr) Record"},
{"NewTextHandler", Func, 21, "func(w io.Writer, opts *HandlerOptions) *TextHandler"},
{"Record", Type, 21, ""},
@@ -7515,7 +7537,7 @@ var PackageSymbols = map[string][]Symbol{
{"MinInt64", Const, 0, ""},
{"MinInt8", Const, 0, ""},
{"Mod", Func, 0, "func(x float64, y float64) float64"},
- {"Modf", Func, 0, "func(f float64) (int float64, frac float64)"},
+ {"Modf", Func, 0, "func(f float64) (integer float64, fractional float64)"},
{"NaN", Func, 0, "func() float64"},
{"Nextafter", Func, 0, "func(x float64, y float64) (r float64)"},
{"Nextafter32", Func, 4, "func(x float32, y float32) (r float32)"},
@@ -7972,6 +7994,10 @@ var PackageSymbols = map[string][]Symbol{
{"(*DNSError).Unwrap", Method, 23, ""},
{"(*Dialer).Dial", Method, 1, ""},
{"(*Dialer).DialContext", Method, 7, ""},
+ {"(*Dialer).DialIP", Method, 26, ""},
+ {"(*Dialer).DialTCP", Method, 26, ""},
+ {"(*Dialer).DialUDP", Method, 26, ""},
+ {"(*Dialer).DialUnix", Method, 26, ""},
{"(*Dialer).MultipathTCP", Method, 21, ""},
{"(*Dialer).SetMultipathTCP", Method, 21, ""},
{"(*IP).UnmarshalText", Method, 2, ""},
@@ -8457,6 +8483,7 @@ var PackageSymbols = map[string][]Symbol{
{"HTTP2Config.PermitProhibitedCipherSuites", Field, 24, ""},
{"HTTP2Config.PingTimeout", Field, 24, ""},
{"HTTP2Config.SendPingTimeout", Field, 24, ""},
+ {"HTTP2Config.StrictMaxConcurrentRequests", Field, 26, ""},
{"HTTP2Config.WriteByteTimeout", Field, 24, ""},
{"Handle", Func, 0, "func(pattern string, handler Handler)"},
{"HandleFunc", Func, 0, "func(pattern string, handler func(ResponseWriter, *Request))"},
@@ -8904,6 +8931,7 @@ var PackageSymbols = map[string][]Symbol{
{"(Prefix).AppendText", Method, 24, ""},
{"(Prefix).AppendTo", Method, 18, ""},
{"(Prefix).Bits", Method, 18, ""},
+ {"(Prefix).Compare", Method, 26, ""},
{"(Prefix).Contains", Method, 18, ""},
{"(Prefix).IsSingleIP", Method, 18, ""},
{"(Prefix).IsValid", Method, 18, ""},
@@ -9177,6 +9205,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*Process).Release", Method, 0, ""},
{"(*Process).Signal", Method, 0, ""},
{"(*Process).Wait", Method, 0, ""},
+ {"(*Process).WithHandle", Method, 26, ""},
{"(*ProcessState).ExitCode", Method, 12, ""},
{"(*ProcessState).Exited", Method, 0, ""},
{"(*ProcessState).Pid", Method, 0, ""},
@@ -9234,6 +9263,7 @@ var PackageSymbols = map[string][]Symbol{
{"ErrExist", Var, 0, ""},
{"ErrInvalid", Var, 0, ""},
{"ErrNoDeadline", Var, 10, ""},
+ {"ErrNoHandle", Var, 26, ""},
{"ErrNotExist", Var, 0, ""},
{"ErrPermission", Var, 0, ""},
{"ErrProcessDone", Var, 16, ""},
@@ -9461,7 +9491,7 @@ var PackageSymbols = map[string][]Symbol{
{"ListSeparator", Const, 0, ""},
{"Localize", Func, 23, "func(path string) (string, error)"},
{"Match", Func, 0, "func(pattern string, name string) (matched bool, err error)"},
- {"Rel", Func, 0, "func(basepath string, targpath string) (string, error)"},
+ {"Rel", Func, 0, "func(basePath string, targPath string) (string, error)"},
{"Separator", Const, 0, ""},
{"SkipAll", Var, 20, ""},
{"SkipDir", Var, 0, ""},
@@ -9932,7 +9962,7 @@ var PackageSymbols = map[string][]Symbol{
{"PanicNilError", Type, 21, ""},
{"Pinner", Type, 21, ""},
{"ReadMemStats", Func, 0, "func(m *MemStats)"},
- {"ReadTrace", Func, 5, "func() []byte"},
+ {"ReadTrace", Func, 5, "func() (buf []byte)"},
{"SetBlockProfileRate", Func, 1, "func(rate int)"},
{"SetCPUProfileRate", Func, 0, "func(hz int)"},
{"SetCgoTraceback", Func, 7, "func(version int, traceback unsafe.Pointer, context unsafe.Pointer, symbolizer unsafe.Pointer)"},
@@ -16679,6 +16709,7 @@ var PackageSymbols = map[string][]Symbol{
{"ValueOf", Func, 0, ""},
},
"testing": {
+ {"(*B).ArtifactDir", Method, 26, ""},
{"(*B).Attr", Method, 25, ""},
{"(*B).Chdir", Method, 24, ""},
{"(*B).Cleanup", Method, 14, ""},
@@ -16713,6 +16744,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*B).StopTimer", Method, 0, ""},
{"(*B).TempDir", Method, 15, ""},
{"(*F).Add", Method, 18, ""},
+ {"(*F).ArtifactDir", Method, 26, ""},
{"(*F).Attr", Method, 25, ""},
{"(*F).Chdir", Method, 24, ""},
{"(*F).Cleanup", Method, 18, ""},
@@ -16738,6 +16770,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*F).TempDir", Method, 18, ""},
{"(*M).Run", Method, 4, ""},
{"(*PB).Next", Method, 3, ""},
+ {"(*T).ArtifactDir", Method, 26, ""},
{"(*T).Attr", Method, 25, ""},
{"(*T).Chdir", Method, 24, ""},
{"(*T).Cleanup", Method, 14, ""},
diff --git a/vendor/golang.org/x/tools/internal/typeparams/normalize.go b/vendor/golang.org/x/tools/internal/typeparams/normalize.go
index f49802b8..8d13f121 100644
--- a/vendor/golang.org/x/tools/internal/typeparams/normalize.go
+++ b/vendor/golang.org/x/tools/internal/typeparams/normalize.go
@@ -160,8 +160,7 @@ func computeTermSetInternal(t types.Type, seen map[types.Type]*termSet, depth in
// The term set of an interface is the intersection of the term sets of its
// embedded types.
tset.terms = allTermlist
- for i := 0; i < u.NumEmbeddeds(); i++ {
- embedded := u.EmbeddedType(i)
+ for embedded := range u.EmbeddedTypes() {
if _, ok := embedded.Underlying().(*types.TypeParam); ok {
return nil, fmt.Errorf("invalid embedded type %T", embedded)
}
@@ -174,8 +173,7 @@ func computeTermSetInternal(t types.Type, seen map[types.Type]*termSet, depth in
case *types.Union:
// The term set of a union is the union of term sets of its terms.
tset.terms = nil
- for i := 0; i < u.Len(); i++ {
- t := u.Term(i)
+ for t := range u.Terms() {
var terms termlist
switch t.Type().Underlying().(type) {
case *types.Interface:
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/element.go b/vendor/golang.org/x/tools/internal/typesinternal/element.go
index 4957f021..5fe4d8ab 100644
--- a/vendor/golang.org/x/tools/internal/typesinternal/element.go
+++ b/vendor/golang.org/x/tools/internal/typesinternal/element.go
@@ -35,8 +35,8 @@ func ForEachElement(rtypes *typeutil.Map, msets *typeutil.MethodSetCache, T type
// Recursion over signatures of each method.
tmset := msets.MethodSet(T)
- for i := 0; i < tmset.Len(); i++ {
- sig := tmset.At(i).Type().(*types.Signature)
+ for method := range tmset.Methods() {
+ sig := method.Type().(*types.Signature)
// It is tempting to call visit(sig, false)
// but, as noted in golang.org/cl/65450043,
// the Signature.Recv field is ignored by
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/fx.go b/vendor/golang.org/x/tools/internal/typesinternal/fx.go
index 93acff21..c846a53d 100644
--- a/vendor/golang.org/x/tools/internal/typesinternal/fx.go
+++ b/vendor/golang.org/x/tools/internal/typesinternal/fx.go
@@ -19,25 +19,46 @@ func NoEffects(info *types.Info, expr ast.Expr) bool {
switch v := n.(type) {
case nil, *ast.Ident, *ast.BasicLit, *ast.BinaryExpr, *ast.ParenExpr,
*ast.SelectorExpr, *ast.IndexExpr, *ast.SliceExpr, *ast.TypeAssertExpr,
- *ast.StarExpr, *ast.CompositeLit, *ast.ArrayType, *ast.StructType,
- *ast.MapType, *ast.InterfaceType, *ast.KeyValueExpr:
- // No effect
+ *ast.StarExpr, *ast.CompositeLit,
+ // non-expressions that may appear within expressions
+ *ast.KeyValueExpr,
+ *ast.FieldList,
+ *ast.Field,
+ *ast.Ellipsis,
+ *ast.IndexListExpr:
+ // No effect.
+
+ case *ast.ArrayType,
+ *ast.StructType,
+ *ast.ChanType,
+ *ast.FuncType,
+ *ast.MapType,
+ *ast.InterfaceType:
+ // Type syntax: no effects, recursively.
+ // Prune descent.
+ return false
+
case *ast.UnaryExpr:
- // Channel send <-ch has effects
+ // Channel send <-ch has effects.
if v.Op == token.ARROW {
noEffects = false
}
- case *ast.CallExpr:
- // Type conversion has no effects
- if !info.Types[v.Fun].IsType() {
- // TODO(adonovan): Add a case for built-in functions without side
- // effects (by using callsPureBuiltin from tools/internal/refactor/inline)
- noEffects = false
+ case *ast.CallExpr:
+ // Type conversion has no effects.
+ if !info.Types[v.Fun].IsType() {
+ if CallsPureBuiltin(info, v) {
+ // A call such as len(e) has no effects of its
+ // own, though the subexpression e might.
+ } else {
+ noEffects = false
+ }
}
+
case *ast.FuncLit:
// A FuncLit has no effects, but do not descend into it.
return false
+
default:
// All other expressions have effects
noEffects = false
@@ -47,3 +68,21 @@ func NoEffects(info *types.Info, expr ast.Expr) bool {
})
return noEffects
}
+
+// CallsPureBuiltin reports whether call is a call of a built-in
+// function that is a pure computation over its operands (analogous to
+// a + operator). Because it does not depend on program state, it may
+// be evaluated at any point--though not necessarily at multiple
+// points (consider new, make).
+func CallsPureBuiltin(info *types.Info, call *ast.CallExpr) bool {
+ if id, ok := ast.Unparen(call.Fun).(*ast.Ident); ok {
+ if b, ok := info.ObjectOf(id).(*types.Builtin); ok {
+ switch b.Name() {
+ case "len", "cap", "complex", "imag", "real", "make", "new", "max", "min":
+ return true
+ }
+ // Not: append clear close copy delete panic print println recover
+ }
+ }
+ return false
+}
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/isnamed.go b/vendor/golang.org/x/tools/internal/typesinternal/isnamed.go
index f2affec4..e0d63c46 100644
--- a/vendor/golang.org/x/tools/internal/typesinternal/isnamed.go
+++ b/vendor/golang.org/x/tools/internal/typesinternal/isnamed.go
@@ -48,7 +48,7 @@ func IsFunctionNamed(obj types.Object, pkgPath string, names ...string) bool {
return ok &&
IsPackageLevel(obj) &&
f.Pkg().Path() == pkgPath &&
- f.Type().(*types.Signature).Recv() == nil &&
+ f.Signature().Recv() == nil &&
slices.Contains(names, f.Name())
}
@@ -60,7 +60,7 @@ func IsFunctionNamed(obj types.Object, pkgPath string, names ...string) bool {
// which is important for the performance of syntax matching.
func IsMethodNamed(obj types.Object, pkgPath string, typeName string, names ...string) bool {
if fn, ok := obj.(*types.Func); ok {
- if recv := fn.Type().(*types.Signature).Recv(); recv != nil {
+ if recv := fn.Signature().Recv(); recv != nil {
_, T := ReceiverNamed(recv)
return T != nil &&
IsTypeNamed(T, pkgPath, typeName) &&
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/qualifier.go b/vendor/golang.org/x/tools/internal/typesinternal/qualifier.go
index 64f47919..4e2756fc 100644
--- a/vendor/golang.org/x/tools/internal/typesinternal/qualifier.go
+++ b/vendor/golang.org/x/tools/internal/typesinternal/qualifier.go
@@ -19,7 +19,7 @@ import (
// TODO(adonovan): this function ignores the effect of shadowing. It
// should accept a [token.Pos] and a [types.Info] and compute only the
// set of imports that are not shadowed at that point, analogous to
-// [analysisinternal.AddImport]. It could also compute (as a side
+// [analysis.AddImport]. It could also compute (as a side
// effect) the set of additional imports required to ensure that there
// is an accessible import for each necessary package, making it
// converge even more closely with AddImport.
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/varkind.go b/vendor/golang.org/x/tools/internal/typesinternal/varkind.go
index e5da0495..26499cdd 100644
--- a/vendor/golang.org/x/tools/internal/typesinternal/varkind.go
+++ b/vendor/golang.org/x/tools/internal/typesinternal/varkind.go
@@ -2,39 +2,22 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-package typesinternal
+//go:build go1.25
-// TODO(adonovan): when CL 645115 lands, define the go1.25 version of
-// this API that actually does something.
+package typesinternal
import "go/types"
-type VarKind uint8
+type VarKind = types.VarKind
const (
- _ VarKind = iota // (not meaningful)
- PackageVar // a package-level variable
- LocalVar // a local variable
- RecvVar // a method receiver variable
- ParamVar // a function parameter variable
- ResultVar // a function result variable
- FieldVar // a struct field
+ PackageVar = types.PackageVar
+ LocalVar = types.LocalVar
+ RecvVar = types.RecvVar
+ ParamVar = types.ParamVar
+ ResultVar = types.ResultVar
+ FieldVar = types.FieldVar
)
-func (kind VarKind) String() string {
- return [...]string{
- 0: "VarKind(0)",
- PackageVar: "PackageVar",
- LocalVar: "LocalVar",
- RecvVar: "RecvVar",
- ParamVar: "ParamVar",
- ResultVar: "ResultVar",
- FieldVar: "FieldVar",
- }[kind]
-}
-
-// GetVarKind returns an invalid VarKind.
-func GetVarKind(v *types.Var) VarKind { return 0 }
-
-// SetVarKind has no effect.
-func SetVarKind(v *types.Var, kind VarKind) {}
+func GetVarKind(v *types.Var) VarKind { return v.Kind() }
+func SetVarKind(v *types.Var, kind VarKind) { v.SetKind(kind) }
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/varkind_go124.go b/vendor/golang.org/x/tools/internal/typesinternal/varkind_go124.go
new file mode 100644
index 00000000..17b1804b
--- /dev/null
+++ b/vendor/golang.org/x/tools/internal/typesinternal/varkind_go124.go
@@ -0,0 +1,39 @@
+// Copyright 2024 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+//go:build !go1.25
+
+package typesinternal
+
+import "go/types"
+
+type VarKind uint8
+
+const (
+ _ VarKind = iota // (not meaningful)
+ PackageVar // a package-level variable
+ LocalVar // a local variable
+ RecvVar // a method receiver variable
+ ParamVar // a function parameter variable
+ ResultVar // a function result variable
+ FieldVar // a struct field
+)
+
+func (kind VarKind) String() string {
+ return [...]string{
+ 0: "VarKind(0)",
+ PackageVar: "PackageVar",
+ LocalVar: "LocalVar",
+ RecvVar: "RecvVar",
+ ParamVar: "ParamVar",
+ ResultVar: "ResultVar",
+ FieldVar: "FieldVar",
+ }[kind]
+}
+
+// GetVarKind returns an invalid VarKind.
+func GetVarKind(v *types.Var) VarKind { return 0 }
+
+// SetVarKind has no effect.
+func SetVarKind(v *types.Var, kind VarKind) {}
diff --git a/vendor/golang.org/x/tools/internal/typesinternal/zerovalue.go b/vendor/golang.org/x/tools/internal/typesinternal/zerovalue.go
index 453bba2a..d612a710 100644
--- a/vendor/golang.org/x/tools/internal/typesinternal/zerovalue.go
+++ b/vendor/golang.org/x/tools/internal/typesinternal/zerovalue.go
@@ -258,12 +258,12 @@ func TypeExpr(t types.Type, qual types.Qualifier) ast.Expr {
case *types.Signature:
var params []*ast.Field
- for i := 0; i < t.Params().Len(); i++ {
+ for v := range t.Params().Variables() {
params = append(params, &ast.Field{
- Type: TypeExpr(t.Params().At(i).Type(), qual),
+ Type: TypeExpr(v.Type(), qual),
Names: []*ast.Ident{
{
- Name: t.Params().At(i).Name(),
+ Name: v.Name(),
},
},
})
@@ -273,9 +273,9 @@ func TypeExpr(t types.Type, qual types.Qualifier) ast.Expr {
last.Type = &ast.Ellipsis{Elt: last.Type.(*ast.ArrayType).Elt}
}
var returns []*ast.Field
- for i := 0; i < t.Results().Len(); i++ {
+ for v := range t.Results().Variables() {
returns = append(returns, &ast.Field{
- Type: TypeExpr(t.Results().At(i).Type(), qual),
+ Type: TypeExpr(v.Type(), qual),
})
}
return &ast.FuncType{
@@ -315,8 +315,8 @@ func TypeExpr(t types.Type, qual types.Qualifier) ast.Expr {
if hasTypeArgs, ok := t.(interface{ TypeArgs() *types.TypeList }); ok {
if typeArgs := hasTypeArgs.TypeArgs(); typeArgs != nil && typeArgs.Len() > 0 {
var indices []ast.Expr
- for i := range typeArgs.Len() {
- indices = append(indices, TypeExpr(typeArgs.At(i), qual))
+ for t0 := range typeArgs.Types() {
+ indices = append(indices, TypeExpr(t0, qual))
}
expr = &ast.IndexListExpr{
X: expr,
diff --git a/vendor/golang.org/x/tools/internal/versions/features.go b/vendor/golang.org/x/tools/internal/versions/features.go
index b53f1786..a5f4e325 100644
--- a/vendor/golang.org/x/tools/internal/versions/features.go
+++ b/vendor/golang.org/x/tools/internal/versions/features.go
@@ -7,13 +7,17 @@ package versions
// This file contains predicates for working with file versions to
// decide when a tool should consider a language feature enabled.
-// GoVersions that features in x/tools can be gated to.
+// named constants, to avoid misspelling
const (
Go1_18 = "go1.18"
Go1_19 = "go1.19"
Go1_20 = "go1.20"
Go1_21 = "go1.21"
Go1_22 = "go1.22"
+ Go1_23 = "go1.23"
+ Go1_24 = "go1.24"
+ Go1_25 = "go1.25"
+ Go1_26 = "go1.26"
)
// Future is an invalid unknown Go version sometime in the future.
diff --git a/vendor/gorm.io/driver/sqlserver/migrator.go b/vendor/gorm.io/driver/sqlserver/migrator.go
index 85d29873..1ef7940b 100644
--- a/vendor/gorm.io/driver/sqlserver/migrator.go
+++ b/vendor/gorm.io/driver/sqlserver/migrator.go
@@ -437,6 +437,29 @@ WHERE TABLE_CATALOG = ? AND TABLE_NAME = ?`)
return columnTypes, execErr
}
+func (m Migrator) CreateView(name string, option gorm.ViewOption) error {
+ if option.Query == nil {
+ return gorm.ErrSubQueryRequired
+ }
+
+ sql := new(strings.Builder)
+ sql.WriteString("CREATE ")
+ if option.Replace {
+ sql.WriteString("OR ALTER ")
+ }
+ sql.WriteString("VIEW ")
+ m.QuoteTo(sql, name)
+ sql.WriteString(" AS ")
+
+ m.DB.Statement.AddVar(sql, option.Query)
+
+ if option.CheckOption != "" {
+ sql.WriteString(" ")
+ sql.WriteString(option.CheckOption)
+ }
+ return m.DB.Exec(m.Explain(sql.String(), m.DB.Statement.Vars...)).Error
+}
+
func (m Migrator) CreateIndex(value interface{}, name string) error {
return m.RunWithValue(value, func(stmt *gorm.Statement) error {
var idx *schema.Index
@@ -549,7 +572,18 @@ func (m Migrator) HasConstraint(value interface{}, name string) bool {
}
return m.DB.Raw(
- `SELECT count(*) FROM sys.foreign_keys as F inner join sys.tables as T on F.parent_object_id=T.object_id inner join INFORMATION_SCHEMA.TABLES as I on I.TABLE_NAME = T.name WHERE F.name = ? AND I.TABLE_NAME = ? AND I.TABLE_SCHEMA like ? AND I.TABLE_CATALOG = ?;`,
+ `SELECT count(*) FROM (
+ SELECT C.name, T.name as table_name FROM sys.check_constraints as C
+ INNER JOIN sys.tables as T on C.parent_object_id=T.object_id
+ INNER JOIN INFORMATION_SCHEMA.TABLES as I on I.TABLE_NAME = T.name
+ WHERE C.name = ? AND I.TABLE_NAME = ? AND I.TABLE_SCHEMA like ? AND I.TABLE_CATALOG = ?
+ UNION
+ SELECT FK.name, T.name as table_name FROM sys.foreign_keys as FK
+ INNER JOIN sys.tables as T on FK.parent_object_id=T.object_id
+ INNER JOIN INFORMATION_SCHEMA.TABLES as I on I.TABLE_NAME = T.name
+ WHERE FK.name = ? AND I.TABLE_NAME = ? AND I.TABLE_SCHEMA like ? AND I.TABLE_CATALOG = ?
+ ) as constraints;`,
+ name, tableName, tableSchema, tableCatalog,
name, tableName, tableSchema, tableCatalog,
).Row().Scan(&count)
})
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 1f7bde93..86baceb9 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -152,7 +152,7 @@ github.com/denisenkom/go-mssqldb/msdsn
## explicit; go 1.13
github.com/dlclark/regexp2
github.com/dlclark/regexp2/syntax
-# github.com/dromara/carbon/v2 v2.6.14
+# github.com/dromara/carbon/v2 v2.6.15
## explicit; go 1.18
github.com/dromara/carbon/v2
github.com/dromara/carbon/v2/calendar
@@ -184,8 +184,8 @@ github.com/emersion/go-sasl
# github.com/fatih/color v1.18.0
## explicit; go 1.17
github.com/fatih/color
-# github.com/getsentry/sentry-go v0.36.2
-## explicit; go 1.23
+# github.com/getsentry/sentry-go v0.37.0
+## explicit; go 1.23.0
github.com/getsentry/sentry-go
github.com/getsentry/sentry-go/attribute
github.com/getsentry/sentry-go/internal/debug
@@ -269,7 +269,7 @@ github.com/gotd/ige
# github.com/gotd/neo v0.1.5
## explicit; go 1.12
github.com/gotd/neo
-# github.com/gotd/td v0.132.0
+# github.com/gotd/td v0.133.0
## explicit; go 1.24.0
github.com/gotd/td/ascii
github.com/gotd/td/bin
@@ -411,7 +411,7 @@ github.com/mattn/go-sqlite3
# github.com/mdp/qrterminal/v3 v3.2.1
## explicit; go 1.20
github.com/mdp/qrterminal/v3
-# github.com/microsoft/go-mssqldb v1.9.3
+# github.com/microsoft/go-mssqldb v1.9.4
## explicit; go 1.23.0
github.com/microsoft/go-mssqldb
github.com/microsoft/go-mssqldb/aecmk
@@ -618,20 +618,6 @@ github.com/stretchr/testify/assert
github.com/stretchr/testify/assert/yaml
github.com/stretchr/testify/require
github.com/stretchr/testify/suite
-# github.com/syndtr/goleveldb v1.0.0
-## explicit
-github.com/syndtr/goleveldb/leveldb
-github.com/syndtr/goleveldb/leveldb/cache
-github.com/syndtr/goleveldb/leveldb/comparer
-github.com/syndtr/goleveldb/leveldb/errors
-github.com/syndtr/goleveldb/leveldb/filter
-github.com/syndtr/goleveldb/leveldb/iterator
-github.com/syndtr/goleveldb/leveldb/journal
-github.com/syndtr/goleveldb/leveldb/memdb
-github.com/syndtr/goleveldb/leveldb/opt
-github.com/syndtr/goleveldb/leveldb/storage
-github.com/syndtr/goleveldb/leveldb/table
-github.com/syndtr/goleveldb/leveldb/util
# github.com/tinkoff/invest-api-go-sdk v1.4.6
## explicit; go 1.20
github.com/tinkoff/invest-api-go-sdk/investgo
@@ -659,14 +645,6 @@ github.com/vektah/gqlparser/v2/ast
# github.com/xhit/go-simple-mail/v2 v2.16.0
## explicit; go 1.13
github.com/xhit/go-simple-mail/v2
-# gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange v1.0.36
-## explicit; go 1.22
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/data_packer
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/liveness
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_confirm
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_global
-gitlab.aescorp.ru/dsp_dev/claim/common/sync_exchange/sync_types
# go.etcd.io/bbolt v1.4.3
## explicit; go 1.23
go.etcd.io/bbolt
@@ -701,12 +679,13 @@ go.mau.fi/libsignal/util/errorhelper
go.mau.fi/libsignal/util/keyhelper
go.mau.fi/libsignal/util/medium
go.mau.fi/libsignal/util/optional
-# go.mau.fi/util v0.9.2
+# go.mau.fi/util v0.9.3
## explicit; go 1.24.0
go.mau.fi/util/dbutil
go.mau.fi/util/exbytes
go.mau.fi/util/exerrors
go.mau.fi/util/exhttp
+go.mau.fi/util/exmaps
go.mau.fi/util/exslices
go.mau.fi/util/exstrings
go.mau.fi/util/exsync
@@ -716,7 +695,7 @@ go.mau.fi/util/jsontime
go.mau.fi/util/ptr
go.mau.fi/util/random
go.mau.fi/util/retryafter
-# go.mau.fi/whatsmeow v0.0.0-20251028165006-ad7a618ba42f
+# go.mau.fi/whatsmeow v0.0.0-20251116104239-3aca43070cd4
## explicit; go 1.24.0
go.mau.fi/whatsmeow
go.mau.fi/whatsmeow/appstate
@@ -812,7 +791,7 @@ go.uber.org/zap/zapcore
# go.yaml.in/yaml/v2 v2.4.3
## explicit; go 1.15
go.yaml.in/yaml/v2
-# golang.org/x/crypto v0.43.0
+# golang.org/x/crypto v0.44.0
## explicit; go 1.24.0
golang.org/x/crypto/argon2
golang.org/x/crypto/blake2b
@@ -826,17 +805,17 @@ golang.org/x/crypto/nacl/secretbox
golang.org/x/crypto/pbkdf2
golang.org/x/crypto/salsa20/salsa
golang.org/x/crypto/ssh/terminal
-# golang.org/x/exp v0.0.0-20251023183803-a4bb9ffd2546
+# golang.org/x/exp v0.0.0-20251113190631-e25ba8c21ef6
## explicit; go 1.24.0
golang.org/x/exp/constraints
golang.org/x/exp/maps
golang.org/x/exp/rand
-# golang.org/x/mod v0.29.0
+# golang.org/x/mod v0.30.0
## explicit; go 1.24.0
golang.org/x/mod/internal/lazyregexp
golang.org/x/mod/module
golang.org/x/mod/semver
-# golang.org/x/net v0.46.0
+# golang.org/x/net v0.47.0
## explicit; go 1.24.0
golang.org/x/net/context
golang.org/x/net/http/httpguts
@@ -849,7 +828,7 @@ golang.org/x/net/internal/timeseries
golang.org/x/net/proxy
golang.org/x/net/publicsuffix
golang.org/x/net/trace
-# golang.org/x/oauth2 v0.32.0
+# golang.org/x/oauth2 v0.33.0
## explicit; go 1.24.0
golang.org/x/oauth2
golang.org/x/oauth2/authhandler
@@ -862,12 +841,12 @@ golang.org/x/oauth2/google/internal/stsexchange
golang.org/x/oauth2/internal
golang.org/x/oauth2/jws
golang.org/x/oauth2/jwt
-# golang.org/x/sync v0.17.0
+# golang.org/x/sync v0.18.0
## explicit; go 1.24.0
golang.org/x/sync/errgroup
golang.org/x/sync/semaphore
golang.org/x/sync/singleflight
-# golang.org/x/sys v0.37.0
+# golang.org/x/sys v0.38.0
## explicit; go 1.24.0
golang.org/x/sys/cpu
golang.org/x/sys/execabs
@@ -875,10 +854,10 @@ golang.org/x/sys/plan9
golang.org/x/sys/unix
golang.org/x/sys/windows
golang.org/x/sys/windows/registry
-# golang.org/x/term v0.36.0
+# golang.org/x/term v0.37.0
## explicit; go 1.24.0
golang.org/x/term
-# golang.org/x/text v0.30.0
+# golang.org/x/text v0.31.0
## explicit; go 1.24.0
golang.org/x/text/cases
golang.org/x/text/encoding
@@ -899,7 +878,7 @@ golang.org/x/text/unicode/bidi
golang.org/x/text/unicode/norm
golang.org/x/text/unicode/rangetable
golang.org/x/text/width
-# golang.org/x/tools v0.38.0
+# golang.org/x/tools v0.39.0
## explicit; go 1.24.0
golang.org/x/tools/go/ast/astutil
golang.org/x/tools/go/ast/edge
@@ -925,7 +904,7 @@ golang.org/x/tools/internal/stdlib
golang.org/x/tools/internal/typeparams
golang.org/x/tools/internal/typesinternal
golang.org/x/tools/internal/versions
-# google.golang.org/genproto/googleapis/rpc v0.0.0-20251103181224-f26f9409b101
+# google.golang.org/genproto/googleapis/rpc v0.0.0-20251111163417-95abcf5c77ba
## explicit; go 1.24.0
google.golang.org/genproto/googleapis/rpc/status
# google.golang.org/grpc v1.76.0
@@ -1039,7 +1018,7 @@ gopkg.in/yaml.v3
# gorm.io/driver/postgres v1.6.0
## explicit; go 1.20
gorm.io/driver/postgres
-# gorm.io/driver/sqlserver v1.6.1
+# gorm.io/driver/sqlserver v1.6.3
## explicit; go 1.14
gorm.io/driver/sqlserver
# gorm.io/gorm v1.31.1