feat(useragent): initial impl
@@ -1,31 +0,0 @@
|
||||
Extension Discovery Cache
|
||||
=========================
|
||||
|
||||
This folder is used by `package:extension_discovery` to cache lists of
|
||||
packages that contains extensions for other packages.
|
||||
|
||||
DO NOT USE THIS FOLDER
|
||||
----------------------
|
||||
|
||||
* Do not read (or rely) the contents of this folder.
|
||||
* Do write to this folder.
|
||||
|
||||
If you're interested in the lists of extensions stored in this folder use the
|
||||
API offered by package `extension_discovery` to get this information.
|
||||
|
||||
If this package doesn't work for your use-case, then don't try to read the
|
||||
contents of this folder. It may change, and will not remain stable.
|
||||
|
||||
Use package `extension_discovery`
|
||||
---------------------------------
|
||||
|
||||
If you want to access information from this folder.
|
||||
|
||||
Feel free to delete this folder
|
||||
-------------------------------
|
||||
|
||||
Files in this folder act as a cache, and the cache is discarded if the files
|
||||
are older than the modification time of `.dart_tool/package_config.json`.
|
||||
|
||||
Hence, it should never be necessary to clear this cache manually, if you find a
|
||||
need to do please file a bug.
|
||||
@@ -1 +0,0 @@
|
||||
{"version":2,"entries":[{"package":"arbiter","rootUri":"../","packageUri":"lib/"}]}
|
||||
@@ -1,60 +1,402 @@
|
||||
{
|
||||
"configVersion": 2,
|
||||
"packages": [
|
||||
{
|
||||
"name": "_fe_analyzer_shared",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-91.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "analyzer",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/analyzer-8.4.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "analyzer_buffer",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/analyzer_buffer-0.1.11",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.6"
|
||||
},
|
||||
{
|
||||
"name": "ansicolor",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/ansicolor-2.0.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "args",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/args-2.7.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "async",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/async-2.13.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "biometric_signature",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/biometric_signature-10.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "bloc",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/bloc-9.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.14"
|
||||
},
|
||||
{
|
||||
"name": "boolean_selector",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/boolean_selector-2.1.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "build",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/build-4.0.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "build_config",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/build_config-1.3.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "build_daemon",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/build_daemon-4.1.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "build_runner",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/build_runner-2.12.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "built_collection",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/built_collection-5.1.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "built_value",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/built_value-8.12.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "characters",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/characters-1.4.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "checked_yaml",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/checked_yaml-2.0.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "cli_config",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/cli_config-0.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "clock",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/clock-1.1.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "code_assets",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/code_assets-1.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "code_builder",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/code_builder-4.11.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "collection",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/collection-1.19.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "convert",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/convert-3.1.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "coverage",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/coverage-1.15.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "cross_file",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/cross_file-0.3.5+2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "crypto",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/crypto-3.0.7",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "cryptography",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/cryptography-2.9.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "cryptography_flutter",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/cryptography_flutter-2.3.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "cupertino_icons",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.8",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "dart_style",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/dart_style-3.1.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "fake_async",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/fake_async-1.3.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "ffi",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/ffi-2.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "file",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/file-7.0.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "fixnum",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/fixnum-1.1.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "flutter",
|
||||
"rootUri": "file:///Users/kaska/.local/share/mise/installs/flutter/3.38.9-stable/packages/flutter",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "flutter_adaptive_scaffold",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/git/flutter_adaptive_scaffold-4852b5041d8d9ed6cacb4dc4c6723086f0612e37/",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.10"
|
||||
},
|
||||
{
|
||||
"name": "flutter_bloc",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_bloc-9.1.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.14"
|
||||
},
|
||||
{
|
||||
"name": "flutter_hooks",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_hooks-0.21.3+1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.17"
|
||||
},
|
||||
{
|
||||
"name": "flutter_lints",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_lints-6.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "flutter_riverpod",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_riverpod-3.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "flutter_secure_storage",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_secure_storage-10.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "flutter_secure_storage_darwin",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_secure_storage_darwin-0.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "flutter_secure_storage_linux",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_secure_storage_linux-3.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "flutter_secure_storage_platform_interface",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_secure_storage_platform_interface-2.0.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "flutter_secure_storage_web",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_secure_storage_web-2.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "flutter_secure_storage_windows",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_secure_storage_windows-4.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "flutter_spinkit",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/flutter_spinkit-5.2.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "flutter_test",
|
||||
"rootUri": "file:///Users/kaska/.local/share/mise/installs/flutter/3.38.9-stable/packages/flutter_test",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "flutter_web_plugins",
|
||||
"rootUri": "file:///Users/kaska/.local/share/mise/installs/flutter/3.38.9-stable/packages/flutter_web_plugins",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "freezed_annotation",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/freezed_annotation-3.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "frontend_server_client",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/frontend_server_client-4.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "glob",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/glob-2.1.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "google_identity_services_web",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/google_identity_services_web-0.3.3+1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "googleapis_auth",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/googleapis_auth-2.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.6"
|
||||
},
|
||||
{
|
||||
"name": "graphs",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/graphs-2.3.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "group_button",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/group_button-5.3.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "grpc",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/grpc-5.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "hooks",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/hooks-1.0.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.10"
|
||||
},
|
||||
{
|
||||
"name": "hooks_riverpod",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/hooks_riverpod-3.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "http",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/http-1.6.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "http2",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/http2-2.3.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.2"
|
||||
},
|
||||
{
|
||||
"name": "http_multi_server",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/http_multi_server-3.2.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.2"
|
||||
},
|
||||
{
|
||||
"name": "http_parser",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/http_parser-4.1.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "io",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/io-1.0.5",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "js",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/js-0.7.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "json_annotation",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/json_annotation-4.11.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "leak_tracker",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/leak_tracker-11.0.2",
|
||||
@@ -79,6 +421,12 @@
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "logging",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/logging-1.3.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "matcher",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/matcher-0.12.17",
|
||||
@@ -97,18 +445,246 @@
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "mime",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/mime-2.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.2"
|
||||
},
|
||||
{
|
||||
"name": "mockito",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/mockito-5.6.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "mtcore",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/git.markettakers.org%2547api%2547packages%2547MarketTakers%2547pub%2547/mtcore-1.0.6",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "native_toolchain_c",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/native_toolchain_c-0.17.5",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.10"
|
||||
},
|
||||
{
|
||||
"name": "nested",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/nested-1.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "node_preamble",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/node_preamble-2.0.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "objective_c",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/objective_c-9.3.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.10"
|
||||
},
|
||||
{
|
||||
"name": "package_config",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/package_config-2.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "path",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path-1.9.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "path_provider",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path_provider-2.1.5",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "path_provider_android",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path_provider_android-2.2.22",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "path_provider_foundation",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.10"
|
||||
},
|
||||
{
|
||||
"name": "path_provider_linux",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.19"
|
||||
},
|
||||
{
|
||||
"name": "path_provider_platform_interface",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.1.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "path_provider_windows",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.2"
|
||||
},
|
||||
{
|
||||
"name": "percent_indicator",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/percent_indicator-4.2.5",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "platform",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/platform-3.1.6",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.2"
|
||||
},
|
||||
{
|
||||
"name": "plugin_platform_interface",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.8",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "pool",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/pool-1.5.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "protobuf",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/protobuf-6.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "provider",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/provider-6.1.5+1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "pub_semver",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/pub_semver-2.2.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "pubspec_parse",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/pubspec_parse-1.5.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.6"
|
||||
},
|
||||
{
|
||||
"name": "rive",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/rive-0.14.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.6"
|
||||
},
|
||||
{
|
||||
"name": "rive_native",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/rive_native-0.1.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.6"
|
||||
},
|
||||
{
|
||||
"name": "riverpod",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/riverpod-3.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "riverpod_analyzer_utils",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/riverpod_analyzer_utils-1.0.0-dev.8",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "riverpod_annotation",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/riverpod_annotation-4.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "riverpod_generator",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/riverpod_generator-4.0.0+1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.7"
|
||||
},
|
||||
{
|
||||
"name": "share_plus",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/share_plus-12.0.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "share_plus_platform_interface",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/share_plus_platform_interface-6.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.18"
|
||||
},
|
||||
{
|
||||
"name": "shelf",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/shelf-1.4.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "shelf_packages_handler",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.17"
|
||||
},
|
||||
{
|
||||
"name": "shelf_static",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/shelf_static-1.1.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "shelf_web_socket",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/shelf_web_socket-3.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "sizer",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/sizer-3.1.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "sky_engine",
|
||||
"rootUri": "file:///Users/kaska/.local/share/mise/installs/flutter/3.38.9-stable/bin/cache/pkg/sky_engine",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "source_gen",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/source_gen-4.2.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.9"
|
||||
},
|
||||
{
|
||||
"name": "source_map_stack_trace",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "source_maps",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/source_maps-0.10.13",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "source_span",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/source_span-1.10.2",
|
||||
@@ -121,30 +697,108 @@
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "state_notifier",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/state_notifier-1.0.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.12"
|
||||
},
|
||||
{
|
||||
"name": "stream_channel",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/stream_channel-2.1.4",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "stream_transform",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/stream_transform-2.1.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "string_scanner",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/string_scanner-1.4.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "talker",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/talker-5.1.15",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.17"
|
||||
},
|
||||
{
|
||||
"name": "talker_flutter",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/talker_flutter-5.1.15",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.6"
|
||||
},
|
||||
{
|
||||
"name": "talker_logger",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/talker_logger-5.1.15",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "2.15"
|
||||
},
|
||||
{
|
||||
"name": "term_glyph",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/term_glyph-1.2.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "test",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/test-1.26.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "test_api",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/test_api-0.7.7",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "test_core",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/test_core-0.6.12",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "typed_data",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/typed_data-1.4.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "url_launcher_linux",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "url_launcher_platform_interface",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/url_launcher_platform_interface-2.3.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.1"
|
||||
},
|
||||
{
|
||||
"name": "url_launcher_web",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.2",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.10"
|
||||
},
|
||||
{
|
||||
"name": "url_launcher_windows",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "uuid",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/uuid-4.5.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "vector_math",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/vector_math-2.2.0",
|
||||
@@ -157,6 +811,54 @@
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.5"
|
||||
},
|
||||
{
|
||||
"name": "watcher",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/watcher-1.2.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "web",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/web-1.1.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "web_socket",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/web_socket-1.0.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "web_socket_channel",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/web_socket_channel-3.0.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "webkit_inspection_protocol",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.0"
|
||||
},
|
||||
{
|
||||
"name": "win32",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/win32-5.15.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.8"
|
||||
},
|
||||
{
|
||||
"name": "xdg_directories",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/xdg_directories-1.1.0",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.3"
|
||||
},
|
||||
{
|
||||
"name": "yaml",
|
||||
"rootUri": "file:///Users/kaska/.pub-cache/hosted/pub.dev/yaml-3.1.3",
|
||||
"packageUri": "lib/",
|
||||
"languageVersion": "3.4"
|
||||
},
|
||||
{
|
||||
"name": "arbiter",
|
||||
"rootUri": "../",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# app
|
||||
# useragent
|
||||
|
||||
A new Flutter project.
|
||||
|
||||
|
||||
14
useragent/android/.gitignore
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
gradle-wrapper.jar
|
||||
/.gradle
|
||||
/captures/
|
||||
/gradlew
|
||||
/gradlew.bat
|
||||
/local.properties
|
||||
GeneratedPluginRegistrant.java
|
||||
.cxx/
|
||||
|
||||
# Remember to never publicly share your keystore.
|
||||
# See https://flutter.dev/to/reference-keystore
|
||||
key.properties
|
||||
**/*.keystore
|
||||
**/*.jks
|
||||
44
useragent/android/app/build.gradle.kts
Normal file
@@ -0,0 +1,44 @@
|
||||
plugins {
|
||||
id("com.android.application")
|
||||
id("kotlin-android")
|
||||
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
|
||||
id("dev.flutter.flutter-gradle-plugin")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "com.example.useragent"
|
||||
compileSdk = flutter.compileSdkVersion
|
||||
ndkVersion = flutter.ndkVersion
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_17.toString()
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||
applicationId = "com.example.useragent"
|
||||
// You can update the following values to match your application needs.
|
||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
||||
minSdk = flutter.minSdkVersion
|
||||
targetSdk = flutter.targetSdkVersion
|
||||
versionCode = flutter.versionCode
|
||||
versionName = flutter.versionName
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
// TODO: Add your own signing config for the release build.
|
||||
// Signing with the debug keys for now, so `flutter run --release` works.
|
||||
signingConfig = signingConfigs.getByName("debug")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
flutter {
|
||||
source = "../.."
|
||||
}
|
||||
7
useragent/android/app/src/debug/AndroidManifest.xml
Normal file
@@ -0,0 +1,7 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
</manifest>
|
||||
45
useragent/android/app/src/main/AndroidManifest.xml
Normal file
@@ -0,0 +1,45 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<application
|
||||
android:label="useragent"
|
||||
android:name="${applicationName}"
|
||||
android:icon="@mipmap/ic_launcher">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTop"
|
||||
android:taskAffinity=""
|
||||
android:theme="@style/LaunchTheme"
|
||||
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
|
||||
android:hardwareAccelerated="true"
|
||||
android:windowSoftInputMode="adjustResize">
|
||||
<!-- Specifies an Android theme to apply to this Activity as soon as
|
||||
the Android process has started. This theme is visible to the user
|
||||
while the Flutter UI initializes. After that, this theme continues
|
||||
to determine the Window background behind the Flutter UI. -->
|
||||
<meta-data
|
||||
android:name="io.flutter.embedding.android.NormalTheme"
|
||||
android:resource="@style/NormalTheme"
|
||||
/>
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<!-- Don't delete the meta-data below.
|
||||
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
|
||||
<meta-data
|
||||
android:name="flutterEmbedding"
|
||||
android:value="2" />
|
||||
</application>
|
||||
<!-- Required to query activities that can process text, see:
|
||||
https://developer.android.com/training/package-visibility and
|
||||
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
|
||||
|
||||
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. -->
|
||||
<queries>
|
||||
<intent>
|
||||
<action android:name="android.intent.action.PROCESS_TEXT"/>
|
||||
<data android:mimeType="text/plain"/>
|
||||
</intent>
|
||||
</queries>
|
||||
</manifest>
|
||||
@@ -0,0 +1,5 @@
|
||||
package com.example.useragent
|
||||
|
||||
import io.flutter.embedding.android.FlutterActivity
|
||||
|
||||
class MainActivity : FlutterActivity()
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Modify this file to customize your launch splash screen -->
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="?android:colorBackground" />
|
||||
|
||||
<!-- You can insert your own image assets here -->
|
||||
<!-- <item>
|
||||
<bitmap
|
||||
android:gravity="center"
|
||||
android:src="@mipmap/launch_image" />
|
||||
</item> -->
|
||||
</layer-list>
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Modify this file to customize your launch splash screen -->
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@android:color/white" />
|
||||
|
||||
<!-- You can insert your own image assets here -->
|
||||
<!-- <item>
|
||||
<bitmap
|
||||
android:gravity="center"
|
||||
android:src="@mipmap/launch_image" />
|
||||
</item> -->
|
||||
</layer-list>
|
||||
BIN
useragent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 544 B |
BIN
useragent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 442 B |
BIN
useragent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 721 B |
BIN
useragent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
18
useragent/android/app/src/main/res/values-night/styles.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
the Flutter engine draws its first frame -->
|
||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||
</style>
|
||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||
This theme determines the color of the Android Window while your
|
||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
||||
running.
|
||||
|
||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
||||
18
useragent/android/app/src/main/res/values/styles.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
the Flutter engine draws its first frame -->
|
||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||
</style>
|
||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||
This theme determines the color of the Android Window while your
|
||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
||||
running.
|
||||
|
||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
||||
7
useragent/android/app/src/profile/AndroidManifest.xml
Normal file
@@ -0,0 +1,7 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
</manifest>
|
||||
24
useragent/android/build.gradle.kts
Normal file
@@ -0,0 +1,24 @@
|
||||
allprojects {
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
val newBuildDir: Directory =
|
||||
rootProject.layout.buildDirectory
|
||||
.dir("../../build")
|
||||
.get()
|
||||
rootProject.layout.buildDirectory.value(newBuildDir)
|
||||
|
||||
subprojects {
|
||||
val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name)
|
||||
project.layout.buildDirectory.value(newSubprojectBuildDir)
|
||||
}
|
||||
subprojects {
|
||||
project.evaluationDependsOn(":app")
|
||||
}
|
||||
|
||||
tasks.register<Delete>("clean") {
|
||||
delete(rootProject.layout.buildDirectory)
|
||||
}
|
||||
2
useragent/android/gradle.properties
Normal file
@@ -0,0 +1,2 @@
|
||||
org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError
|
||||
android.useAndroidX=true
|
||||
5
useragent/android/gradle/wrapper/gradle-wrapper.properties
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-all.zip
|
||||
26
useragent/android/settings.gradle.kts
Normal file
@@ -0,0 +1,26 @@
|
||||
pluginManagement {
|
||||
val flutterSdkPath =
|
||||
run {
|
||||
val properties = java.util.Properties()
|
||||
file("local.properties").inputStream().use { properties.load(it) }
|
||||
val flutterSdkPath = properties.getProperty("flutter.sdk")
|
||||
require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
|
||||
flutterSdkPath
|
||||
}
|
||||
|
||||
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
|
||||
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
gradlePluginPortal()
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
|
||||
id("com.android.application") version "8.11.1" apply false
|
||||
id("org.jetbrains.kotlin.android") version "2.2.20" apply false
|
||||
}
|
||||
|
||||
include(":app")
|
||||
118
useragent/lib/features/adaptive_switcher.dart
Normal file
@@ -0,0 +1,118 @@
|
||||
import 'package:flutter_adaptive_scaffold/flutter_adaptive_scaffold.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:sizer/sizer.dart';
|
||||
|
||||
const transitionDuration = Duration(milliseconds: 800);
|
||||
|
||||
class AdaptiveBuilders {
|
||||
WidgetBuilder? buildSmall;
|
||||
WidgetBuilder? buildMediumLarge;
|
||||
WidgetBuilder? buildLarge;
|
||||
WidgetBuilder? buildExtraLarge;
|
||||
WidgetBuilder? build;
|
||||
|
||||
AdaptiveBuilders({
|
||||
this.buildSmall,
|
||||
this.buildMediumLarge,
|
||||
this.buildLarge,
|
||||
this.buildExtraLarge,
|
||||
this.build,
|
||||
});
|
||||
}
|
||||
|
||||
class Destination {
|
||||
final String label;
|
||||
final String? tooltip;
|
||||
final Icon icon;
|
||||
final Icon? selectedIcon;
|
||||
|
||||
final AdaptiveBuilders main;
|
||||
final AdaptiveBuilders? secondary;
|
||||
|
||||
Destination({
|
||||
required this.label,
|
||||
required this.icon,
|
||||
this.selectedIcon,
|
||||
required this.main,
|
||||
this.secondary,
|
||||
this.tooltip,
|
||||
});
|
||||
}
|
||||
|
||||
class Switcher extends StatelessWidget {
|
||||
final Widget? child;
|
||||
|
||||
const Switcher({super.key, this.child});
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AnimatedSwitcher(
|
||||
duration: Duration(
|
||||
milliseconds: transitionDuration.inMilliseconds ~/ 100,
|
||||
),
|
||||
transitionBuilder: (child, animation) {
|
||||
return FadeTransition(opacity: animation, child: child);
|
||||
},
|
||||
child: child,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
WidgetBuilder? patchAnimated(WidgetBuilder? input) {
|
||||
if (input == null) return null;
|
||||
return (context) => Switcher(child: input(context));
|
||||
}
|
||||
|
||||
class HomeRouter extends HookWidget {
|
||||
final List<Destination> destinations;
|
||||
|
||||
HomeRouter({super.key, required this.destinations})
|
||||
: assert(destinations.isNotEmpty);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final selectedIndex = useState(0);
|
||||
final destination = useMemoized(() => destinations[selectedIndex.value], [
|
||||
selectedIndex.value,
|
||||
]);
|
||||
final dispatcher = useMemoized(() => destination.main, [
|
||||
selectedIndex.value,
|
||||
]);
|
||||
final secondaryDispatcher = useMemoized(() => destination.secondary, [
|
||||
selectedIndex.value,
|
||||
]);
|
||||
|
||||
return AdaptiveScaffold(
|
||||
destinations: destinations
|
||||
.map(
|
||||
(destination) => NavigationDestination(
|
||||
label: destination.label,
|
||||
icon: destination.icon,
|
||||
selectedIcon: destination.selectedIcon,
|
||||
tooltip: destination.tooltip,
|
||||
),
|
||||
)
|
||||
.toList(),
|
||||
|
||||
selectedIndex: selectedIndex.value,
|
||||
onSelectedIndexChange: (index) => selectedIndex.value = index,
|
||||
useDrawer: true,
|
||||
|
||||
smallBody: patchAnimated(dispatcher.buildSmall),
|
||||
body: patchAnimated(dispatcher.build),
|
||||
mediumLargeBody: patchAnimated(dispatcher.buildMediumLarge),
|
||||
largeBody: patchAnimated(dispatcher.buildLarge),
|
||||
extraLargeBody: patchAnimated(dispatcher.buildExtraLarge),
|
||||
|
||||
smallSecondaryBody: patchAnimated(secondaryDispatcher?.buildSmall),
|
||||
secondaryBody: patchAnimated(secondaryDispatcher?.build),
|
||||
mediumLargeSecondaryBody: patchAnimated(
|
||||
secondaryDispatcher?.buildMediumLarge,
|
||||
),
|
||||
largeSecondaryBody: patchAnimated(secondaryDispatcher?.buildLarge),
|
||||
extraLargeSecondaryBody: patchAnimated(
|
||||
secondaryDispatcher?.buildExtraLarge,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
26
useragent/lib/features/bootstrap.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:arbiter/providers/key.dart';
|
||||
import 'package:flutter/src/widgets/framework.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:mtcore/markettakers.dart';
|
||||
|
||||
class Bootstrap extends HookConsumerWidget {
|
||||
final Completer<void> completer;
|
||||
|
||||
const Bootstrap({required this.completer});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final container = ProviderScope.containerOf(context);
|
||||
final stages = useMemoized(() {
|
||||
return [KeyBootstrapper(ref: container)];
|
||||
}, []);
|
||||
final bootstrapper = useMemoized(
|
||||
() => Bootstrapper(stages: stages, onCompleted: completer),
|
||||
[stages],
|
||||
);
|
||||
return bootstrapper;
|
||||
}
|
||||
}
|
||||
19
useragent/lib/features/pk_manager.dart
Normal file
@@ -0,0 +1,19 @@
|
||||
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
enum KeyAlgorithm {
|
||||
rsa, ecdsa, ed25519
|
||||
}
|
||||
|
||||
// The API to handle without storing the private key in memory.
|
||||
//The implementation will use platform-specific secure storage and signing capabilities.
|
||||
abstract class KeyHandle {
|
||||
KeyAlgorithm get alg;
|
||||
Future<List<int>> sign(List<int> data);
|
||||
Future<List<int>> getPublicKey();
|
||||
}
|
||||
|
||||
abstract class KeyManager {
|
||||
Future<KeyHandle?> get();
|
||||
Future<KeyHandle> create();
|
||||
}
|
||||
94
useragent/lib/features/simple_ed25519.dart
Normal file
@@ -0,0 +1,94 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:cryptography/cryptography.dart';
|
||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||
import 'package:arbiter/features/pk_manager.dart';
|
||||
|
||||
final storage = FlutterSecureStorage(
|
||||
aOptions: AndroidOptions.biometric(
|
||||
enforceBiometrics: true,
|
||||
biometricPromptTitle: 'Authentication Required',
|
||||
),
|
||||
mOptions: MacOsOptions(
|
||||
accessibility: KeychainAccessibility.unlocked_this_device,
|
||||
label: "Arbiter",
|
||||
description: "Confirm your identity to access vault",
|
||||
synchronizable: false,
|
||||
accessControlFlags: [
|
||||
AccessControlFlag.userPresence,
|
||||
AccessControlFlag.privateKeyUsage,
|
||||
],
|
||||
usesDataProtectionKeychain: true,
|
||||
),
|
||||
);
|
||||
|
||||
final processor = Ed25519();
|
||||
|
||||
class SimpleEd25519 extends KeyHandle {
|
||||
final SimpleKeyPair _keyPair;
|
||||
|
||||
SimpleEd25519({required SimpleKeyPair keyPair}) : _keyPair = keyPair;
|
||||
|
||||
@override
|
||||
KeyAlgorithm get alg => KeyAlgorithm.ed25519;
|
||||
|
||||
@override
|
||||
Future<List<int>> getPublicKey() async {
|
||||
final publicKey = await _keyPair.extractPublicKey();
|
||||
return publicKey.bytes;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<int>> sign(List<int> data) async {
|
||||
final signature = await processor.sign(data, keyPair: _keyPair);
|
||||
return signature.bytes;
|
||||
}
|
||||
}
|
||||
|
||||
class SimpleEd25519Manager extends KeyManager {
|
||||
static const _storageKey = "ed25519_identity";
|
||||
static const _storagePublicKey = "ed25519_public_key";
|
||||
|
||||
@override
|
||||
Future<KeyHandle> create() async {
|
||||
final storedKey = await get();
|
||||
if (storedKey != null) {
|
||||
return storedKey;
|
||||
}
|
||||
|
||||
final newKey = await processor.newKeyPair();
|
||||
final rawKey = await newKey.extract();
|
||||
|
||||
final keyData = base64Encode(rawKey.bytes);
|
||||
await storage.write(key: _storageKey, value: keyData);
|
||||
|
||||
final publicKeyData = base64Encode(rawKey.publicKey.bytes);
|
||||
await storage.write(key: _storagePublicKey, value: publicKeyData);
|
||||
|
||||
return SimpleEd25519(keyPair: newKey);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<KeyHandle?> get() async {
|
||||
final storedKeyPair = await storage.read(key: _storageKey);
|
||||
if (storedKeyPair == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
final publicKeyData = await storage.read(key: _storagePublicKey);
|
||||
final publicKeyRaw = base64Decode(publicKeyData!);
|
||||
final publicKey = SimplePublicKey(
|
||||
publicKeyRaw,
|
||||
type: processor.keyPairType,
|
||||
);
|
||||
|
||||
final keyBytes = base64Decode(storedKeyPair);
|
||||
final keypair = SimpleKeyPairData(
|
||||
keyBytes,
|
||||
publicKey: publicKey,
|
||||
type: processor.keyPairType,
|
||||
);
|
||||
|
||||
return SimpleEd25519(keyPair: keypair);
|
||||
}
|
||||
}
|
||||
24
useragent/lib/home.dart
Normal file
@@ -0,0 +1,24 @@
|
||||
import 'package:arbiter/features/adaptive_switcher.dart';
|
||||
import 'package:arbiter/screens/about.dart';
|
||||
import 'package:arbiter/screens/calc.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
final _destinations = [
|
||||
Destination(
|
||||
label: "About",
|
||||
icon: Icon(Icons.info_outline),
|
||||
main: AdaptiveBuilders(build: (_) => About()),
|
||||
),
|
||||
Destination(
|
||||
label: "Calc",
|
||||
icon: Icon(Icons.calculate),
|
||||
main: AdaptiveBuilders(build: (_) => CalcScreen()),
|
||||
),
|
||||
];
|
||||
|
||||
class Home extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return HomeRouter(destinations: _destinations);
|
||||
}
|
||||
}
|
||||
@@ -1,122 +1,11 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:arbiter/router.dart';
|
||||
import 'package:flutter/material.dart' hide Router;
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
|
||||
void main() {
|
||||
runApp(const MyApp());
|
||||
}
|
||||
|
||||
class MyApp extends StatelessWidget {
|
||||
const MyApp({super.key});
|
||||
|
||||
// This widget is the root of your application.
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MaterialApp(
|
||||
title: 'Flutter Demo',
|
||||
theme: ThemeData(
|
||||
// This is the theme of your application.
|
||||
//
|
||||
// TRY THIS: Try running your application with "flutter run". You'll see
|
||||
// the application has a purple toolbar. Then, without quitting the app,
|
||||
// try changing the seedColor in the colorScheme below to Colors.green
|
||||
// and then invoke "hot reload" (save your changes or press the "hot
|
||||
// reload" button in a Flutter-supported IDE, or press "r" if you used
|
||||
// the command line to start the app).
|
||||
//
|
||||
// Notice that the counter didn't reset back to zero; the application
|
||||
// state is not lost during the reload. To reset the state, use hot
|
||||
// restart instead.
|
||||
//
|
||||
// This works for code too, not just values: Most code changes can be
|
||||
// tested with just a hot reload.
|
||||
colorScheme: .fromSeed(seedColor: Colors.deepPurple),
|
||||
),
|
||||
home: const MyHomePage(title: 'Flutter Demo Home Page'),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class MyHomePage extends StatefulWidget {
|
||||
const MyHomePage({super.key, required this.title});
|
||||
|
||||
// This widget is the home page of your application. It is stateful, meaning
|
||||
// that it has a State object (defined below) that contains fields that affect
|
||||
// how it looks.
|
||||
|
||||
// This class is the configuration for the state. It holds the values (in this
|
||||
// case the title) provided by the parent (in this case the App widget) and
|
||||
// used by the build method of the State. Fields in a Widget subclass are
|
||||
// always marked "final".
|
||||
|
||||
final String title;
|
||||
|
||||
@override
|
||||
State<MyHomePage> createState() => _MyHomePageState();
|
||||
}
|
||||
|
||||
class _MyHomePageState extends State<MyHomePage> {
|
||||
int _counter = 0;
|
||||
|
||||
void _incrementCounter() {
|
||||
setState(() {
|
||||
// This call to setState tells the Flutter framework that something has
|
||||
// changed in this State, which causes it to rerun the build method below
|
||||
// so that the display can reflect the updated values. If we changed
|
||||
// _counter without calling setState(), then the build method would not be
|
||||
// called again, and so nothing would appear to happen.
|
||||
_counter++;
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
// This method is rerun every time setState is called, for instance as done
|
||||
// by the _incrementCounter method above.
|
||||
//
|
||||
// The Flutter framework has been optimized to make rerunning build methods
|
||||
// fast, so that you can just rebuild anything that needs updating rather
|
||||
// than having to individually change instances of widgets.
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
// TRY THIS: Try changing the color here to a specific color (to
|
||||
// Colors.amber, perhaps?) and trigger a hot reload to see the AppBar
|
||||
// change color while the other colors stay the same.
|
||||
backgroundColor: Theme.of(context).colorScheme.inversePrimary,
|
||||
// Here we take the value from the MyHomePage object that was created by
|
||||
// the App.build method, and use it to set our appbar title.
|
||||
title: Text(widget.title),
|
||||
),
|
||||
body: Center(
|
||||
// Center is a layout widget. It takes a single child and positions it
|
||||
// in the middle of the parent.
|
||||
child: Column(
|
||||
// Column is also a layout widget. It takes a list of children and
|
||||
// arranges them vertically. By default, it sizes itself to fit its
|
||||
// children horizontally, and tries to be as tall as its parent.
|
||||
//
|
||||
// Column has various properties to control how it sizes itself and
|
||||
// how it positions its children. Here we use mainAxisAlignment to
|
||||
// center the children vertically; the main axis here is the vertical
|
||||
// axis because Columns are vertical (the cross axis would be
|
||||
// horizontal).
|
||||
//
|
||||
// TRY THIS: Invoke "debug painting" (choose the "Toggle Debug Paint"
|
||||
// action in the IDE, or press "p" in the console), to see the
|
||||
// wireframe for each widget.
|
||||
mainAxisAlignment: .center,
|
||||
children: [
|
||||
const Text('You have pushed the button this many times:'),
|
||||
Text(
|
||||
'$_counter',
|
||||
style: Theme.of(context).textTheme.headlineMedium,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
floatingActionButton: FloatingActionButton(
|
||||
onPressed: _incrementCounter,
|
||||
tooltip: 'Increment',
|
||||
child: const Icon(Icons.add),
|
||||
),
|
||||
);
|
||||
}
|
||||
runApp(
|
||||
MaterialApp(
|
||||
home: ProviderScope(child: Scaffold(body: Router())),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
107
useragent/lib/proto/arbiter.pb.dart
Normal file
@@ -0,0 +1,107 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from arbiter.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
|
||||
import 'dart:async' as $async;
|
||||
import 'dart:core' as $core;
|
||||
|
||||
import 'package:protobuf/protobuf.dart' as $pb;
|
||||
|
||||
import 'client.pb.dart' as $0;
|
||||
import 'user_agent.pb.dart' as $1;
|
||||
|
||||
export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;
|
||||
|
||||
class ServerInfo extends $pb.GeneratedMessage {
|
||||
factory ServerInfo({
|
||||
$core.String? version,
|
||||
$core.List<$core.int>? certPublicKey,
|
||||
}) {
|
||||
final result = create();
|
||||
if (version != null) result.version = version;
|
||||
if (certPublicKey != null) result.certPublicKey = certPublicKey;
|
||||
return result;
|
||||
}
|
||||
|
||||
ServerInfo._();
|
||||
|
||||
factory ServerInfo.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory ServerInfo.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'ServerInfo',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter'),
|
||||
createEmptyInstance: create)
|
||||
..aOS(1, _omitFieldNames ? '' : 'version')
|
||||
..a<$core.List<$core.int>>(
|
||||
2, _omitFieldNames ? '' : 'certPublicKey', $pb.PbFieldType.OY)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ServerInfo clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ServerInfo copyWith(void Function(ServerInfo) updates) =>
|
||||
super.copyWith((message) => updates(message as ServerInfo)) as ServerInfo;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ServerInfo create() => ServerInfo._();
|
||||
@$core.override
|
||||
ServerInfo createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ServerInfo getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<ServerInfo>(create);
|
||||
static ServerInfo? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
$core.String get version => $_getSZ(0);
|
||||
@$pb.TagNumber(1)
|
||||
set version($core.String value) => $_setString(0, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasVersion() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearVersion() => $_clearField(1);
|
||||
|
||||
@$pb.TagNumber(2)
|
||||
$core.List<$core.int> get certPublicKey => $_getN(1);
|
||||
@$pb.TagNumber(2)
|
||||
set certPublicKey($core.List<$core.int> value) => $_setBytes(1, value);
|
||||
@$pb.TagNumber(2)
|
||||
$core.bool hasCertPublicKey() => $_has(1);
|
||||
@$pb.TagNumber(2)
|
||||
void clearCertPublicKey() => $_clearField(2);
|
||||
}
|
||||
|
||||
class ArbiterServiceApi {
|
||||
final $pb.RpcClient _client;
|
||||
|
||||
ArbiterServiceApi(this._client);
|
||||
|
||||
$async.Future<$0.ClientResponse> client(
|
||||
$pb.ClientContext? ctx, $0.ClientRequest request) =>
|
||||
_client.invoke<$0.ClientResponse>(
|
||||
ctx, 'ArbiterService', 'Client', request, $0.ClientResponse());
|
||||
$async.Future<$1.UserAgentResponse> userAgent(
|
||||
$pb.ClientContext? ctx, $1.UserAgentRequest request) =>
|
||||
_client.invoke<$1.UserAgentResponse>(
|
||||
ctx, 'ArbiterService', 'UserAgent', request, $1.UserAgentResponse());
|
||||
}
|
||||
|
||||
const $core.bool _omitFieldNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_field_names');
|
||||
const $core.bool _omitMessageNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_message_names');
|
||||
11
useragent/lib/proto/arbiter.pbenum.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from arbiter.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
124
useragent/lib/proto/arbiter.pbjson.dart
Normal file
@@ -0,0 +1,124 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from arbiter.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
// ignore_for_file: unused_import
|
||||
|
||||
import 'dart:convert' as $convert;
|
||||
import 'dart:core' as $core;
|
||||
import 'dart:typed_data' as $typed_data;
|
||||
|
||||
import 'package:protobuf/well_known_types/google/protobuf/empty.pbjson.dart'
|
||||
as $3;
|
||||
import 'package:protobuf/well_known_types/google/protobuf/timestamp.pbjson.dart'
|
||||
as $4;
|
||||
|
||||
import 'client.pbjson.dart' as $0;
|
||||
import 'evm.pbjson.dart' as $2;
|
||||
import 'user_agent.pbjson.dart' as $1;
|
||||
|
||||
@$core.Deprecated('Use serverInfoDescriptor instead')
|
||||
const ServerInfo$json = {
|
||||
'1': 'ServerInfo',
|
||||
'2': [
|
||||
{'1': 'version', '3': 1, '4': 1, '5': 9, '10': 'version'},
|
||||
{'1': 'cert_public_key', '3': 2, '4': 1, '5': 12, '10': 'certPublicKey'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `ServerInfo`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List serverInfoDescriptor = $convert.base64Decode(
|
||||
'CgpTZXJ2ZXJJbmZvEhgKB3ZlcnNpb24YASABKAlSB3ZlcnNpb24SJgoPY2VydF9wdWJsaWNfa2'
|
||||
'V5GAIgASgMUg1jZXJ0UHVibGljS2V5');
|
||||
|
||||
const $core.Map<$core.String, $core.dynamic> ArbiterServiceBase$json = {
|
||||
'1': 'ArbiterService',
|
||||
'2': [
|
||||
{
|
||||
'1': 'Client',
|
||||
'2': '.arbiter.client.ClientRequest',
|
||||
'3': '.arbiter.client.ClientResponse',
|
||||
'5': true,
|
||||
'6': true
|
||||
},
|
||||
{
|
||||
'1': 'UserAgent',
|
||||
'2': '.arbiter.user_agent.UserAgentRequest',
|
||||
'3': '.arbiter.user_agent.UserAgentResponse',
|
||||
'5': true,
|
||||
'6': true
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
@$core.Deprecated('Use arbiterServiceDescriptor instead')
|
||||
const $core.Map<$core.String, $core.Map<$core.String, $core.dynamic>>
|
||||
ArbiterServiceBase$messageJson = {
|
||||
'.arbiter.client.ClientRequest': $0.ClientRequest$json,
|
||||
'.arbiter.client.AuthChallengeRequest': $0.AuthChallengeRequest$json,
|
||||
'.arbiter.client.AuthChallengeSolution': $0.AuthChallengeSolution$json,
|
||||
'.arbiter.client.ClientResponse': $0.ClientResponse$json,
|
||||
'.arbiter.client.AuthChallenge': $0.AuthChallenge$json,
|
||||
'.arbiter.client.AuthOk': $0.AuthOk$json,
|
||||
'.arbiter.evm.EvmSignTransactionResponse': $2.EvmSignTransactionResponse$json,
|
||||
'.arbiter.evm.TransactionEvalError': $2.TransactionEvalError$json,
|
||||
'.google.protobuf.Empty': $3.Empty$json,
|
||||
'.arbiter.evm.NoMatchingGrantError': $2.NoMatchingGrantError$json,
|
||||
'.arbiter.evm.SpecificMeaning': $2.SpecificMeaning$json,
|
||||
'.arbiter.evm.EtherTransferMeaning': $2.EtherTransferMeaning$json,
|
||||
'.arbiter.evm.TokenTransferMeaning': $2.TokenTransferMeaning$json,
|
||||
'.arbiter.evm.TokenInfo': $2.TokenInfo$json,
|
||||
'.arbiter.evm.PolicyViolationsError': $2.PolicyViolationsError$json,
|
||||
'.arbiter.evm.EvalViolation': $2.EvalViolation$json,
|
||||
'.arbiter.evm.GasLimitExceededViolation': $2.GasLimitExceededViolation$json,
|
||||
'.arbiter.evm.EvmAnalyzeTransactionResponse':
|
||||
$2.EvmAnalyzeTransactionResponse$json,
|
||||
'.arbiter.client.ClientConnectError': $0.ClientConnectError$json,
|
||||
'.arbiter.user_agent.UserAgentRequest': $1.UserAgentRequest$json,
|
||||
'.arbiter.user_agent.AuthChallengeRequest': $1.AuthChallengeRequest$json,
|
||||
'.arbiter.user_agent.AuthChallengeSolution': $1.AuthChallengeSolution$json,
|
||||
'.arbiter.user_agent.UnsealStart': $1.UnsealStart$json,
|
||||
'.arbiter.user_agent.UnsealEncryptedKey': $1.UnsealEncryptedKey$json,
|
||||
'.arbiter.evm.EvmGrantCreateRequest': $2.EvmGrantCreateRequest$json,
|
||||
'.arbiter.evm.SharedSettings': $2.SharedSettings$json,
|
||||
'.google.protobuf.Timestamp': $4.Timestamp$json,
|
||||
'.arbiter.evm.TransactionRateLimit': $2.TransactionRateLimit$json,
|
||||
'.arbiter.evm.SpecificGrant': $2.SpecificGrant$json,
|
||||
'.arbiter.evm.EtherTransferSettings': $2.EtherTransferSettings$json,
|
||||
'.arbiter.evm.VolumeRateLimit': $2.VolumeRateLimit$json,
|
||||
'.arbiter.evm.TokenTransferSettings': $2.TokenTransferSettings$json,
|
||||
'.arbiter.evm.EvmGrantDeleteRequest': $2.EvmGrantDeleteRequest$json,
|
||||
'.arbiter.evm.EvmGrantListRequest': $2.EvmGrantListRequest$json,
|
||||
'.arbiter.user_agent.ClientConnectionResponse':
|
||||
$1.ClientConnectionResponse$json,
|
||||
'.arbiter.user_agent.UserAgentResponse': $1.UserAgentResponse$json,
|
||||
'.arbiter.user_agent.AuthChallenge': $1.AuthChallenge$json,
|
||||
'.arbiter.user_agent.AuthOk': $1.AuthOk$json,
|
||||
'.arbiter.user_agent.UnsealStartResponse': $1.UnsealStartResponse$json,
|
||||
'.arbiter.evm.WalletCreateResponse': $2.WalletCreateResponse$json,
|
||||
'.arbiter.evm.WalletEntry': $2.WalletEntry$json,
|
||||
'.arbiter.evm.WalletListResponse': $2.WalletListResponse$json,
|
||||
'.arbiter.evm.WalletList': $2.WalletList$json,
|
||||
'.arbiter.evm.EvmGrantCreateResponse': $2.EvmGrantCreateResponse$json,
|
||||
'.arbiter.evm.EvmGrantDeleteResponse': $2.EvmGrantDeleteResponse$json,
|
||||
'.arbiter.evm.EvmGrantListResponse': $2.EvmGrantListResponse$json,
|
||||
'.arbiter.evm.EvmGrantList': $2.EvmGrantList$json,
|
||||
'.arbiter.evm.GrantEntry': $2.GrantEntry$json,
|
||||
'.arbiter.user_agent.ClientConnectionRequest':
|
||||
$1.ClientConnectionRequest$json,
|
||||
'.arbiter.user_agent.ClientConnectionCancel': $1.ClientConnectionCancel$json,
|
||||
};
|
||||
|
||||
/// Descriptor for `ArbiterService`. Decode as a `google.protobuf.ServiceDescriptorProto`.
|
||||
final $typed_data.Uint8List arbiterServiceDescriptor = $convert.base64Decode(
|
||||
'Cg5BcmJpdGVyU2VydmljZRJLCgZDbGllbnQSHS5hcmJpdGVyLmNsaWVudC5DbGllbnRSZXF1ZX'
|
||||
'N0Gh4uYXJiaXRlci5jbGllbnQuQ2xpZW50UmVzcG9uc2UoATABElwKCVVzZXJBZ2VudBIkLmFy'
|
||||
'Yml0ZXIudXNlcl9hZ2VudC5Vc2VyQWdlbnRSZXF1ZXN0GiUuYXJiaXRlci51c2VyX2FnZW50Ll'
|
||||
'VzZXJBZ2VudFJlc3BvbnNlKAEwAQ==');
|
||||
56
useragent/lib/proto/arbiter.pbserver.dart
Normal file
@@ -0,0 +1,56 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from arbiter.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
|
||||
import 'dart:async' as $async;
|
||||
import 'dart:core' as $core;
|
||||
|
||||
import 'package:protobuf/protobuf.dart' as $pb;
|
||||
|
||||
import 'arbiter.pbjson.dart';
|
||||
import 'client.pb.dart' as $0;
|
||||
import 'user_agent.pb.dart' as $1;
|
||||
|
||||
export 'arbiter.pb.dart';
|
||||
|
||||
abstract class ArbiterServiceBase extends $pb.GeneratedService {
|
||||
$async.Future<$0.ClientResponse> client(
|
||||
$pb.ServerContext ctx, $0.ClientRequest request);
|
||||
$async.Future<$1.UserAgentResponse> userAgent(
|
||||
$pb.ServerContext ctx, $1.UserAgentRequest request);
|
||||
|
||||
$pb.GeneratedMessage createRequest($core.String methodName) {
|
||||
switch (methodName) {
|
||||
case 'Client':
|
||||
return $0.ClientRequest();
|
||||
case 'UserAgent':
|
||||
return $1.UserAgentRequest();
|
||||
default:
|
||||
throw $core.ArgumentError('Unknown method: $methodName');
|
||||
}
|
||||
}
|
||||
|
||||
$async.Future<$pb.GeneratedMessage> handleCall($pb.ServerContext ctx,
|
||||
$core.String methodName, $pb.GeneratedMessage request) {
|
||||
switch (methodName) {
|
||||
case 'Client':
|
||||
return client(ctx, request as $0.ClientRequest);
|
||||
case 'UserAgent':
|
||||
return userAgent(ctx, request as $1.UserAgentRequest);
|
||||
default:
|
||||
throw $core.ArgumentError('Unknown method: $methodName');
|
||||
}
|
||||
}
|
||||
|
||||
$core.Map<$core.String, $core.dynamic> get $json => ArbiterServiceBase$json;
|
||||
$core.Map<$core.String, $core.Map<$core.String, $core.dynamic>>
|
||||
get $messageJson => ArbiterServiceBase$messageJson;
|
||||
}
|
||||
551
useragent/lib/proto/client.pb.dart
Normal file
@@ -0,0 +1,551 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from client.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
|
||||
import 'dart:core' as $core;
|
||||
|
||||
import 'package:protobuf/protobuf.dart' as $pb;
|
||||
|
||||
import 'client.pbenum.dart';
|
||||
import 'evm.pb.dart' as $0;
|
||||
|
||||
export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;
|
||||
|
||||
export 'client.pbenum.dart';
|
||||
|
||||
class AuthChallengeRequest extends $pb.GeneratedMessage {
|
||||
factory AuthChallengeRequest({
|
||||
$core.List<$core.int>? pubkey,
|
||||
}) {
|
||||
final result = create();
|
||||
if (pubkey != null) result.pubkey = pubkey;
|
||||
return result;
|
||||
}
|
||||
|
||||
AuthChallengeRequest._();
|
||||
|
||||
factory AuthChallengeRequest.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory AuthChallengeRequest.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'AuthChallengeRequest',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..a<$core.List<$core.int>>(
|
||||
1, _omitFieldNames ? '' : 'pubkey', $pb.PbFieldType.OY)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthChallengeRequest clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthChallengeRequest copyWith(void Function(AuthChallengeRequest) updates) =>
|
||||
super.copyWith((message) => updates(message as AuthChallengeRequest))
|
||||
as AuthChallengeRequest;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthChallengeRequest create() => AuthChallengeRequest._();
|
||||
@$core.override
|
||||
AuthChallengeRequest createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthChallengeRequest getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<AuthChallengeRequest>(create);
|
||||
static AuthChallengeRequest? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
$core.List<$core.int> get pubkey => $_getN(0);
|
||||
@$pb.TagNumber(1)
|
||||
set pubkey($core.List<$core.int> value) => $_setBytes(0, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasPubkey() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearPubkey() => $_clearField(1);
|
||||
}
|
||||
|
||||
class AuthChallenge extends $pb.GeneratedMessage {
|
||||
factory AuthChallenge({
|
||||
$core.List<$core.int>? pubkey,
|
||||
$core.int? nonce,
|
||||
}) {
|
||||
final result = create();
|
||||
if (pubkey != null) result.pubkey = pubkey;
|
||||
if (nonce != null) result.nonce = nonce;
|
||||
return result;
|
||||
}
|
||||
|
||||
AuthChallenge._();
|
||||
|
||||
factory AuthChallenge.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory AuthChallenge.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'AuthChallenge',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..a<$core.List<$core.int>>(
|
||||
1, _omitFieldNames ? '' : 'pubkey', $pb.PbFieldType.OY)
|
||||
..aI(2, _omitFieldNames ? '' : 'nonce')
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthChallenge clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthChallenge copyWith(void Function(AuthChallenge) updates) =>
|
||||
super.copyWith((message) => updates(message as AuthChallenge))
|
||||
as AuthChallenge;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthChallenge create() => AuthChallenge._();
|
||||
@$core.override
|
||||
AuthChallenge createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthChallenge getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<AuthChallenge>(create);
|
||||
static AuthChallenge? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
$core.List<$core.int> get pubkey => $_getN(0);
|
||||
@$pb.TagNumber(1)
|
||||
set pubkey($core.List<$core.int> value) => $_setBytes(0, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasPubkey() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearPubkey() => $_clearField(1);
|
||||
|
||||
@$pb.TagNumber(2)
|
||||
$core.int get nonce => $_getIZ(1);
|
||||
@$pb.TagNumber(2)
|
||||
set nonce($core.int value) => $_setSignedInt32(1, value);
|
||||
@$pb.TagNumber(2)
|
||||
$core.bool hasNonce() => $_has(1);
|
||||
@$pb.TagNumber(2)
|
||||
void clearNonce() => $_clearField(2);
|
||||
}
|
||||
|
||||
class AuthChallengeSolution extends $pb.GeneratedMessage {
|
||||
factory AuthChallengeSolution({
|
||||
$core.List<$core.int>? signature,
|
||||
}) {
|
||||
final result = create();
|
||||
if (signature != null) result.signature = signature;
|
||||
return result;
|
||||
}
|
||||
|
||||
AuthChallengeSolution._();
|
||||
|
||||
factory AuthChallengeSolution.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory AuthChallengeSolution.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'AuthChallengeSolution',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..a<$core.List<$core.int>>(
|
||||
1, _omitFieldNames ? '' : 'signature', $pb.PbFieldType.OY)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthChallengeSolution clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthChallengeSolution copyWith(
|
||||
void Function(AuthChallengeSolution) updates) =>
|
||||
super.copyWith((message) => updates(message as AuthChallengeSolution))
|
||||
as AuthChallengeSolution;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthChallengeSolution create() => AuthChallengeSolution._();
|
||||
@$core.override
|
||||
AuthChallengeSolution createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthChallengeSolution getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<AuthChallengeSolution>(create);
|
||||
static AuthChallengeSolution? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
$core.List<$core.int> get signature => $_getN(0);
|
||||
@$pb.TagNumber(1)
|
||||
set signature($core.List<$core.int> value) => $_setBytes(0, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasSignature() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearSignature() => $_clearField(1);
|
||||
}
|
||||
|
||||
class AuthOk extends $pb.GeneratedMessage {
|
||||
factory AuthOk() => create();
|
||||
|
||||
AuthOk._();
|
||||
|
||||
factory AuthOk.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory AuthOk.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'AuthOk',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthOk clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
AuthOk copyWith(void Function(AuthOk) updates) =>
|
||||
super.copyWith((message) => updates(message as AuthOk)) as AuthOk;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthOk create() => AuthOk._();
|
||||
@$core.override
|
||||
AuthOk createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static AuthOk getDefault() =>
|
||||
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<AuthOk>(create);
|
||||
static AuthOk? _defaultInstance;
|
||||
}
|
||||
|
||||
enum ClientRequest_Payload {
|
||||
authChallengeRequest,
|
||||
authChallengeSolution,
|
||||
notSet
|
||||
}
|
||||
|
||||
class ClientRequest extends $pb.GeneratedMessage {
|
||||
factory ClientRequest({
|
||||
AuthChallengeRequest? authChallengeRequest,
|
||||
AuthChallengeSolution? authChallengeSolution,
|
||||
}) {
|
||||
final result = create();
|
||||
if (authChallengeRequest != null)
|
||||
result.authChallengeRequest = authChallengeRequest;
|
||||
if (authChallengeSolution != null)
|
||||
result.authChallengeSolution = authChallengeSolution;
|
||||
return result;
|
||||
}
|
||||
|
||||
ClientRequest._();
|
||||
|
||||
factory ClientRequest.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory ClientRequest.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static const $core.Map<$core.int, ClientRequest_Payload>
|
||||
_ClientRequest_PayloadByTag = {
|
||||
1: ClientRequest_Payload.authChallengeRequest,
|
||||
2: ClientRequest_Payload.authChallengeSolution,
|
||||
0: ClientRequest_Payload.notSet
|
||||
};
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'ClientRequest',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..oo(0, [1, 2])
|
||||
..aOM<AuthChallengeRequest>(
|
||||
1, _omitFieldNames ? '' : 'authChallengeRequest',
|
||||
subBuilder: AuthChallengeRequest.create)
|
||||
..aOM<AuthChallengeSolution>(
|
||||
2, _omitFieldNames ? '' : 'authChallengeSolution',
|
||||
subBuilder: AuthChallengeSolution.create)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ClientRequest clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ClientRequest copyWith(void Function(ClientRequest) updates) =>
|
||||
super.copyWith((message) => updates(message as ClientRequest))
|
||||
as ClientRequest;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ClientRequest create() => ClientRequest._();
|
||||
@$core.override
|
||||
ClientRequest createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ClientRequest getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<ClientRequest>(create);
|
||||
static ClientRequest? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
@$pb.TagNumber(2)
|
||||
ClientRequest_Payload whichPayload() =>
|
||||
_ClientRequest_PayloadByTag[$_whichOneof(0)]!;
|
||||
@$pb.TagNumber(1)
|
||||
@$pb.TagNumber(2)
|
||||
void clearPayload() => $_clearField($_whichOneof(0));
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
AuthChallengeRequest get authChallengeRequest => $_getN(0);
|
||||
@$pb.TagNumber(1)
|
||||
set authChallengeRequest(AuthChallengeRequest value) => $_setField(1, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasAuthChallengeRequest() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearAuthChallengeRequest() => $_clearField(1);
|
||||
@$pb.TagNumber(1)
|
||||
AuthChallengeRequest ensureAuthChallengeRequest() => $_ensure(0);
|
||||
|
||||
@$pb.TagNumber(2)
|
||||
AuthChallengeSolution get authChallengeSolution => $_getN(1);
|
||||
@$pb.TagNumber(2)
|
||||
set authChallengeSolution(AuthChallengeSolution value) =>
|
||||
$_setField(2, value);
|
||||
@$pb.TagNumber(2)
|
||||
$core.bool hasAuthChallengeSolution() => $_has(1);
|
||||
@$pb.TagNumber(2)
|
||||
void clearAuthChallengeSolution() => $_clearField(2);
|
||||
@$pb.TagNumber(2)
|
||||
AuthChallengeSolution ensureAuthChallengeSolution() => $_ensure(1);
|
||||
}
|
||||
|
||||
class ClientConnectError extends $pb.GeneratedMessage {
|
||||
factory ClientConnectError({
|
||||
ClientConnectError_Code? code,
|
||||
}) {
|
||||
final result = create();
|
||||
if (code != null) result.code = code;
|
||||
return result;
|
||||
}
|
||||
|
||||
ClientConnectError._();
|
||||
|
||||
factory ClientConnectError.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory ClientConnectError.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'ClientConnectError',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..aE<ClientConnectError_Code>(1, _omitFieldNames ? '' : 'code',
|
||||
enumValues: ClientConnectError_Code.values)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ClientConnectError clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ClientConnectError copyWith(void Function(ClientConnectError) updates) =>
|
||||
super.copyWith((message) => updates(message as ClientConnectError))
|
||||
as ClientConnectError;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ClientConnectError create() => ClientConnectError._();
|
||||
@$core.override
|
||||
ClientConnectError createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ClientConnectError getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<ClientConnectError>(create);
|
||||
static ClientConnectError? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
ClientConnectError_Code get code => $_getN(0);
|
||||
@$pb.TagNumber(1)
|
||||
set code(ClientConnectError_Code value) => $_setField(1, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasCode() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearCode() => $_clearField(1);
|
||||
}
|
||||
|
||||
enum ClientResponse_Payload {
|
||||
authChallenge,
|
||||
authOk,
|
||||
evmSignTransaction,
|
||||
evmAnalyzeTransaction,
|
||||
clientConnectError,
|
||||
notSet
|
||||
}
|
||||
|
||||
class ClientResponse extends $pb.GeneratedMessage {
|
||||
factory ClientResponse({
|
||||
AuthChallenge? authChallenge,
|
||||
AuthOk? authOk,
|
||||
$0.EvmSignTransactionResponse? evmSignTransaction,
|
||||
$0.EvmAnalyzeTransactionResponse? evmAnalyzeTransaction,
|
||||
ClientConnectError? clientConnectError,
|
||||
}) {
|
||||
final result = create();
|
||||
if (authChallenge != null) result.authChallenge = authChallenge;
|
||||
if (authOk != null) result.authOk = authOk;
|
||||
if (evmSignTransaction != null)
|
||||
result.evmSignTransaction = evmSignTransaction;
|
||||
if (evmAnalyzeTransaction != null)
|
||||
result.evmAnalyzeTransaction = evmAnalyzeTransaction;
|
||||
if (clientConnectError != null)
|
||||
result.clientConnectError = clientConnectError;
|
||||
return result;
|
||||
}
|
||||
|
||||
ClientResponse._();
|
||||
|
||||
factory ClientResponse.fromBuffer($core.List<$core.int> data,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromBuffer(data, registry);
|
||||
factory ClientResponse.fromJson($core.String json,
|
||||
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
|
||||
create()..mergeFromJson(json, registry);
|
||||
|
||||
static const $core.Map<$core.int, ClientResponse_Payload>
|
||||
_ClientResponse_PayloadByTag = {
|
||||
1: ClientResponse_Payload.authChallenge,
|
||||
2: ClientResponse_Payload.authOk,
|
||||
3: ClientResponse_Payload.evmSignTransaction,
|
||||
4: ClientResponse_Payload.evmAnalyzeTransaction,
|
||||
5: ClientResponse_Payload.clientConnectError,
|
||||
0: ClientResponse_Payload.notSet
|
||||
};
|
||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
|
||||
_omitMessageNames ? '' : 'ClientResponse',
|
||||
package: const $pb.PackageName(_omitMessageNames ? '' : 'arbiter.client'),
|
||||
createEmptyInstance: create)
|
||||
..oo(0, [1, 2, 3, 4, 5])
|
||||
..aOM<AuthChallenge>(1, _omitFieldNames ? '' : 'authChallenge',
|
||||
subBuilder: AuthChallenge.create)
|
||||
..aOM<AuthOk>(2, _omitFieldNames ? '' : 'authOk', subBuilder: AuthOk.create)
|
||||
..aOM<$0.EvmSignTransactionResponse>(
|
||||
3, _omitFieldNames ? '' : 'evmSignTransaction',
|
||||
subBuilder: $0.EvmSignTransactionResponse.create)
|
||||
..aOM<$0.EvmAnalyzeTransactionResponse>(
|
||||
4, _omitFieldNames ? '' : 'evmAnalyzeTransaction',
|
||||
subBuilder: $0.EvmAnalyzeTransactionResponse.create)
|
||||
..aOM<ClientConnectError>(5, _omitFieldNames ? '' : 'clientConnectError',
|
||||
subBuilder: ClientConnectError.create)
|
||||
..hasRequiredFields = false;
|
||||
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ClientResponse clone() => deepCopy();
|
||||
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
|
||||
ClientResponse copyWith(void Function(ClientResponse) updates) =>
|
||||
super.copyWith((message) => updates(message as ClientResponse))
|
||||
as ClientResponse;
|
||||
|
||||
@$core.override
|
||||
$pb.BuilderInfo get info_ => _i;
|
||||
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ClientResponse create() => ClientResponse._();
|
||||
@$core.override
|
||||
ClientResponse createEmptyInstance() => create();
|
||||
@$core.pragma('dart2js:noInline')
|
||||
static ClientResponse getDefault() => _defaultInstance ??=
|
||||
$pb.GeneratedMessage.$_defaultFor<ClientResponse>(create);
|
||||
static ClientResponse? _defaultInstance;
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
@$pb.TagNumber(2)
|
||||
@$pb.TagNumber(3)
|
||||
@$pb.TagNumber(4)
|
||||
@$pb.TagNumber(5)
|
||||
ClientResponse_Payload whichPayload() =>
|
||||
_ClientResponse_PayloadByTag[$_whichOneof(0)]!;
|
||||
@$pb.TagNumber(1)
|
||||
@$pb.TagNumber(2)
|
||||
@$pb.TagNumber(3)
|
||||
@$pb.TagNumber(4)
|
||||
@$pb.TagNumber(5)
|
||||
void clearPayload() => $_clearField($_whichOneof(0));
|
||||
|
||||
@$pb.TagNumber(1)
|
||||
AuthChallenge get authChallenge => $_getN(0);
|
||||
@$pb.TagNumber(1)
|
||||
set authChallenge(AuthChallenge value) => $_setField(1, value);
|
||||
@$pb.TagNumber(1)
|
||||
$core.bool hasAuthChallenge() => $_has(0);
|
||||
@$pb.TagNumber(1)
|
||||
void clearAuthChallenge() => $_clearField(1);
|
||||
@$pb.TagNumber(1)
|
||||
AuthChallenge ensureAuthChallenge() => $_ensure(0);
|
||||
|
||||
@$pb.TagNumber(2)
|
||||
AuthOk get authOk => $_getN(1);
|
||||
@$pb.TagNumber(2)
|
||||
set authOk(AuthOk value) => $_setField(2, value);
|
||||
@$pb.TagNumber(2)
|
||||
$core.bool hasAuthOk() => $_has(1);
|
||||
@$pb.TagNumber(2)
|
||||
void clearAuthOk() => $_clearField(2);
|
||||
@$pb.TagNumber(2)
|
||||
AuthOk ensureAuthOk() => $_ensure(1);
|
||||
|
||||
@$pb.TagNumber(3)
|
||||
$0.EvmSignTransactionResponse get evmSignTransaction => $_getN(2);
|
||||
@$pb.TagNumber(3)
|
||||
set evmSignTransaction($0.EvmSignTransactionResponse value) =>
|
||||
$_setField(3, value);
|
||||
@$pb.TagNumber(3)
|
||||
$core.bool hasEvmSignTransaction() => $_has(2);
|
||||
@$pb.TagNumber(3)
|
||||
void clearEvmSignTransaction() => $_clearField(3);
|
||||
@$pb.TagNumber(3)
|
||||
$0.EvmSignTransactionResponse ensureEvmSignTransaction() => $_ensure(2);
|
||||
|
||||
@$pb.TagNumber(4)
|
||||
$0.EvmAnalyzeTransactionResponse get evmAnalyzeTransaction => $_getN(3);
|
||||
@$pb.TagNumber(4)
|
||||
set evmAnalyzeTransaction($0.EvmAnalyzeTransactionResponse value) =>
|
||||
$_setField(4, value);
|
||||
@$pb.TagNumber(4)
|
||||
$core.bool hasEvmAnalyzeTransaction() => $_has(3);
|
||||
@$pb.TagNumber(4)
|
||||
void clearEvmAnalyzeTransaction() => $_clearField(4);
|
||||
@$pb.TagNumber(4)
|
||||
$0.EvmAnalyzeTransactionResponse ensureEvmAnalyzeTransaction() => $_ensure(3);
|
||||
|
||||
@$pb.TagNumber(5)
|
||||
ClientConnectError get clientConnectError => $_getN(4);
|
||||
@$pb.TagNumber(5)
|
||||
set clientConnectError(ClientConnectError value) => $_setField(5, value);
|
||||
@$pb.TagNumber(5)
|
||||
$core.bool hasClientConnectError() => $_has(4);
|
||||
@$pb.TagNumber(5)
|
||||
void clearClientConnectError() => $_clearField(5);
|
||||
@$pb.TagNumber(5)
|
||||
ClientConnectError ensureClientConnectError() => $_ensure(4);
|
||||
}
|
||||
|
||||
const $core.bool _omitFieldNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_field_names');
|
||||
const $core.bool _omitMessageNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_message_names');
|
||||
42
useragent/lib/proto/client.pbenum.dart
Normal file
@@ -0,0 +1,42 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from client.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
|
||||
import 'dart:core' as $core;
|
||||
|
||||
import 'package:protobuf/protobuf.dart' as $pb;
|
||||
|
||||
class ClientConnectError_Code extends $pb.ProtobufEnum {
|
||||
static const ClientConnectError_Code UNKNOWN =
|
||||
ClientConnectError_Code._(0, _omitEnumNames ? '' : 'UNKNOWN');
|
||||
static const ClientConnectError_Code APPROVAL_DENIED =
|
||||
ClientConnectError_Code._(1, _omitEnumNames ? '' : 'APPROVAL_DENIED');
|
||||
static const ClientConnectError_Code NO_USER_AGENTS_ONLINE =
|
||||
ClientConnectError_Code._(
|
||||
2, _omitEnumNames ? '' : 'NO_USER_AGENTS_ONLINE');
|
||||
|
||||
static const $core.List<ClientConnectError_Code> values =
|
||||
<ClientConnectError_Code>[
|
||||
UNKNOWN,
|
||||
APPROVAL_DENIED,
|
||||
NO_USER_AGENTS_ONLINE,
|
||||
];
|
||||
|
||||
static final $core.List<ClientConnectError_Code?> _byValue =
|
||||
$pb.ProtobufEnum.$_initByValueList(values, 2);
|
||||
static ClientConnectError_Code? valueOf($core.int value) =>
|
||||
value < 0 || value >= _byValue.length ? null : _byValue[value];
|
||||
|
||||
const ClientConnectError_Code._(super.value, super.name);
|
||||
}
|
||||
|
||||
const $core.bool _omitEnumNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_enum_names');
|
||||
197
useragent/lib/proto/client.pbjson.dart
Normal file
@@ -0,0 +1,197 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from client.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
// ignore_for_file: unused_import
|
||||
|
||||
import 'dart:convert' as $convert;
|
||||
import 'dart:core' as $core;
|
||||
import 'dart:typed_data' as $typed_data;
|
||||
|
||||
@$core.Deprecated('Use authChallengeRequestDescriptor instead')
|
||||
const AuthChallengeRequest$json = {
|
||||
'1': 'AuthChallengeRequest',
|
||||
'2': [
|
||||
{'1': 'pubkey', '3': 1, '4': 1, '5': 12, '10': 'pubkey'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthChallengeRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authChallengeRequestDescriptor =
|
||||
$convert.base64Decode(
|
||||
'ChRBdXRoQ2hhbGxlbmdlUmVxdWVzdBIWCgZwdWJrZXkYASABKAxSBnB1YmtleQ==');
|
||||
|
||||
@$core.Deprecated('Use authChallengeDescriptor instead')
|
||||
const AuthChallenge$json = {
|
||||
'1': 'AuthChallenge',
|
||||
'2': [
|
||||
{'1': 'pubkey', '3': 1, '4': 1, '5': 12, '10': 'pubkey'},
|
||||
{'1': 'nonce', '3': 2, '4': 1, '5': 5, '10': 'nonce'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthChallenge`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authChallengeDescriptor = $convert.base64Decode(
|
||||
'Cg1BdXRoQ2hhbGxlbmdlEhYKBnB1YmtleRgBIAEoDFIGcHVia2V5EhQKBW5vbmNlGAIgASgFUg'
|
||||
'Vub25jZQ==');
|
||||
|
||||
@$core.Deprecated('Use authChallengeSolutionDescriptor instead')
|
||||
const AuthChallengeSolution$json = {
|
||||
'1': 'AuthChallengeSolution',
|
||||
'2': [
|
||||
{'1': 'signature', '3': 1, '4': 1, '5': 12, '10': 'signature'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthChallengeSolution`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authChallengeSolutionDescriptor = $convert.base64Decode(
|
||||
'ChVBdXRoQ2hhbGxlbmdlU29sdXRpb24SHAoJc2lnbmF0dXJlGAEgASgMUglzaWduYXR1cmU=');
|
||||
|
||||
@$core.Deprecated('Use authOkDescriptor instead')
|
||||
const AuthOk$json = {
|
||||
'1': 'AuthOk',
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthOk`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authOkDescriptor =
|
||||
$convert.base64Decode('CgZBdXRoT2s=');
|
||||
|
||||
@$core.Deprecated('Use clientRequestDescriptor instead')
|
||||
const ClientRequest$json = {
|
||||
'1': 'ClientRequest',
|
||||
'2': [
|
||||
{
|
||||
'1': 'auth_challenge_request',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.client.AuthChallengeRequest',
|
||||
'9': 0,
|
||||
'10': 'authChallengeRequest'
|
||||
},
|
||||
{
|
||||
'1': 'auth_challenge_solution',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.client.AuthChallengeSolution',
|
||||
'9': 0,
|
||||
'10': 'authChallengeSolution'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'payload'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `ClientRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List clientRequestDescriptor = $convert.base64Decode(
|
||||
'Cg1DbGllbnRSZXF1ZXN0ElwKFmF1dGhfY2hhbGxlbmdlX3JlcXVlc3QYASABKAsyJC5hcmJpdG'
|
||||
'VyLmNsaWVudC5BdXRoQ2hhbGxlbmdlUmVxdWVzdEgAUhRhdXRoQ2hhbGxlbmdlUmVxdWVzdBJf'
|
||||
'ChdhdXRoX2NoYWxsZW5nZV9zb2x1dGlvbhgCIAEoCzIlLmFyYml0ZXIuY2xpZW50LkF1dGhDaG'
|
||||
'FsbGVuZ2VTb2x1dGlvbkgAUhVhdXRoQ2hhbGxlbmdlU29sdXRpb25CCQoHcGF5bG9hZA==');
|
||||
|
||||
@$core.Deprecated('Use clientConnectErrorDescriptor instead')
|
||||
const ClientConnectError$json = {
|
||||
'1': 'ClientConnectError',
|
||||
'2': [
|
||||
{
|
||||
'1': 'code',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.client.ClientConnectError.Code',
|
||||
'10': 'code'
|
||||
},
|
||||
],
|
||||
'4': [ClientConnectError_Code$json],
|
||||
};
|
||||
|
||||
@$core.Deprecated('Use clientConnectErrorDescriptor instead')
|
||||
const ClientConnectError_Code$json = {
|
||||
'1': 'Code',
|
||||
'2': [
|
||||
{'1': 'UNKNOWN', '2': 0},
|
||||
{'1': 'APPROVAL_DENIED', '2': 1},
|
||||
{'1': 'NO_USER_AGENTS_ONLINE', '2': 2},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `ClientConnectError`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List clientConnectErrorDescriptor = $convert.base64Decode(
|
||||
'ChJDbGllbnRDb25uZWN0RXJyb3ISOwoEY29kZRgBIAEoDjInLmFyYml0ZXIuY2xpZW50LkNsaW'
|
||||
'VudENvbm5lY3RFcnJvci5Db2RlUgRjb2RlIkMKBENvZGUSCwoHVU5LTk9XThAAEhMKD0FQUFJP'
|
||||
'VkFMX0RFTklFRBABEhkKFU5PX1VTRVJfQUdFTlRTX09OTElORRAC');
|
||||
|
||||
@$core.Deprecated('Use clientResponseDescriptor instead')
|
||||
const ClientResponse$json = {
|
||||
'1': 'ClientResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'auth_challenge',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.client.AuthChallenge',
|
||||
'9': 0,
|
||||
'10': 'authChallenge'
|
||||
},
|
||||
{
|
||||
'1': 'auth_ok',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.client.AuthOk',
|
||||
'9': 0,
|
||||
'10': 'authOk'
|
||||
},
|
||||
{
|
||||
'1': 'client_connect_error',
|
||||
'3': 5,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.client.ClientConnectError',
|
||||
'9': 0,
|
||||
'10': 'clientConnectError'
|
||||
},
|
||||
{
|
||||
'1': 'evm_sign_transaction',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmSignTransactionResponse',
|
||||
'9': 0,
|
||||
'10': 'evmSignTransaction'
|
||||
},
|
||||
{
|
||||
'1': 'evm_analyze_transaction',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmAnalyzeTransactionResponse',
|
||||
'9': 0,
|
||||
'10': 'evmAnalyzeTransaction'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'payload'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `ClientResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List clientResponseDescriptor = $convert.base64Decode(
|
||||
'Cg5DbGllbnRSZXNwb25zZRJGCg5hdXRoX2NoYWxsZW5nZRgBIAEoCzIdLmFyYml0ZXIuY2xpZW'
|
||||
'50LkF1dGhDaGFsbGVuZ2VIAFINYXV0aENoYWxsZW5nZRIxCgdhdXRoX29rGAIgASgLMhYuYXJi'
|
||||
'aXRlci5jbGllbnQuQXV0aE9rSABSBmF1dGhPaxJWChRjbGllbnRfY29ubmVjdF9lcnJvchgFIA'
|
||||
'EoCzIiLmFyYml0ZXIuY2xpZW50LkNsaWVudENvbm5lY3RFcnJvckgAUhJjbGllbnRDb25uZWN0'
|
||||
'RXJyb3ISWwoUZXZtX3NpZ25fdHJhbnNhY3Rpb24YAyABKAsyJy5hcmJpdGVyLmV2bS5Fdm1TaW'
|
||||
'duVHJhbnNhY3Rpb25SZXNwb25zZUgAUhJldm1TaWduVHJhbnNhY3Rpb24SZAoXZXZtX2FuYWx5'
|
||||
'emVfdHJhbnNhY3Rpb24YBCABKAsyKi5hcmJpdGVyLmV2bS5Fdm1BbmFseXplVHJhbnNhY3Rpb2'
|
||||
'5SZXNwb25zZUgAUhVldm1BbmFseXplVHJhbnNhY3Rpb25CCQoHcGF5bG9hZA==');
|
||||
2582
useragent/lib/proto/evm.pb.dart
Normal file
40
useragent/lib/proto/evm.pbenum.dart
Normal file
@@ -0,0 +1,40 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from evm.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
|
||||
import 'dart:core' as $core;
|
||||
|
||||
import 'package:protobuf/protobuf.dart' as $pb;
|
||||
|
||||
class EvmError extends $pb.ProtobufEnum {
|
||||
static const EvmError EVM_ERROR_UNSPECIFIED =
|
||||
EvmError._(0, _omitEnumNames ? '' : 'EVM_ERROR_UNSPECIFIED');
|
||||
static const EvmError EVM_ERROR_VAULT_SEALED =
|
||||
EvmError._(1, _omitEnumNames ? '' : 'EVM_ERROR_VAULT_SEALED');
|
||||
static const EvmError EVM_ERROR_INTERNAL =
|
||||
EvmError._(2, _omitEnumNames ? '' : 'EVM_ERROR_INTERNAL');
|
||||
|
||||
static const $core.List<EvmError> values = <EvmError>[
|
||||
EVM_ERROR_UNSPECIFIED,
|
||||
EVM_ERROR_VAULT_SEALED,
|
||||
EVM_ERROR_INTERNAL,
|
||||
];
|
||||
|
||||
static final $core.List<EvmError?> _byValue =
|
||||
$pb.ProtobufEnum.$_initByValueList(values, 2);
|
||||
static EvmError? valueOf($core.int value) =>
|
||||
value < 0 || value >= _byValue.length ? null : _byValue[value];
|
||||
|
||||
const EvmError._(super.value, super.name);
|
||||
}
|
||||
|
||||
const $core.bool _omitEnumNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_enum_names');
|
||||
950
useragent/lib/proto/evm.pbjson.dart
Normal file
@@ -0,0 +1,950 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from evm.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
// ignore_for_file: unused_import
|
||||
|
||||
import 'dart:convert' as $convert;
|
||||
import 'dart:core' as $core;
|
||||
import 'dart:typed_data' as $typed_data;
|
||||
|
||||
@$core.Deprecated('Use evmErrorDescriptor instead')
|
||||
const EvmError$json = {
|
||||
'1': 'EvmError',
|
||||
'2': [
|
||||
{'1': 'EVM_ERROR_UNSPECIFIED', '2': 0},
|
||||
{'1': 'EVM_ERROR_VAULT_SEALED', '2': 1},
|
||||
{'1': 'EVM_ERROR_INTERNAL', '2': 2},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmError`. Decode as a `google.protobuf.EnumDescriptorProto`.
|
||||
final $typed_data.Uint8List evmErrorDescriptor = $convert.base64Decode(
|
||||
'CghFdm1FcnJvchIZChVFVk1fRVJST1JfVU5TUEVDSUZJRUQQABIaChZFVk1fRVJST1JfVkFVTF'
|
||||
'RfU0VBTEVEEAESFgoSRVZNX0VSUk9SX0lOVEVSTkFMEAI=');
|
||||
|
||||
@$core.Deprecated('Use walletEntryDescriptor instead')
|
||||
const WalletEntry$json = {
|
||||
'1': 'WalletEntry',
|
||||
'2': [
|
||||
{'1': 'address', '3': 1, '4': 1, '5': 12, '10': 'address'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `WalletEntry`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List walletEntryDescriptor = $convert
|
||||
.base64Decode('CgtXYWxsZXRFbnRyeRIYCgdhZGRyZXNzGAEgASgMUgdhZGRyZXNz');
|
||||
|
||||
@$core.Deprecated('Use walletListDescriptor instead')
|
||||
const WalletList$json = {
|
||||
'1': 'WalletList',
|
||||
'2': [
|
||||
{
|
||||
'1': 'wallets',
|
||||
'3': 1,
|
||||
'4': 3,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.WalletEntry',
|
||||
'10': 'wallets'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `WalletList`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List walletListDescriptor = $convert.base64Decode(
|
||||
'CgpXYWxsZXRMaXN0EjIKB3dhbGxldHMYASADKAsyGC5hcmJpdGVyLmV2bS5XYWxsZXRFbnRyeV'
|
||||
'IHd2FsbGV0cw==');
|
||||
|
||||
@$core.Deprecated('Use walletCreateResponseDescriptor instead')
|
||||
const WalletCreateResponse$json = {
|
||||
'1': 'WalletCreateResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'wallet',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.WalletEntry',
|
||||
'9': 0,
|
||||
'10': 'wallet'
|
||||
},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `WalletCreateResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List walletCreateResponseDescriptor = $convert.base64Decode(
|
||||
'ChRXYWxsZXRDcmVhdGVSZXNwb25zZRIyCgZ3YWxsZXQYASABKAsyGC5hcmJpdGVyLmV2bS5XYW'
|
||||
'xsZXRFbnRyeUgAUgZ3YWxsZXQSLQoFZXJyb3IYAiABKA4yFS5hcmJpdGVyLmV2bS5Fdm1FcnJv'
|
||||
'ckgAUgVlcnJvckIICgZyZXN1bHQ=');
|
||||
|
||||
@$core.Deprecated('Use walletListResponseDescriptor instead')
|
||||
const WalletListResponse$json = {
|
||||
'1': 'WalletListResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'wallets',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.WalletList',
|
||||
'9': 0,
|
||||
'10': 'wallets'
|
||||
},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `WalletListResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List walletListResponseDescriptor = $convert.base64Decode(
|
||||
'ChJXYWxsZXRMaXN0UmVzcG9uc2USMwoHd2FsbGV0cxgBIAEoCzIXLmFyYml0ZXIuZXZtLldhbG'
|
||||
'xldExpc3RIAFIHd2FsbGV0cxItCgVlcnJvchgCIAEoDjIVLmFyYml0ZXIuZXZtLkV2bUVycm9y'
|
||||
'SABSBWVycm9yQggKBnJlc3VsdA==');
|
||||
|
||||
@$core.Deprecated('Use transactionRateLimitDescriptor instead')
|
||||
const TransactionRateLimit$json = {
|
||||
'1': 'TransactionRateLimit',
|
||||
'2': [
|
||||
{'1': 'count', '3': 1, '4': 1, '5': 13, '10': 'count'},
|
||||
{'1': 'window_secs', '3': 2, '4': 1, '5': 3, '10': 'windowSecs'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `TransactionRateLimit`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List transactionRateLimitDescriptor = $convert.base64Decode(
|
||||
'ChRUcmFuc2FjdGlvblJhdGVMaW1pdBIUCgVjb3VudBgBIAEoDVIFY291bnQSHwoLd2luZG93X3'
|
||||
'NlY3MYAiABKANSCndpbmRvd1NlY3M=');
|
||||
|
||||
@$core.Deprecated('Use volumeRateLimitDescriptor instead')
|
||||
const VolumeRateLimit$json = {
|
||||
'1': 'VolumeRateLimit',
|
||||
'2': [
|
||||
{'1': 'max_volume', '3': 1, '4': 1, '5': 12, '10': 'maxVolume'},
|
||||
{'1': 'window_secs', '3': 2, '4': 1, '5': 3, '10': 'windowSecs'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `VolumeRateLimit`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List volumeRateLimitDescriptor = $convert.base64Decode(
|
||||
'Cg9Wb2x1bWVSYXRlTGltaXQSHQoKbWF4X3ZvbHVtZRgBIAEoDFIJbWF4Vm9sdW1lEh8KC3dpbm'
|
||||
'Rvd19zZWNzGAIgASgDUgp3aW5kb3dTZWNz');
|
||||
|
||||
@$core.Deprecated('Use sharedSettingsDescriptor instead')
|
||||
const SharedSettings$json = {
|
||||
'1': 'SharedSettings',
|
||||
'2': [
|
||||
{'1': 'wallet_id', '3': 1, '4': 1, '5': 5, '10': 'walletId'},
|
||||
{'1': 'chain_id', '3': 2, '4': 1, '5': 4, '10': 'chainId'},
|
||||
{
|
||||
'1': 'valid_from',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Timestamp',
|
||||
'9': 0,
|
||||
'10': 'validFrom',
|
||||
'17': true
|
||||
},
|
||||
{
|
||||
'1': 'valid_until',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Timestamp',
|
||||
'9': 1,
|
||||
'10': 'validUntil',
|
||||
'17': true
|
||||
},
|
||||
{
|
||||
'1': 'max_gas_fee_per_gas',
|
||||
'3': 5,
|
||||
'4': 1,
|
||||
'5': 12,
|
||||
'9': 2,
|
||||
'10': 'maxGasFeePerGas',
|
||||
'17': true
|
||||
},
|
||||
{
|
||||
'1': 'max_priority_fee_per_gas',
|
||||
'3': 6,
|
||||
'4': 1,
|
||||
'5': 12,
|
||||
'9': 3,
|
||||
'10': 'maxPriorityFeePerGas',
|
||||
'17': true
|
||||
},
|
||||
{
|
||||
'1': 'rate_limit',
|
||||
'3': 7,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.TransactionRateLimit',
|
||||
'9': 4,
|
||||
'10': 'rateLimit',
|
||||
'17': true
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': '_valid_from'},
|
||||
{'1': '_valid_until'},
|
||||
{'1': '_max_gas_fee_per_gas'},
|
||||
{'1': '_max_priority_fee_per_gas'},
|
||||
{'1': '_rate_limit'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `SharedSettings`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List sharedSettingsDescriptor = $convert.base64Decode(
|
||||
'Cg5TaGFyZWRTZXR0aW5ncxIbCgl3YWxsZXRfaWQYASABKAVSCHdhbGxldElkEhkKCGNoYWluX2'
|
||||
'lkGAIgASgEUgdjaGFpbklkEj4KCnZhbGlkX2Zyb20YAyABKAsyGi5nb29nbGUucHJvdG9idWYu'
|
||||
'VGltZXN0YW1wSABSCXZhbGlkRnJvbYgBARJACgt2YWxpZF91bnRpbBgEIAEoCzIaLmdvb2dsZS'
|
||||
'5wcm90b2J1Zi5UaW1lc3RhbXBIAVIKdmFsaWRVbnRpbIgBARIxChNtYXhfZ2FzX2ZlZV9wZXJf'
|
||||
'Z2FzGAUgASgMSAJSD21heEdhc0ZlZVBlckdhc4gBARI7ChhtYXhfcHJpb3JpdHlfZmVlX3Blcl'
|
||||
'9nYXMYBiABKAxIA1IUbWF4UHJpb3JpdHlGZWVQZXJHYXOIAQESRQoKcmF0ZV9saW1pdBgHIAEo'
|
||||
'CzIhLmFyYml0ZXIuZXZtLlRyYW5zYWN0aW9uUmF0ZUxpbWl0SARSCXJhdGVMaW1pdIgBAUINCg'
|
||||
'tfdmFsaWRfZnJvbUIOCgxfdmFsaWRfdW50aWxCFgoUX21heF9nYXNfZmVlX3Blcl9nYXNCGwoZ'
|
||||
'X21heF9wcmlvcml0eV9mZWVfcGVyX2dhc0INCgtfcmF0ZV9saW1pdA==');
|
||||
|
||||
@$core.Deprecated('Use etherTransferSettingsDescriptor instead')
|
||||
const EtherTransferSettings$json = {
|
||||
'1': 'EtherTransferSettings',
|
||||
'2': [
|
||||
{'1': 'targets', '3': 1, '4': 3, '5': 12, '10': 'targets'},
|
||||
{
|
||||
'1': 'limit',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.VolumeRateLimit',
|
||||
'10': 'limit'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EtherTransferSettings`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List etherTransferSettingsDescriptor = $convert.base64Decode(
|
||||
'ChVFdGhlclRyYW5zZmVyU2V0dGluZ3MSGAoHdGFyZ2V0cxgBIAMoDFIHdGFyZ2V0cxIyCgVsaW'
|
||||
'1pdBgCIAEoCzIcLmFyYml0ZXIuZXZtLlZvbHVtZVJhdGVMaW1pdFIFbGltaXQ=');
|
||||
|
||||
@$core.Deprecated('Use tokenTransferSettingsDescriptor instead')
|
||||
const TokenTransferSettings$json = {
|
||||
'1': 'TokenTransferSettings',
|
||||
'2': [
|
||||
{'1': 'token_contract', '3': 1, '4': 1, '5': 12, '10': 'tokenContract'},
|
||||
{
|
||||
'1': 'target',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 12,
|
||||
'9': 0,
|
||||
'10': 'target',
|
||||
'17': true
|
||||
},
|
||||
{
|
||||
'1': 'volume_limits',
|
||||
'3': 3,
|
||||
'4': 3,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.VolumeRateLimit',
|
||||
'10': 'volumeLimits'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': '_target'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `TokenTransferSettings`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List tokenTransferSettingsDescriptor = $convert.base64Decode(
|
||||
'ChVUb2tlblRyYW5zZmVyU2V0dGluZ3MSJQoOdG9rZW5fY29udHJhY3QYASABKAxSDXRva2VuQ2'
|
||||
'9udHJhY3QSGwoGdGFyZ2V0GAIgASgMSABSBnRhcmdldIgBARJBCg12b2x1bWVfbGltaXRzGAMg'
|
||||
'AygLMhwuYXJiaXRlci5ldm0uVm9sdW1lUmF0ZUxpbWl0Ugx2b2x1bWVMaW1pdHNCCQoHX3Rhcm'
|
||||
'dldA==');
|
||||
|
||||
@$core.Deprecated('Use specificGrantDescriptor instead')
|
||||
const SpecificGrant$json = {
|
||||
'1': 'SpecificGrant',
|
||||
'2': [
|
||||
{
|
||||
'1': 'ether_transfer',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EtherTransferSettings',
|
||||
'9': 0,
|
||||
'10': 'etherTransfer'
|
||||
},
|
||||
{
|
||||
'1': 'token_transfer',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.TokenTransferSettings',
|
||||
'9': 0,
|
||||
'10': 'tokenTransfer'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'grant'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `SpecificGrant`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List specificGrantDescriptor = $convert.base64Decode(
|
||||
'Cg1TcGVjaWZpY0dyYW50EksKDmV0aGVyX3RyYW5zZmVyGAEgASgLMiIuYXJiaXRlci5ldm0uRX'
|
||||
'RoZXJUcmFuc2ZlclNldHRpbmdzSABSDWV0aGVyVHJhbnNmZXISSwoOdG9rZW5fdHJhbnNmZXIY'
|
||||
'AiABKAsyIi5hcmJpdGVyLmV2bS5Ub2tlblRyYW5zZmVyU2V0dGluZ3NIAFINdG9rZW5UcmFuc2'
|
||||
'ZlckIHCgVncmFudA==');
|
||||
|
||||
@$core.Deprecated('Use etherTransferMeaningDescriptor instead')
|
||||
const EtherTransferMeaning$json = {
|
||||
'1': 'EtherTransferMeaning',
|
||||
'2': [
|
||||
{'1': 'to', '3': 1, '4': 1, '5': 12, '10': 'to'},
|
||||
{'1': 'value', '3': 2, '4': 1, '5': 12, '10': 'value'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EtherTransferMeaning`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List etherTransferMeaningDescriptor = $convert.base64Decode(
|
||||
'ChRFdGhlclRyYW5zZmVyTWVhbmluZxIOCgJ0bxgBIAEoDFICdG8SFAoFdmFsdWUYAiABKAxSBX'
|
||||
'ZhbHVl');
|
||||
|
||||
@$core.Deprecated('Use tokenInfoDescriptor instead')
|
||||
const TokenInfo$json = {
|
||||
'1': 'TokenInfo',
|
||||
'2': [
|
||||
{'1': 'symbol', '3': 1, '4': 1, '5': 9, '10': 'symbol'},
|
||||
{'1': 'address', '3': 2, '4': 1, '5': 12, '10': 'address'},
|
||||
{'1': 'chain_id', '3': 3, '4': 1, '5': 4, '10': 'chainId'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `TokenInfo`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List tokenInfoDescriptor = $convert.base64Decode(
|
||||
'CglUb2tlbkluZm8SFgoGc3ltYm9sGAEgASgJUgZzeW1ib2wSGAoHYWRkcmVzcxgCIAEoDFIHYW'
|
||||
'RkcmVzcxIZCghjaGFpbl9pZBgDIAEoBFIHY2hhaW5JZA==');
|
||||
|
||||
@$core.Deprecated('Use tokenTransferMeaningDescriptor instead')
|
||||
const TokenTransferMeaning$json = {
|
||||
'1': 'TokenTransferMeaning',
|
||||
'2': [
|
||||
{
|
||||
'1': 'token',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.TokenInfo',
|
||||
'10': 'token'
|
||||
},
|
||||
{'1': 'to', '3': 2, '4': 1, '5': 12, '10': 'to'},
|
||||
{'1': 'value', '3': 3, '4': 1, '5': 12, '10': 'value'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `TokenTransferMeaning`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List tokenTransferMeaningDescriptor = $convert.base64Decode(
|
||||
'ChRUb2tlblRyYW5zZmVyTWVhbmluZxIsCgV0b2tlbhgBIAEoCzIWLmFyYml0ZXIuZXZtLlRva2'
|
||||
'VuSW5mb1IFdG9rZW4SDgoCdG8YAiABKAxSAnRvEhQKBXZhbHVlGAMgASgMUgV2YWx1ZQ==');
|
||||
|
||||
@$core.Deprecated('Use specificMeaningDescriptor instead')
|
||||
const SpecificMeaning$json = {
|
||||
'1': 'SpecificMeaning',
|
||||
'2': [
|
||||
{
|
||||
'1': 'ether_transfer',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EtherTransferMeaning',
|
||||
'9': 0,
|
||||
'10': 'etherTransfer'
|
||||
},
|
||||
{
|
||||
'1': 'token_transfer',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.TokenTransferMeaning',
|
||||
'9': 0,
|
||||
'10': 'tokenTransfer'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'meaning'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `SpecificMeaning`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List specificMeaningDescriptor = $convert.base64Decode(
|
||||
'Cg9TcGVjaWZpY01lYW5pbmcSSgoOZXRoZXJfdHJhbnNmZXIYASABKAsyIS5hcmJpdGVyLmV2bS'
|
||||
'5FdGhlclRyYW5zZmVyTWVhbmluZ0gAUg1ldGhlclRyYW5zZmVyEkoKDnRva2VuX3RyYW5zZmVy'
|
||||
'GAIgASgLMiEuYXJiaXRlci5ldm0uVG9rZW5UcmFuc2Zlck1lYW5pbmdIAFINdG9rZW5UcmFuc2'
|
||||
'ZlckIJCgdtZWFuaW5n');
|
||||
|
||||
@$core.Deprecated('Use gasLimitExceededViolationDescriptor instead')
|
||||
const GasLimitExceededViolation$json = {
|
||||
'1': 'GasLimitExceededViolation',
|
||||
'2': [
|
||||
{
|
||||
'1': 'max_gas_fee_per_gas',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 12,
|
||||
'9': 0,
|
||||
'10': 'maxGasFeePerGas',
|
||||
'17': true
|
||||
},
|
||||
{
|
||||
'1': 'max_priority_fee_per_gas',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 12,
|
||||
'9': 1,
|
||||
'10': 'maxPriorityFeePerGas',
|
||||
'17': true
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': '_max_gas_fee_per_gas'},
|
||||
{'1': '_max_priority_fee_per_gas'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `GasLimitExceededViolation`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List gasLimitExceededViolationDescriptor = $convert.base64Decode(
|
||||
'ChlHYXNMaW1pdEV4Y2VlZGVkVmlvbGF0aW9uEjEKE21heF9nYXNfZmVlX3Blcl9nYXMYASABKA'
|
||||
'xIAFIPbWF4R2FzRmVlUGVyR2FziAEBEjsKGG1heF9wcmlvcml0eV9mZWVfcGVyX2dhcxgCIAEo'
|
||||
'DEgBUhRtYXhQcmlvcml0eUZlZVBlckdhc4gBAUIWChRfbWF4X2dhc19mZWVfcGVyX2dhc0IbCh'
|
||||
'lfbWF4X3ByaW9yaXR5X2ZlZV9wZXJfZ2Fz');
|
||||
|
||||
@$core.Deprecated('Use evalViolationDescriptor instead')
|
||||
const EvalViolation$json = {
|
||||
'1': 'EvalViolation',
|
||||
'2': [
|
||||
{
|
||||
'1': 'invalid_target',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 12,
|
||||
'9': 0,
|
||||
'10': 'invalidTarget'
|
||||
},
|
||||
{
|
||||
'1': 'gas_limit_exceeded',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.GasLimitExceededViolation',
|
||||
'9': 0,
|
||||
'10': 'gasLimitExceeded'
|
||||
},
|
||||
{
|
||||
'1': 'rate_limit_exceeded',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'rateLimitExceeded'
|
||||
},
|
||||
{
|
||||
'1': 'volumetric_limit_exceeded',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'volumetricLimitExceeded'
|
||||
},
|
||||
{
|
||||
'1': 'invalid_time',
|
||||
'3': 5,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'invalidTime'
|
||||
},
|
||||
{
|
||||
'1': 'invalid_transaction_type',
|
||||
'3': 6,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'invalidTransactionType'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'kind'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvalViolation`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evalViolationDescriptor = $convert.base64Decode(
|
||||
'Cg1FdmFsVmlvbGF0aW9uEicKDmludmFsaWRfdGFyZ2V0GAEgASgMSABSDWludmFsaWRUYXJnZX'
|
||||
'QSVgoSZ2FzX2xpbWl0X2V4Y2VlZGVkGAIgASgLMiYuYXJiaXRlci5ldm0uR2FzTGltaXRFeGNl'
|
||||
'ZWRlZFZpb2xhdGlvbkgAUhBnYXNMaW1pdEV4Y2VlZGVkEkgKE3JhdGVfbGltaXRfZXhjZWVkZW'
|
||||
'QYAyABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlIAFIRcmF0ZUxpbWl0RXhjZWVkZWQSVAoZ'
|
||||
'dm9sdW1ldHJpY19saW1pdF9leGNlZWRlZBgEIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eU'
|
||||
'gAUhd2b2x1bWV0cmljTGltaXRFeGNlZWRlZBI7CgxpbnZhbGlkX3RpbWUYBSABKAsyFi5nb29n'
|
||||
'bGUucHJvdG9idWYuRW1wdHlIAFILaW52YWxpZFRpbWUSUgoYaW52YWxpZF90cmFuc2FjdGlvbl'
|
||||
'90eXBlGAYgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5SABSFmludmFsaWRUcmFuc2FjdGlv'
|
||||
'blR5cGVCBgoEa2luZA==');
|
||||
|
||||
@$core.Deprecated('Use noMatchingGrantErrorDescriptor instead')
|
||||
const NoMatchingGrantError$json = {
|
||||
'1': 'NoMatchingGrantError',
|
||||
'2': [
|
||||
{
|
||||
'1': 'meaning',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SpecificMeaning',
|
||||
'10': 'meaning'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `NoMatchingGrantError`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List noMatchingGrantErrorDescriptor = $convert.base64Decode(
|
||||
'ChROb01hdGNoaW5nR3JhbnRFcnJvchI2CgdtZWFuaW5nGAEgASgLMhwuYXJiaXRlci5ldm0uU3'
|
||||
'BlY2lmaWNNZWFuaW5nUgdtZWFuaW5n');
|
||||
|
||||
@$core.Deprecated('Use policyViolationsErrorDescriptor instead')
|
||||
const PolicyViolationsError$json = {
|
||||
'1': 'PolicyViolationsError',
|
||||
'2': [
|
||||
{
|
||||
'1': 'meaning',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SpecificMeaning',
|
||||
'10': 'meaning'
|
||||
},
|
||||
{
|
||||
'1': 'violations',
|
||||
'3': 2,
|
||||
'4': 3,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvalViolation',
|
||||
'10': 'violations'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `PolicyViolationsError`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List policyViolationsErrorDescriptor = $convert.base64Decode(
|
||||
'ChVQb2xpY3lWaW9sYXRpb25zRXJyb3ISNgoHbWVhbmluZxgBIAEoCzIcLmFyYml0ZXIuZXZtLl'
|
||||
'NwZWNpZmljTWVhbmluZ1IHbWVhbmluZxI6Cgp2aW9sYXRpb25zGAIgAygLMhouYXJiaXRlci5l'
|
||||
'dm0uRXZhbFZpb2xhdGlvblIKdmlvbGF0aW9ucw==');
|
||||
|
||||
@$core.Deprecated('Use transactionEvalErrorDescriptor instead')
|
||||
const TransactionEvalError$json = {
|
||||
'1': 'TransactionEvalError',
|
||||
'2': [
|
||||
{
|
||||
'1': 'contract_creation_not_supported',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'contractCreationNotSupported'
|
||||
},
|
||||
{
|
||||
'1': 'unsupported_transaction_type',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'unsupportedTransactionType'
|
||||
},
|
||||
{
|
||||
'1': 'no_matching_grant',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.NoMatchingGrantError',
|
||||
'9': 0,
|
||||
'10': 'noMatchingGrant'
|
||||
},
|
||||
{
|
||||
'1': 'policy_violations',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.PolicyViolationsError',
|
||||
'9': 0,
|
||||
'10': 'policyViolations'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'kind'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `TransactionEvalError`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List transactionEvalErrorDescriptor = $convert.base64Decode(
|
||||
'ChRUcmFuc2FjdGlvbkV2YWxFcnJvchJfCh9jb250cmFjdF9jcmVhdGlvbl9ub3Rfc3VwcG9ydG'
|
||||
'VkGAEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5SABSHGNvbnRyYWN0Q3JlYXRpb25Ob3RT'
|
||||
'dXBwb3J0ZWQSWgocdW5zdXBwb3J0ZWRfdHJhbnNhY3Rpb25fdHlwZRgCIAEoCzIWLmdvb2dsZS'
|
||||
'5wcm90b2J1Zi5FbXB0eUgAUhp1bnN1cHBvcnRlZFRyYW5zYWN0aW9uVHlwZRJPChFub19tYXRj'
|
||||
'aGluZ19ncmFudBgDIAEoCzIhLmFyYml0ZXIuZXZtLk5vTWF0Y2hpbmdHcmFudEVycm9ySABSD2'
|
||||
'5vTWF0Y2hpbmdHcmFudBJRChFwb2xpY3lfdmlvbGF0aW9ucxgEIAEoCzIiLmFyYml0ZXIuZXZt'
|
||||
'LlBvbGljeVZpb2xhdGlvbnNFcnJvckgAUhBwb2xpY3lWaW9sYXRpb25zQgYKBGtpbmQ=');
|
||||
|
||||
@$core.Deprecated('Use evmGrantCreateRequestDescriptor instead')
|
||||
const EvmGrantCreateRequest$json = {
|
||||
'1': 'EvmGrantCreateRequest',
|
||||
'2': [
|
||||
{'1': 'client_id', '3': 1, '4': 1, '5': 5, '10': 'clientId'},
|
||||
{
|
||||
'1': 'shared',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SharedSettings',
|
||||
'10': 'shared'
|
||||
},
|
||||
{
|
||||
'1': 'specific',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SpecificGrant',
|
||||
'10': 'specific'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantCreateRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantCreateRequestDescriptor = $convert.base64Decode(
|
||||
'ChVFdm1HcmFudENyZWF0ZVJlcXVlc3QSGwoJY2xpZW50X2lkGAEgASgFUghjbGllbnRJZBIzCg'
|
||||
'ZzaGFyZWQYAiABKAsyGy5hcmJpdGVyLmV2bS5TaGFyZWRTZXR0aW5nc1IGc2hhcmVkEjYKCHNw'
|
||||
'ZWNpZmljGAMgASgLMhouYXJiaXRlci5ldm0uU3BlY2lmaWNHcmFudFIIc3BlY2lmaWM=');
|
||||
|
||||
@$core.Deprecated('Use evmGrantCreateResponseDescriptor instead')
|
||||
const EvmGrantCreateResponse$json = {
|
||||
'1': 'EvmGrantCreateResponse',
|
||||
'2': [
|
||||
{'1': 'grant_id', '3': 1, '4': 1, '5': 5, '9': 0, '10': 'grantId'},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantCreateResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantCreateResponseDescriptor = $convert.base64Decode(
|
||||
'ChZFdm1HcmFudENyZWF0ZVJlc3BvbnNlEhsKCGdyYW50X2lkGAEgASgFSABSB2dyYW50SWQSLQ'
|
||||
'oFZXJyb3IYAiABKA4yFS5hcmJpdGVyLmV2bS5Fdm1FcnJvckgAUgVlcnJvckIICgZyZXN1bHQ=');
|
||||
|
||||
@$core.Deprecated('Use evmGrantDeleteRequestDescriptor instead')
|
||||
const EvmGrantDeleteRequest$json = {
|
||||
'1': 'EvmGrantDeleteRequest',
|
||||
'2': [
|
||||
{'1': 'grant_id', '3': 1, '4': 1, '5': 5, '10': 'grantId'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantDeleteRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantDeleteRequestDescriptor =
|
||||
$convert.base64Decode(
|
||||
'ChVFdm1HcmFudERlbGV0ZVJlcXVlc3QSGQoIZ3JhbnRfaWQYASABKAVSB2dyYW50SWQ=');
|
||||
|
||||
@$core.Deprecated('Use evmGrantDeleteResponseDescriptor instead')
|
||||
const EvmGrantDeleteResponse$json = {
|
||||
'1': 'EvmGrantDeleteResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'ok',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'ok'
|
||||
},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantDeleteResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantDeleteResponseDescriptor = $convert.base64Decode(
|
||||
'ChZFdm1HcmFudERlbGV0ZVJlc3BvbnNlEigKAm9rGAEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLk'
|
||||
'VtcHR5SABSAm9rEi0KBWVycm9yGAIgASgOMhUuYXJiaXRlci5ldm0uRXZtRXJyb3JIAFIFZXJy'
|
||||
'b3JCCAoGcmVzdWx0');
|
||||
|
||||
@$core.Deprecated('Use grantEntryDescriptor instead')
|
||||
const GrantEntry$json = {
|
||||
'1': 'GrantEntry',
|
||||
'2': [
|
||||
{'1': 'id', '3': 1, '4': 1, '5': 5, '10': 'id'},
|
||||
{'1': 'client_id', '3': 2, '4': 1, '5': 5, '10': 'clientId'},
|
||||
{
|
||||
'1': 'shared',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SharedSettings',
|
||||
'10': 'shared'
|
||||
},
|
||||
{
|
||||
'1': 'specific',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SpecificGrant',
|
||||
'10': 'specific'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `GrantEntry`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List grantEntryDescriptor = $convert.base64Decode(
|
||||
'CgpHcmFudEVudHJ5Eg4KAmlkGAEgASgFUgJpZBIbCgljbGllbnRfaWQYAiABKAVSCGNsaWVudE'
|
||||
'lkEjMKBnNoYXJlZBgDIAEoCzIbLmFyYml0ZXIuZXZtLlNoYXJlZFNldHRpbmdzUgZzaGFyZWQS'
|
||||
'NgoIc3BlY2lmaWMYBCABKAsyGi5hcmJpdGVyLmV2bS5TcGVjaWZpY0dyYW50UghzcGVjaWZpYw'
|
||||
'==');
|
||||
|
||||
@$core.Deprecated('Use evmGrantListRequestDescriptor instead')
|
||||
const EvmGrantListRequest$json = {
|
||||
'1': 'EvmGrantListRequest',
|
||||
'2': [
|
||||
{
|
||||
'1': 'wallet_id',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 5,
|
||||
'9': 0,
|
||||
'10': 'walletId',
|
||||
'17': true
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': '_wallet_id'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantListRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantListRequestDescriptor = $convert.base64Decode(
|
||||
'ChNFdm1HcmFudExpc3RSZXF1ZXN0EiAKCXdhbGxldF9pZBgBIAEoBUgAUgh3YWxsZXRJZIgBAU'
|
||||
'IMCgpfd2FsbGV0X2lk');
|
||||
|
||||
@$core.Deprecated('Use evmGrantListResponseDescriptor instead')
|
||||
const EvmGrantListResponse$json = {
|
||||
'1': 'EvmGrantListResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'grants',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantList',
|
||||
'9': 0,
|
||||
'10': 'grants'
|
||||
},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantListResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantListResponseDescriptor = $convert.base64Decode(
|
||||
'ChRFdm1HcmFudExpc3RSZXNwb25zZRIzCgZncmFudHMYASABKAsyGS5hcmJpdGVyLmV2bS5Fdm'
|
||||
'1HcmFudExpc3RIAFIGZ3JhbnRzEi0KBWVycm9yGAIgASgOMhUuYXJiaXRlci5ldm0uRXZtRXJy'
|
||||
'b3JIAFIFZXJyb3JCCAoGcmVzdWx0');
|
||||
|
||||
@$core.Deprecated('Use evmGrantListDescriptor instead')
|
||||
const EvmGrantList$json = {
|
||||
'1': 'EvmGrantList',
|
||||
'2': [
|
||||
{
|
||||
'1': 'grants',
|
||||
'3': 1,
|
||||
'4': 3,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.GrantEntry',
|
||||
'10': 'grants'
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmGrantList`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmGrantListDescriptor = $convert.base64Decode(
|
||||
'CgxFdm1HcmFudExpc3QSLwoGZ3JhbnRzGAEgAygLMhcuYXJiaXRlci5ldm0uR3JhbnRFbnRyeV'
|
||||
'IGZ3JhbnRz');
|
||||
|
||||
@$core.Deprecated('Use evmSignTransactionRequestDescriptor instead')
|
||||
const EvmSignTransactionRequest$json = {
|
||||
'1': 'EvmSignTransactionRequest',
|
||||
'2': [
|
||||
{'1': 'wallet_address', '3': 1, '4': 1, '5': 12, '10': 'walletAddress'},
|
||||
{'1': 'rlp_transaction', '3': 2, '4': 1, '5': 12, '10': 'rlpTransaction'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmSignTransactionRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmSignTransactionRequestDescriptor =
|
||||
$convert.base64Decode(
|
||||
'ChlFdm1TaWduVHJhbnNhY3Rpb25SZXF1ZXN0EiUKDndhbGxldF9hZGRyZXNzGAEgASgMUg13YW'
|
||||
'xsZXRBZGRyZXNzEicKD3JscF90cmFuc2FjdGlvbhgCIAEoDFIOcmxwVHJhbnNhY3Rpb24=');
|
||||
|
||||
@$core.Deprecated('Use evmSignTransactionResponseDescriptor instead')
|
||||
const EvmSignTransactionResponse$json = {
|
||||
'1': 'EvmSignTransactionResponse',
|
||||
'2': [
|
||||
{'1': 'signature', '3': 1, '4': 1, '5': 12, '9': 0, '10': 'signature'},
|
||||
{
|
||||
'1': 'eval_error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.TransactionEvalError',
|
||||
'9': 0,
|
||||
'10': 'evalError'
|
||||
},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmSignTransactionResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmSignTransactionResponseDescriptor = $convert.base64Decode(
|
||||
'ChpFdm1TaWduVHJhbnNhY3Rpb25SZXNwb25zZRIeCglzaWduYXR1cmUYASABKAxIAFIJc2lnbm'
|
||||
'F0dXJlEkIKCmV2YWxfZXJyb3IYAiABKAsyIS5hcmJpdGVyLmV2bS5UcmFuc2FjdGlvbkV2YWxF'
|
||||
'cnJvckgAUglldmFsRXJyb3ISLQoFZXJyb3IYAyABKA4yFS5hcmJpdGVyLmV2bS5Fdm1FcnJvck'
|
||||
'gAUgVlcnJvckIICgZyZXN1bHQ=');
|
||||
|
||||
@$core.Deprecated('Use evmAnalyzeTransactionRequestDescriptor instead')
|
||||
const EvmAnalyzeTransactionRequest$json = {
|
||||
'1': 'EvmAnalyzeTransactionRequest',
|
||||
'2': [
|
||||
{'1': 'wallet_address', '3': 1, '4': 1, '5': 12, '10': 'walletAddress'},
|
||||
{'1': 'rlp_transaction', '3': 2, '4': 1, '5': 12, '10': 'rlpTransaction'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmAnalyzeTransactionRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmAnalyzeTransactionRequestDescriptor =
|
||||
$convert.base64Decode(
|
||||
'ChxFdm1BbmFseXplVHJhbnNhY3Rpb25SZXF1ZXN0EiUKDndhbGxldF9hZGRyZXNzGAEgASgMUg'
|
||||
'13YWxsZXRBZGRyZXNzEicKD3JscF90cmFuc2FjdGlvbhgCIAEoDFIOcmxwVHJhbnNhY3Rpb24=');
|
||||
|
||||
@$core.Deprecated('Use evmAnalyzeTransactionResponseDescriptor instead')
|
||||
const EvmAnalyzeTransactionResponse$json = {
|
||||
'1': 'EvmAnalyzeTransactionResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'meaning',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.SpecificMeaning',
|
||||
'9': 0,
|
||||
'10': 'meaning'
|
||||
},
|
||||
{
|
||||
'1': 'eval_error',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.TransactionEvalError',
|
||||
'9': 0,
|
||||
'10': 'evalError'
|
||||
},
|
||||
{
|
||||
'1': 'error',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.evm.EvmError',
|
||||
'9': 0,
|
||||
'10': 'error'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'result'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `EvmAnalyzeTransactionResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List evmAnalyzeTransactionResponseDescriptor = $convert.base64Decode(
|
||||
'Ch1Fdm1BbmFseXplVHJhbnNhY3Rpb25SZXNwb25zZRI4CgdtZWFuaW5nGAEgASgLMhwuYXJiaX'
|
||||
'Rlci5ldm0uU3BlY2lmaWNNZWFuaW5nSABSB21lYW5pbmcSQgoKZXZhbF9lcnJvchgCIAEoCzIh'
|
||||
'LmFyYml0ZXIuZXZtLlRyYW5zYWN0aW9uRXZhbEVycm9ySABSCWV2YWxFcnJvchItCgVlcnJvch'
|
||||
'gDIAEoDjIVLmFyYml0ZXIuZXZtLkV2bUVycm9ySABSBWVycm9yQggKBnJlc3VsdA==');
|
||||
1166
useragent/lib/proto/user_agent.pb.dart
Normal file
71
useragent/lib/proto/user_agent.pbenum.dart
Normal file
@@ -0,0 +1,71 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from user_agent.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
|
||||
import 'dart:core' as $core;
|
||||
|
||||
import 'package:protobuf/protobuf.dart' as $pb;
|
||||
|
||||
class UnsealResult extends $pb.ProtobufEnum {
|
||||
static const UnsealResult UNSEAL_RESULT_UNSPECIFIED =
|
||||
UnsealResult._(0, _omitEnumNames ? '' : 'UNSEAL_RESULT_UNSPECIFIED');
|
||||
static const UnsealResult UNSEAL_RESULT_SUCCESS =
|
||||
UnsealResult._(1, _omitEnumNames ? '' : 'UNSEAL_RESULT_SUCCESS');
|
||||
static const UnsealResult UNSEAL_RESULT_INVALID_KEY =
|
||||
UnsealResult._(2, _omitEnumNames ? '' : 'UNSEAL_RESULT_INVALID_KEY');
|
||||
static const UnsealResult UNSEAL_RESULT_UNBOOTSTRAPPED =
|
||||
UnsealResult._(3, _omitEnumNames ? '' : 'UNSEAL_RESULT_UNBOOTSTRAPPED');
|
||||
|
||||
static const $core.List<UnsealResult> values = <UnsealResult>[
|
||||
UNSEAL_RESULT_UNSPECIFIED,
|
||||
UNSEAL_RESULT_SUCCESS,
|
||||
UNSEAL_RESULT_INVALID_KEY,
|
||||
UNSEAL_RESULT_UNBOOTSTRAPPED,
|
||||
];
|
||||
|
||||
static final $core.List<UnsealResult?> _byValue =
|
||||
$pb.ProtobufEnum.$_initByValueList(values, 3);
|
||||
static UnsealResult? valueOf($core.int value) =>
|
||||
value < 0 || value >= _byValue.length ? null : _byValue[value];
|
||||
|
||||
const UnsealResult._(super.value, super.name);
|
||||
}
|
||||
|
||||
class VaultState extends $pb.ProtobufEnum {
|
||||
static const VaultState VAULT_STATE_UNSPECIFIED =
|
||||
VaultState._(0, _omitEnumNames ? '' : 'VAULT_STATE_UNSPECIFIED');
|
||||
static const VaultState VAULT_STATE_UNBOOTSTRAPPED =
|
||||
VaultState._(1, _omitEnumNames ? '' : 'VAULT_STATE_UNBOOTSTRAPPED');
|
||||
static const VaultState VAULT_STATE_SEALED =
|
||||
VaultState._(2, _omitEnumNames ? '' : 'VAULT_STATE_SEALED');
|
||||
static const VaultState VAULT_STATE_UNSEALED =
|
||||
VaultState._(3, _omitEnumNames ? '' : 'VAULT_STATE_UNSEALED');
|
||||
static const VaultState VAULT_STATE_ERROR =
|
||||
VaultState._(4, _omitEnumNames ? '' : 'VAULT_STATE_ERROR');
|
||||
|
||||
static const $core.List<VaultState> values = <VaultState>[
|
||||
VAULT_STATE_UNSPECIFIED,
|
||||
VAULT_STATE_UNBOOTSTRAPPED,
|
||||
VAULT_STATE_SEALED,
|
||||
VAULT_STATE_UNSEALED,
|
||||
VAULT_STATE_ERROR,
|
||||
];
|
||||
|
||||
static final $core.List<VaultState?> _byValue =
|
||||
$pb.ProtobufEnum.$_initByValueList(values, 4);
|
||||
static VaultState? valueOf($core.int value) =>
|
||||
value < 0 || value >= _byValue.length ? null : _byValue[value];
|
||||
|
||||
const VaultState._(super.value, super.name);
|
||||
}
|
||||
|
||||
const $core.bool _omitEnumNames =
|
||||
$core.bool.fromEnvironment('protobuf.omit_enum_names');
|
||||
457
useragent/lib/proto/user_agent.pbjson.dart
Normal file
@@ -0,0 +1,457 @@
|
||||
// This is a generated file - do not edit.
|
||||
//
|
||||
// Generated from user_agent.proto.
|
||||
|
||||
// @dart = 3.3
|
||||
|
||||
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
|
||||
// ignore_for_file: constant_identifier_names
|
||||
// ignore_for_file: curly_braces_in_flow_control_structures
|
||||
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
|
||||
// ignore_for_file: non_constant_identifier_names, prefer_relative_imports
|
||||
// ignore_for_file: unused_import
|
||||
|
||||
import 'dart:convert' as $convert;
|
||||
import 'dart:core' as $core;
|
||||
import 'dart:typed_data' as $typed_data;
|
||||
|
||||
@$core.Deprecated('Use unsealResultDescriptor instead')
|
||||
const UnsealResult$json = {
|
||||
'1': 'UnsealResult',
|
||||
'2': [
|
||||
{'1': 'UNSEAL_RESULT_UNSPECIFIED', '2': 0},
|
||||
{'1': 'UNSEAL_RESULT_SUCCESS', '2': 1},
|
||||
{'1': 'UNSEAL_RESULT_INVALID_KEY', '2': 2},
|
||||
{'1': 'UNSEAL_RESULT_UNBOOTSTRAPPED', '2': 3},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `UnsealResult`. Decode as a `google.protobuf.EnumDescriptorProto`.
|
||||
final $typed_data.Uint8List unsealResultDescriptor = $convert.base64Decode(
|
||||
'CgxVbnNlYWxSZXN1bHQSHQoZVU5TRUFMX1JFU1VMVF9VTlNQRUNJRklFRBAAEhkKFVVOU0VBTF'
|
||||
'9SRVNVTFRfU1VDQ0VTUxABEh0KGVVOU0VBTF9SRVNVTFRfSU5WQUxJRF9LRVkQAhIgChxVTlNF'
|
||||
'QUxfUkVTVUxUX1VOQk9PVFNUUkFQUEVEEAM=');
|
||||
|
||||
@$core.Deprecated('Use vaultStateDescriptor instead')
|
||||
const VaultState$json = {
|
||||
'1': 'VaultState',
|
||||
'2': [
|
||||
{'1': 'VAULT_STATE_UNSPECIFIED', '2': 0},
|
||||
{'1': 'VAULT_STATE_UNBOOTSTRAPPED', '2': 1},
|
||||
{'1': 'VAULT_STATE_SEALED', '2': 2},
|
||||
{'1': 'VAULT_STATE_UNSEALED', '2': 3},
|
||||
{'1': 'VAULT_STATE_ERROR', '2': 4},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `VaultState`. Decode as a `google.protobuf.EnumDescriptorProto`.
|
||||
final $typed_data.Uint8List vaultStateDescriptor = $convert.base64Decode(
|
||||
'CgpWYXVsdFN0YXRlEhsKF1ZBVUxUX1NUQVRFX1VOU1BFQ0lGSUVEEAASHgoaVkFVTFRfU1RBVE'
|
||||
'VfVU5CT09UU1RSQVBQRUQQARIWChJWQVVMVF9TVEFURV9TRUFMRUQQAhIYChRWQVVMVF9TVEFU'
|
||||
'RV9VTlNFQUxFRBADEhUKEVZBVUxUX1NUQVRFX0VSUk9SEAQ=');
|
||||
|
||||
@$core.Deprecated('Use authChallengeRequestDescriptor instead')
|
||||
const AuthChallengeRequest$json = {
|
||||
'1': 'AuthChallengeRequest',
|
||||
'2': [
|
||||
{'1': 'pubkey', '3': 1, '4': 1, '5': 12, '10': 'pubkey'},
|
||||
{
|
||||
'1': 'bootstrap_token',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 9,
|
||||
'9': 0,
|
||||
'10': 'bootstrapToken',
|
||||
'17': true
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': '_bootstrap_token'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthChallengeRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authChallengeRequestDescriptor = $convert.base64Decode(
|
||||
'ChRBdXRoQ2hhbGxlbmdlUmVxdWVzdBIWCgZwdWJrZXkYASABKAxSBnB1YmtleRIsCg9ib290c3'
|
||||
'RyYXBfdG9rZW4YAiABKAlIAFIOYm9vdHN0cmFwVG9rZW6IAQFCEgoQX2Jvb3RzdHJhcF90b2tl'
|
||||
'bg==');
|
||||
|
||||
@$core.Deprecated('Use authChallengeDescriptor instead')
|
||||
const AuthChallenge$json = {
|
||||
'1': 'AuthChallenge',
|
||||
'2': [
|
||||
{'1': 'pubkey', '3': 1, '4': 1, '5': 12, '10': 'pubkey'},
|
||||
{'1': 'nonce', '3': 2, '4': 1, '5': 5, '10': 'nonce'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthChallenge`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authChallengeDescriptor = $convert.base64Decode(
|
||||
'Cg1BdXRoQ2hhbGxlbmdlEhYKBnB1YmtleRgBIAEoDFIGcHVia2V5EhQKBW5vbmNlGAIgASgFUg'
|
||||
'Vub25jZQ==');
|
||||
|
||||
@$core.Deprecated('Use authChallengeSolutionDescriptor instead')
|
||||
const AuthChallengeSolution$json = {
|
||||
'1': 'AuthChallengeSolution',
|
||||
'2': [
|
||||
{'1': 'signature', '3': 1, '4': 1, '5': 12, '10': 'signature'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthChallengeSolution`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authChallengeSolutionDescriptor = $convert.base64Decode(
|
||||
'ChVBdXRoQ2hhbGxlbmdlU29sdXRpb24SHAoJc2lnbmF0dXJlGAEgASgMUglzaWduYXR1cmU=');
|
||||
|
||||
@$core.Deprecated('Use authOkDescriptor instead')
|
||||
const AuthOk$json = {
|
||||
'1': 'AuthOk',
|
||||
};
|
||||
|
||||
/// Descriptor for `AuthOk`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List authOkDescriptor =
|
||||
$convert.base64Decode('CgZBdXRoT2s=');
|
||||
|
||||
@$core.Deprecated('Use unsealStartDescriptor instead')
|
||||
const UnsealStart$json = {
|
||||
'1': 'UnsealStart',
|
||||
'2': [
|
||||
{'1': 'client_pubkey', '3': 1, '4': 1, '5': 12, '10': 'clientPubkey'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `UnsealStart`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List unsealStartDescriptor = $convert.base64Decode(
|
||||
'CgtVbnNlYWxTdGFydBIjCg1jbGllbnRfcHVia2V5GAEgASgMUgxjbGllbnRQdWJrZXk=');
|
||||
|
||||
@$core.Deprecated('Use unsealStartResponseDescriptor instead')
|
||||
const UnsealStartResponse$json = {
|
||||
'1': 'UnsealStartResponse',
|
||||
'2': [
|
||||
{'1': 'server_pubkey', '3': 1, '4': 1, '5': 12, '10': 'serverPubkey'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `UnsealStartResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List unsealStartResponseDescriptor = $convert.base64Decode(
|
||||
'ChNVbnNlYWxTdGFydFJlc3BvbnNlEiMKDXNlcnZlcl9wdWJrZXkYASABKAxSDHNlcnZlclB1Ym'
|
||||
'tleQ==');
|
||||
|
||||
@$core.Deprecated('Use unsealEncryptedKeyDescriptor instead')
|
||||
const UnsealEncryptedKey$json = {
|
||||
'1': 'UnsealEncryptedKey',
|
||||
'2': [
|
||||
{'1': 'nonce', '3': 1, '4': 1, '5': 12, '10': 'nonce'},
|
||||
{'1': 'ciphertext', '3': 2, '4': 1, '5': 12, '10': 'ciphertext'},
|
||||
{'1': 'associated_data', '3': 3, '4': 1, '5': 12, '10': 'associatedData'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `UnsealEncryptedKey`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List unsealEncryptedKeyDescriptor = $convert.base64Decode(
|
||||
'ChJVbnNlYWxFbmNyeXB0ZWRLZXkSFAoFbm9uY2UYASABKAxSBW5vbmNlEh4KCmNpcGhlcnRleH'
|
||||
'QYAiABKAxSCmNpcGhlcnRleHQSJwoPYXNzb2NpYXRlZF9kYXRhGAMgASgMUg5hc3NvY2lhdGVk'
|
||||
'RGF0YQ==');
|
||||
|
||||
@$core.Deprecated('Use clientConnectionRequestDescriptor instead')
|
||||
const ClientConnectionRequest$json = {
|
||||
'1': 'ClientConnectionRequest',
|
||||
'2': [
|
||||
{'1': 'pubkey', '3': 1, '4': 1, '5': 12, '10': 'pubkey'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `ClientConnectionRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List clientConnectionRequestDescriptor =
|
||||
$convert.base64Decode(
|
||||
'ChdDbGllbnRDb25uZWN0aW9uUmVxdWVzdBIWCgZwdWJrZXkYASABKAxSBnB1YmtleQ==');
|
||||
|
||||
@$core.Deprecated('Use clientConnectionResponseDescriptor instead')
|
||||
const ClientConnectionResponse$json = {
|
||||
'1': 'ClientConnectionResponse',
|
||||
'2': [
|
||||
{'1': 'approved', '3': 1, '4': 1, '5': 8, '10': 'approved'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `ClientConnectionResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List clientConnectionResponseDescriptor =
|
||||
$convert.base64Decode(
|
||||
'ChhDbGllbnRDb25uZWN0aW9uUmVzcG9uc2USGgoIYXBwcm92ZWQYASABKAhSCGFwcHJvdmVk');
|
||||
|
||||
@$core.Deprecated('Use clientConnectionCancelDescriptor instead')
|
||||
const ClientConnectionCancel$json = {
|
||||
'1': 'ClientConnectionCancel',
|
||||
};
|
||||
|
||||
/// Descriptor for `ClientConnectionCancel`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List clientConnectionCancelDescriptor =
|
||||
$convert.base64Decode('ChZDbGllbnRDb25uZWN0aW9uQ2FuY2Vs');
|
||||
|
||||
@$core.Deprecated('Use userAgentRequestDescriptor instead')
|
||||
const UserAgentRequest$json = {
|
||||
'1': 'UserAgentRequest',
|
||||
'2': [
|
||||
{
|
||||
'1': 'auth_challenge_request',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.AuthChallengeRequest',
|
||||
'9': 0,
|
||||
'10': 'authChallengeRequest'
|
||||
},
|
||||
{
|
||||
'1': 'auth_challenge_solution',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.AuthChallengeSolution',
|
||||
'9': 0,
|
||||
'10': 'authChallengeSolution'
|
||||
},
|
||||
{
|
||||
'1': 'unseal_start',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.UnsealStart',
|
||||
'9': 0,
|
||||
'10': 'unsealStart'
|
||||
},
|
||||
{
|
||||
'1': 'unseal_encrypted_key',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.UnsealEncryptedKey',
|
||||
'9': 0,
|
||||
'10': 'unsealEncryptedKey'
|
||||
},
|
||||
{
|
||||
'1': 'query_vault_state',
|
||||
'3': 5,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'queryVaultState'
|
||||
},
|
||||
{
|
||||
'1': 'evm_wallet_create',
|
||||
'3': 6,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'evmWalletCreate'
|
||||
},
|
||||
{
|
||||
'1': 'evm_wallet_list',
|
||||
'3': 7,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.google.protobuf.Empty',
|
||||
'9': 0,
|
||||
'10': 'evmWalletList'
|
||||
},
|
||||
{
|
||||
'1': 'evm_grant_create',
|
||||
'3': 8,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantCreateRequest',
|
||||
'9': 0,
|
||||
'10': 'evmGrantCreate'
|
||||
},
|
||||
{
|
||||
'1': 'evm_grant_delete',
|
||||
'3': 9,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantDeleteRequest',
|
||||
'9': 0,
|
||||
'10': 'evmGrantDelete'
|
||||
},
|
||||
{
|
||||
'1': 'evm_grant_list',
|
||||
'3': 10,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantListRequest',
|
||||
'9': 0,
|
||||
'10': 'evmGrantList'
|
||||
},
|
||||
{
|
||||
'1': 'client_connection_response',
|
||||
'3': 11,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.ClientConnectionResponse',
|
||||
'9': 0,
|
||||
'10': 'clientConnectionResponse'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'payload'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `UserAgentRequest`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List userAgentRequestDescriptor = $convert.base64Decode(
|
||||
'ChBVc2VyQWdlbnRSZXF1ZXN0EmAKFmF1dGhfY2hhbGxlbmdlX3JlcXVlc3QYASABKAsyKC5hcm'
|
||||
'JpdGVyLnVzZXJfYWdlbnQuQXV0aENoYWxsZW5nZVJlcXVlc3RIAFIUYXV0aENoYWxsZW5nZVJl'
|
||||
'cXVlc3QSYwoXYXV0aF9jaGFsbGVuZ2Vfc29sdXRpb24YAiABKAsyKS5hcmJpdGVyLnVzZXJfYW'
|
||||
'dlbnQuQXV0aENoYWxsZW5nZVNvbHV0aW9uSABSFWF1dGhDaGFsbGVuZ2VTb2x1dGlvbhJECgx1'
|
||||
'bnNlYWxfc3RhcnQYAyABKAsyHy5hcmJpdGVyLnVzZXJfYWdlbnQuVW5zZWFsU3RhcnRIAFILdW'
|
||||
'5zZWFsU3RhcnQSWgoUdW5zZWFsX2VuY3J5cHRlZF9rZXkYBCABKAsyJi5hcmJpdGVyLnVzZXJf'
|
||||
'YWdlbnQuVW5zZWFsRW5jcnlwdGVkS2V5SABSEnVuc2VhbEVuY3J5cHRlZEtleRJEChFxdWVyeV'
|
||||
'92YXVsdF9zdGF0ZRgFIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAUg9xdWVyeVZhdWx0'
|
||||
'U3RhdGUSRAoRZXZtX3dhbGxldF9jcmVhdGUYBiABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdH'
|
||||
'lIAFIPZXZtV2FsbGV0Q3JlYXRlEkAKD2V2bV93YWxsZXRfbGlzdBgHIAEoCzIWLmdvb2dsZS5w'
|
||||
'cm90b2J1Zi5FbXB0eUgAUg1ldm1XYWxsZXRMaXN0Ek4KEGV2bV9ncmFudF9jcmVhdGUYCCABKA'
|
||||
'syIi5hcmJpdGVyLmV2bS5Fdm1HcmFudENyZWF0ZVJlcXVlc3RIAFIOZXZtR3JhbnRDcmVhdGUS'
|
||||
'TgoQZXZtX2dyYW50X2RlbGV0ZRgJIAEoCzIiLmFyYml0ZXIuZXZtLkV2bUdyYW50RGVsZXRlUm'
|
||||
'VxdWVzdEgAUg5ldm1HcmFudERlbGV0ZRJICg5ldm1fZ3JhbnRfbGlzdBgKIAEoCzIgLmFyYml0'
|
||||
'ZXIuZXZtLkV2bUdyYW50TGlzdFJlcXVlc3RIAFIMZXZtR3JhbnRMaXN0EmwKGmNsaWVudF9jb2'
|
||||
'5uZWN0aW9uX3Jlc3BvbnNlGAsgASgLMiwuYXJiaXRlci51c2VyX2FnZW50LkNsaWVudENvbm5l'
|
||||
'Y3Rpb25SZXNwb25zZUgAUhhjbGllbnRDb25uZWN0aW9uUmVzcG9uc2VCCQoHcGF5bG9hZA==');
|
||||
|
||||
@$core.Deprecated('Use userAgentResponseDescriptor instead')
|
||||
const UserAgentResponse$json = {
|
||||
'1': 'UserAgentResponse',
|
||||
'2': [
|
||||
{
|
||||
'1': 'auth_challenge',
|
||||
'3': 1,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.AuthChallenge',
|
||||
'9': 0,
|
||||
'10': 'authChallenge'
|
||||
},
|
||||
{
|
||||
'1': 'auth_ok',
|
||||
'3': 2,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.AuthOk',
|
||||
'9': 0,
|
||||
'10': 'authOk'
|
||||
},
|
||||
{
|
||||
'1': 'unseal_start_response',
|
||||
'3': 3,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.UnsealStartResponse',
|
||||
'9': 0,
|
||||
'10': 'unsealStartResponse'
|
||||
},
|
||||
{
|
||||
'1': 'unseal_result',
|
||||
'3': 4,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.user_agent.UnsealResult',
|
||||
'9': 0,
|
||||
'10': 'unsealResult'
|
||||
},
|
||||
{
|
||||
'1': 'vault_state',
|
||||
'3': 5,
|
||||
'4': 1,
|
||||
'5': 14,
|
||||
'6': '.arbiter.user_agent.VaultState',
|
||||
'9': 0,
|
||||
'10': 'vaultState'
|
||||
},
|
||||
{
|
||||
'1': 'evm_wallet_create',
|
||||
'3': 6,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.WalletCreateResponse',
|
||||
'9': 0,
|
||||
'10': 'evmWalletCreate'
|
||||
},
|
||||
{
|
||||
'1': 'evm_wallet_list',
|
||||
'3': 7,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.WalletListResponse',
|
||||
'9': 0,
|
||||
'10': 'evmWalletList'
|
||||
},
|
||||
{
|
||||
'1': 'evm_grant_create',
|
||||
'3': 8,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantCreateResponse',
|
||||
'9': 0,
|
||||
'10': 'evmGrantCreate'
|
||||
},
|
||||
{
|
||||
'1': 'evm_grant_delete',
|
||||
'3': 9,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantDeleteResponse',
|
||||
'9': 0,
|
||||
'10': 'evmGrantDelete'
|
||||
},
|
||||
{
|
||||
'1': 'evm_grant_list',
|
||||
'3': 10,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.evm.EvmGrantListResponse',
|
||||
'9': 0,
|
||||
'10': 'evmGrantList'
|
||||
},
|
||||
{
|
||||
'1': 'client_connection_request',
|
||||
'3': 11,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.ClientConnectionRequest',
|
||||
'9': 0,
|
||||
'10': 'clientConnectionRequest'
|
||||
},
|
||||
{
|
||||
'1': 'client_connection_cancel',
|
||||
'3': 12,
|
||||
'4': 1,
|
||||
'5': 11,
|
||||
'6': '.arbiter.user_agent.ClientConnectionCancel',
|
||||
'9': 0,
|
||||
'10': 'clientConnectionCancel'
|
||||
},
|
||||
],
|
||||
'8': [
|
||||
{'1': 'payload'},
|
||||
],
|
||||
};
|
||||
|
||||
/// Descriptor for `UserAgentResponse`. Decode as a `google.protobuf.DescriptorProto`.
|
||||
final $typed_data.Uint8List userAgentResponseDescriptor = $convert.base64Decode(
|
||||
'ChFVc2VyQWdlbnRSZXNwb25zZRJKCg5hdXRoX2NoYWxsZW5nZRgBIAEoCzIhLmFyYml0ZXIudX'
|
||||
'Nlcl9hZ2VudC5BdXRoQ2hhbGxlbmdlSABSDWF1dGhDaGFsbGVuZ2USNQoHYXV0aF9vaxgCIAEo'
|
||||
'CzIaLmFyYml0ZXIudXNlcl9hZ2VudC5BdXRoT2tIAFIGYXV0aE9rEl0KFXVuc2VhbF9zdGFydF'
|
||||
'9yZXNwb25zZRgDIAEoCzInLmFyYml0ZXIudXNlcl9hZ2VudC5VbnNlYWxTdGFydFJlc3BvbnNl'
|
||||
'SABSE3Vuc2VhbFN0YXJ0UmVzcG9uc2USRwoNdW5zZWFsX3Jlc3VsdBgEIAEoDjIgLmFyYml0ZX'
|
||||
'IudXNlcl9hZ2VudC5VbnNlYWxSZXN1bHRIAFIMdW5zZWFsUmVzdWx0EkEKC3ZhdWx0X3N0YXRl'
|
||||
'GAUgASgOMh4uYXJiaXRlci51c2VyX2FnZW50LlZhdWx0U3RhdGVIAFIKdmF1bHRTdGF0ZRJPCh'
|
||||
'Fldm1fd2FsbGV0X2NyZWF0ZRgGIAEoCzIhLmFyYml0ZXIuZXZtLldhbGxldENyZWF0ZVJlc3Bv'
|
||||
'bnNlSABSD2V2bVdhbGxldENyZWF0ZRJJCg9ldm1fd2FsbGV0X2xpc3QYByABKAsyHy5hcmJpdG'
|
||||
'VyLmV2bS5XYWxsZXRMaXN0UmVzcG9uc2VIAFINZXZtV2FsbGV0TGlzdBJPChBldm1fZ3JhbnRf'
|
||||
'Y3JlYXRlGAggASgLMiMuYXJiaXRlci5ldm0uRXZtR3JhbnRDcmVhdGVSZXNwb25zZUgAUg5ldm'
|
||||
'1HcmFudENyZWF0ZRJPChBldm1fZ3JhbnRfZGVsZXRlGAkgASgLMiMuYXJiaXRlci5ldm0uRXZt'
|
||||
'R3JhbnREZWxldGVSZXNwb25zZUgAUg5ldm1HcmFudERlbGV0ZRJJCg5ldm1fZ3JhbnRfbGlzdB'
|
||||
'gKIAEoCzIhLmFyYml0ZXIuZXZtLkV2bUdyYW50TGlzdFJlc3BvbnNlSABSDGV2bUdyYW50TGlz'
|
||||
'dBJpChljbGllbnRfY29ubmVjdGlvbl9yZXF1ZXN0GAsgASgLMisuYXJiaXRlci51c2VyX2FnZW'
|
||||
'50LkNsaWVudENvbm5lY3Rpb25SZXF1ZXN0SABSF2NsaWVudENvbm5lY3Rpb25SZXF1ZXN0EmYK'
|
||||
'GGNsaWVudF9jb25uZWN0aW9uX2NhbmNlbBgMIAEoCzIqLmFyYml0ZXIudXNlcl9hZ2VudC5DbG'
|
||||
'llbnRDb25uZWN0aW9uQ2FuY2VsSABSFmNsaWVudENvbm5lY3Rpb25DYW5jZWxCCQoHcGF5bG9h'
|
||||
'ZA==');
|
||||
60
useragent/lib/providers/key.dart
Normal file
@@ -0,0 +1,60 @@
|
||||
import 'package:hooks_riverpod/experimental/mutation.dart';
|
||||
import 'package:mtcore/markettakers.dart';
|
||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||
import 'package:arbiter/features/pk_manager.dart';
|
||||
import 'package:arbiter/features/simple_ed25519.dart';
|
||||
|
||||
part 'key.g.dart';
|
||||
|
||||
@riverpod
|
||||
KeyManager keyManager(Ref ref) {
|
||||
return SimpleEd25519Manager();
|
||||
}
|
||||
|
||||
@riverpod
|
||||
class Key extends _$Key {
|
||||
@override
|
||||
Future<KeyHandle?> build() async {
|
||||
final manager = SimpleEd25519Manager();
|
||||
final keyHandle = await manager.get();
|
||||
return keyHandle;
|
||||
}
|
||||
|
||||
Future<void> create() async {
|
||||
if (state.value != null) {
|
||||
return;
|
||||
}
|
||||
|
||||
state = await AsyncValue.guard(() async {
|
||||
final manager = SimpleEd25519Manager();
|
||||
final newKeyHandle = await manager.create();
|
||||
return newKeyHandle;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
class KeyBootstrapper implements StageFactory {
|
||||
final MutationTarget ref;
|
||||
|
||||
KeyBootstrapper({required this.ref});
|
||||
|
||||
@override
|
||||
String get title => "Setting up your identity";
|
||||
|
||||
@override
|
||||
Future<bool> get isAlreadyCompleted async {
|
||||
final key = await ref.container.read(keyProvider.future);
|
||||
return key != null;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> start(StageController controller) async {
|
||||
controller.setIndefiniteProgress();
|
||||
final key = ref.container.read(keyProvider.notifier);
|
||||
|
||||
await key.create();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {}
|
||||
}
|
||||
94
useragent/lib/providers/key.g.dart
Normal file
@@ -0,0 +1,94 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'key.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// RiverpodGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
// ignore_for_file: type=lint, type=warning
|
||||
|
||||
@ProviderFor(keyManager)
|
||||
final keyManagerProvider = KeyManagerProvider._();
|
||||
|
||||
final class KeyManagerProvider
|
||||
extends $FunctionalProvider<KeyManager, KeyManager, KeyManager>
|
||||
with $Provider<KeyManager> {
|
||||
KeyManagerProvider._()
|
||||
: super(
|
||||
from: null,
|
||||
argument: null,
|
||||
retry: null,
|
||||
name: r'keyManagerProvider',
|
||||
isAutoDispose: true,
|
||||
dependencies: null,
|
||||
$allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@override
|
||||
String debugGetCreateSourceHash() => _$keyManagerHash();
|
||||
|
||||
@$internal
|
||||
@override
|
||||
$ProviderElement<KeyManager> $createElement($ProviderPointer pointer) =>
|
||||
$ProviderElement(pointer);
|
||||
|
||||
@override
|
||||
KeyManager create(Ref ref) {
|
||||
return keyManager(ref);
|
||||
}
|
||||
|
||||
/// {@macro riverpod.override_with_value}
|
||||
Override overrideWithValue(KeyManager value) {
|
||||
return $ProviderOverride(
|
||||
origin: this,
|
||||
providerOverride: $SyncValueProvider<KeyManager>(value),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
String _$keyManagerHash() => r'aa37bca34c01a39c11e29d57e320172b37c0b116';
|
||||
|
||||
@ProviderFor(Key)
|
||||
final keyProvider = KeyProvider._();
|
||||
|
||||
final class KeyProvider extends $AsyncNotifierProvider<Key, KeyHandle?> {
|
||||
KeyProvider._()
|
||||
: super(
|
||||
from: null,
|
||||
argument: null,
|
||||
retry: null,
|
||||
name: r'keyProvider',
|
||||
isAutoDispose: true,
|
||||
dependencies: null,
|
||||
$allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@override
|
||||
String debugGetCreateSourceHash() => _$keyHash();
|
||||
|
||||
@$internal
|
||||
@override
|
||||
Key create() => Key();
|
||||
}
|
||||
|
||||
String _$keyHash() => r'6d66204174c4d2d5c76e27f3a8de8f9a9c88a3e0';
|
||||
|
||||
abstract class _$Key extends $AsyncNotifier<KeyHandle?> {
|
||||
FutureOr<KeyHandle?> build();
|
||||
@$mustCallSuper
|
||||
@override
|
||||
void runBuild() {
|
||||
final ref = this.ref as $Ref<AsyncValue<KeyHandle?>, KeyHandle?>;
|
||||
final element =
|
||||
ref.element
|
||||
as $ClassProviderElement<
|
||||
AnyNotifier<AsyncValue<KeyHandle?>, KeyHandle?>,
|
||||
AsyncValue<KeyHandle?>,
|
||||
Object?,
|
||||
Object?
|
||||
>;
|
||||
element.handleCreate(ref, build);
|
||||
}
|
||||
}
|
||||
32
useragent/lib/router.dart
Normal file
@@ -0,0 +1,32 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:arbiter/features/bootstrap.dart';
|
||||
import 'package:arbiter/home.dart';
|
||||
import 'package:flutter/src/widgets/async.dart';
|
||||
import 'package:flutter/src/widgets/framework.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
|
||||
final _bootstapCompleter = Completer<void>();
|
||||
|
||||
class Router extends HookConsumerWidget {
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final bootstrapper = useMemoized(
|
||||
() => Bootstrap(completer: _bootstapCompleter),
|
||||
);
|
||||
final bootstrapFuture = useFuture(_bootstapCompleter.future);
|
||||
|
||||
switch (bootstrapFuture.connectionState) {
|
||||
case ConnectionState.none ||
|
||||
ConnectionState.waiting ||
|
||||
ConnectionState.active:
|
||||
return bootstrapper;
|
||||
|
||||
case ConnectionState.done:
|
||||
break;
|
||||
}
|
||||
|
||||
return Home();
|
||||
}
|
||||
}
|
||||
9
useragent/lib/screens/about.dart
Normal file
@@ -0,0 +1,9 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mtcore/markettakers.dart';
|
||||
|
||||
class About extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AboutScreen(decription: "Arbiter is bla bla bla");
|
||||
}
|
||||
}
|
||||
74
useragent/lib/screens/calc.dart
Normal file
@@ -0,0 +1,74 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class CalcScreen extends StatefulWidget {
|
||||
const CalcScreen({super.key});
|
||||
|
||||
@override
|
||||
State<CalcScreen> createState() => _CalcScreenState();
|
||||
}
|
||||
|
||||
class _CalcScreenState extends State<CalcScreen> {
|
||||
int _count = 0;
|
||||
|
||||
void _increment() {
|
||||
setState(() {
|
||||
_count++;
|
||||
});
|
||||
}
|
||||
|
||||
void _decrement() {
|
||||
setState(() {
|
||||
_count--;
|
||||
});
|
||||
}
|
||||
|
||||
void _reset() {
|
||||
setState(() {
|
||||
_count = 0;
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: const Text('Counter'),
|
||||
),
|
||||
body: Center(
|
||||
child: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
const Text('Current count'),
|
||||
const SizedBox(height: 8),
|
||||
Text(
|
||||
'$_count',
|
||||
style: Theme.of(context).textTheme.displaySmall,
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
IconButton(
|
||||
onPressed: _decrement,
|
||||
icon: const Icon(Icons.remove_circle_outline),
|
||||
tooltip: 'Decrement',
|
||||
),
|
||||
const SizedBox(width: 12),
|
||||
ElevatedButton(
|
||||
onPressed: _reset,
|
||||
child: const Text('Reset'),
|
||||
),
|
||||
const SizedBox(width: 12),
|
||||
IconButton(
|
||||
onPressed: _increment,
|
||||
icon: const Icon(Icons.add_circle_outline),
|
||||
tooltip: 'Increment',
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1 +1,2 @@
|
||||
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
|
||||
#include "ephemeral/Flutter-Generated.xcconfig"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
|
||||
#include "ephemeral/Flutter-Generated.xcconfig"
|
||||
|
||||
@@ -5,6 +5,16 @@
|
||||
import FlutterMacOS
|
||||
import Foundation
|
||||
|
||||
import biometric_signature
|
||||
import cryptography_flutter
|
||||
import flutter_secure_storage_darwin
|
||||
import rive_native
|
||||
import share_plus
|
||||
|
||||
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
||||
BiometricSignaturePlugin.register(with: registry.registrar(forPlugin: "BiometricSignaturePlugin"))
|
||||
CryptographyFlutterPlugin.register(with: registry.registrar(forPlugin: "CryptographyFlutterPlugin"))
|
||||
FlutterSecureStorageDarwinPlugin.register(with: registry.registrar(forPlugin: "FlutterSecureStorageDarwinPlugin"))
|
||||
RiveNativePlugin.register(with: registry.registrar(forPlugin: "RiveNativePlugin"))
|
||||
SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin"))
|
||||
}
|
||||
|
||||
@@ -2,10 +2,12 @@
|
||||
FLUTTER_ROOT=/Users/kaska/.local/share/mise/installs/flutter/3.38.9-stable
|
||||
FLUTTER_APPLICATION_PATH=/Users/kaska/Documents/Projects/Major/arbiter/useragent
|
||||
COCOAPODS_PARALLEL_CODE_SIGN=true
|
||||
FLUTTER_TARGET=/Users/kaska/Documents/Projects/Major/arbiter/useragent/lib/main.dart
|
||||
FLUTTER_BUILD_DIR=build
|
||||
FLUTTER_BUILD_NAME=0.1.0
|
||||
FLUTTER_BUILD_NUMBER=0.1.0
|
||||
FLUTTER_BUILD_NAME=1.0.0
|
||||
FLUTTER_BUILD_NUMBER=1
|
||||
DART_DEFINES=RkxVVFRFUl9WRVJTSU9OPTMuMzguOQ==,RkxVVFRFUl9DSEFOTkVMPXN0YWJsZQ==,RkxVVFRFUl9HSVRfVVJMPWh0dHBzOi8vZ2l0aHViLmNvbS9mbHV0dGVyL2ZsdXR0ZXIuZ2l0,RkxVVFRFUl9GUkFNRVdPUktfUkVWSVNJT049NjczMjNkZTI4NQ==,RkxVVFRFUl9FTkdJTkVfUkVWSVNJT049NTg3YzE4Zjg3Mw==,RkxVVFRFUl9EQVJUX1ZFUlNJT049My4xMC44
|
||||
DART_OBFUSCATION=false
|
||||
TRACK_WIDGET_CREATION=true
|
||||
TREE_SHAKE_ICONS=false
|
||||
PACKAGE_CONFIG=.dart_tool/package_config.json
|
||||
PACKAGE_CONFIG=/Users/kaska/Documents/Projects/Major/arbiter/useragent/.dart_tool/package_config.json
|
||||
|
||||
@@ -3,10 +3,12 @@
|
||||
export "FLUTTER_ROOT=/Users/kaska/.local/share/mise/installs/flutter/3.38.9-stable"
|
||||
export "FLUTTER_APPLICATION_PATH=/Users/kaska/Documents/Projects/Major/arbiter/useragent"
|
||||
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
|
||||
export "FLUTTER_TARGET=/Users/kaska/Documents/Projects/Major/arbiter/useragent/lib/main.dart"
|
||||
export "FLUTTER_BUILD_DIR=build"
|
||||
export "FLUTTER_BUILD_NAME=0.1.0"
|
||||
export "FLUTTER_BUILD_NUMBER=0.1.0"
|
||||
export "FLUTTER_BUILD_NAME=1.0.0"
|
||||
export "FLUTTER_BUILD_NUMBER=1"
|
||||
export "DART_DEFINES=RkxVVFRFUl9WRVJTSU9OPTMuMzguOQ==,RkxVVFRFUl9DSEFOTkVMPXN0YWJsZQ==,RkxVVFRFUl9HSVRfVVJMPWh0dHBzOi8vZ2l0aHViLmNvbS9mbHV0dGVyL2ZsdXR0ZXIuZ2l0,RkxVVFRFUl9GUkFNRVdPUktfUkVWSVNJT049NjczMjNkZTI4NQ==,RkxVVFRFUl9FTkdJTkVfUkVWSVNJT049NTg3YzE4Zjg3Mw==,RkxVVFRFUl9EQVJUX1ZFUlNJT049My4xMC44"
|
||||
export "DART_OBFUSCATION=false"
|
||||
export "TRACK_WIDGET_CREATION=true"
|
||||
export "TREE_SHAKE_ICONS=false"
|
||||
export "PACKAGE_CONFIG=.dart_tool/package_config.json"
|
||||
export "PACKAGE_CONFIG=/Users/kaska/Documents/Projects/Major/arbiter/useragent/.dart_tool/package_config.json"
|
||||
|
||||
42
useragent/macos/Podfile
Normal file
@@ -0,0 +1,42 @@
|
||||
platform :osx, '10.15'
|
||||
|
||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||
|
||||
project 'Runner', {
|
||||
'Debug' => :debug,
|
||||
'Profile' => :release,
|
||||
'Release' => :release,
|
||||
}
|
||||
|
||||
def flutter_root
|
||||
generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__)
|
||||
unless File.exist?(generated_xcode_build_settings_path)
|
||||
raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first"
|
||||
end
|
||||
|
||||
File.foreach(generated_xcode_build_settings_path) do |line|
|
||||
matches = line.match(/FLUTTER_ROOT\=(.*)/)
|
||||
return matches[1].strip if matches
|
||||
end
|
||||
raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\""
|
||||
end
|
||||
|
||||
require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)
|
||||
|
||||
flutter_macos_podfile_setup
|
||||
|
||||
target 'Runner' do
|
||||
use_frameworks!
|
||||
|
||||
flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__))
|
||||
target 'RunnerTests' do
|
||||
inherit! :search_paths
|
||||
end
|
||||
end
|
||||
|
||||
post_install do |installer|
|
||||
installer.pods_project.targets.each do |target|
|
||||
flutter_additional_macos_build_settings(target)
|
||||
end
|
||||
end
|
||||
47
useragent/macos/Podfile.lock
Normal file
@@ -0,0 +1,47 @@
|
||||
PODS:
|
||||
- biometric_signature (10.2.0):
|
||||
- FlutterMacOS
|
||||
- cryptography_flutter (0.0.1):
|
||||
- FlutterMacOS
|
||||
- flutter_secure_storage_darwin (10.0.0):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- FlutterMacOS (1.0.0)
|
||||
- rive_native (0.0.1):
|
||||
- FlutterMacOS
|
||||
- share_plus (0.0.1):
|
||||
- FlutterMacOS
|
||||
|
||||
DEPENDENCIES:
|
||||
- biometric_signature (from `Flutter/ephemeral/.symlinks/plugins/biometric_signature/macos`)
|
||||
- cryptography_flutter (from `Flutter/ephemeral/.symlinks/plugins/cryptography_flutter/macos`)
|
||||
- flutter_secure_storage_darwin (from `Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_darwin/darwin`)
|
||||
- FlutterMacOS (from `Flutter/ephemeral`)
|
||||
- rive_native (from `Flutter/ephemeral/.symlinks/plugins/rive_native/macos`)
|
||||
- share_plus (from `Flutter/ephemeral/.symlinks/plugins/share_plus/macos`)
|
||||
|
||||
EXTERNAL SOURCES:
|
||||
biometric_signature:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/biometric_signature/macos
|
||||
cryptography_flutter:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/cryptography_flutter/macos
|
||||
flutter_secure_storage_darwin:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_darwin/darwin
|
||||
FlutterMacOS:
|
||||
:path: Flutter/ephemeral
|
||||
rive_native:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/rive_native/macos
|
||||
share_plus:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/share_plus/macos
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
biometric_signature: 7ef6a703fcc2c3b0e3d937a8560507b1ba9d3414
|
||||
cryptography_flutter: be2b3e0e31603521b6a1c2bea232a88a2488a91c
|
||||
flutter_secure_storage_darwin: acdb3f316ed05a3e68f856e0353b133eec373a23
|
||||
FlutterMacOS: d0db08ddef1a9af05a5ec4b724367152bb0500b1
|
||||
rive_native: 1c53d33e44c2b54424810effea4590671dd220c7
|
||||
share_plus: 510bf0af1a42cd602274b4629920c9649c52f4cc
|
||||
|
||||
PODFILE CHECKSUM: 54d867c82ac51cbd61b565781b9fada492027009
|
||||
|
||||
COCOAPODS: 1.16.2
|
||||
@@ -27,6 +27,8 @@
|
||||
33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; };
|
||||
33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; };
|
||||
33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; };
|
||||
89374438F7FC24C1E409AC55 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84BA779FA182F4B90ADDD656 /* Pods_RunnerTests.framework */; };
|
||||
9812E904D4443BD8157BA2CD /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFE2551831D6F491FC95F4C0 /* Pods_Runner.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -64,7 +66,7 @@
|
||||
331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; };
|
||||
333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; };
|
||||
335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; };
|
||||
33CC10ED2044A3C60003C045 /* app.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "app.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
33CC10ED2044A3C60003C045 /* useragent.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = useragent.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; };
|
||||
33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
@@ -76,8 +78,16 @@
|
||||
33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; };
|
||||
33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; };
|
||||
33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; };
|
||||
5385F9987FF8E7FD3BA4E87E /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; };
|
||||
84BA779FA182F4B90ADDD656 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; };
|
||||
989E0AE288EA0AECFF244CAB /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
ADF8B0EB51CA38AE67931C44 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
DC537F8D4AE9B12FB802E110 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
F06E58390BD453D6E42AD67C /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
|
||||
F9C83BBEBB84A7F9ACC93B93 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
FFE2551831D6F491FC95F4C0 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -85,6 +95,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
89374438F7FC24C1E409AC55 /* Pods_RunnerTests.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -92,6 +103,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
9812E904D4443BD8157BA2CD /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -125,13 +137,14 @@
|
||||
331C80D6294CF71000263BE5 /* RunnerTests */,
|
||||
33CC10EE2044A3C60003C045 /* Products */,
|
||||
D73912EC22F37F3D000D13A0 /* Frameworks */,
|
||||
C5764DB16A5CAE65539863D1 /* Pods */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
33CC10EE2044A3C60003C045 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
33CC10ED2044A3C60003C045 /* app.app */,
|
||||
33CC10ED2044A3C60003C045 /* useragent.app */,
|
||||
331C80D5294CF71000263BE5 /* RunnerTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
@@ -172,9 +185,25 @@
|
||||
path = Runner;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C5764DB16A5CAE65539863D1 /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
989E0AE288EA0AECFF244CAB /* Pods-Runner.debug.xcconfig */,
|
||||
F06E58390BD453D6E42AD67C /* Pods-Runner.release.xcconfig */,
|
||||
F9C83BBEBB84A7F9ACC93B93 /* Pods-Runner.profile.xcconfig */,
|
||||
DC537F8D4AE9B12FB802E110 /* Pods-RunnerTests.debug.xcconfig */,
|
||||
5385F9987FF8E7FD3BA4E87E /* Pods-RunnerTests.release.xcconfig */,
|
||||
ADF8B0EB51CA38AE67931C44 /* Pods-RunnerTests.profile.xcconfig */,
|
||||
);
|
||||
name = Pods;
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
D73912EC22F37F3D000D13A0 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FFE2551831D6F491FC95F4C0 /* Pods_Runner.framework */,
|
||||
84BA779FA182F4B90ADDD656 /* Pods_RunnerTests.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
@@ -186,6 +215,7 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */;
|
||||
buildPhases = (
|
||||
72217D999FDDB4A0040A839E /* [CP] Check Pods Manifest.lock */,
|
||||
331C80D1294CF70F00263BE5 /* Sources */,
|
||||
331C80D2294CF70F00263BE5 /* Frameworks */,
|
||||
331C80D3294CF70F00263BE5 /* Resources */,
|
||||
@@ -204,11 +234,13 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
4909404BD2C11CE7688B3B73 /* [CP] Check Pods Manifest.lock */,
|
||||
33CC10E92044A3C60003C045 /* Sources */,
|
||||
33CC10EA2044A3C60003C045 /* Frameworks */,
|
||||
33CC10EB2044A3C60003C045 /* Resources */,
|
||||
33CC110E2044A8840003C045 /* Bundle Framework */,
|
||||
3399D490228B24CF009A79C7 /* ShellScript */,
|
||||
2AF2BC4AB258588AFC797EA4 /* [CP] Embed Pods Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -217,7 +249,7 @@
|
||||
);
|
||||
name = Runner;
|
||||
productName = Runner;
|
||||
productReference = 33CC10ED2044A3C60003C045 /* app.app */;
|
||||
productReference = 33CC10ED2044A3C60003C045 /* useragent.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
@@ -291,6 +323,23 @@
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
2AF2BC4AB258588AFC797EA4 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
3399D490228B24CF009A79C7 /* ShellScript */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
alwaysOutOfDate = 1;
|
||||
@@ -329,6 +378,50 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire";
|
||||
};
|
||||
4909404BD2C11CE7688B3B73 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
72217D999FDDB4A0040A839E /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
@@ -380,43 +473,46 @@
|
||||
/* Begin XCBuildConfiguration section */
|
||||
331C80DB294CF71000263BE5 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = DC537F8D4AE9B12FB802E110 /* Pods-RunnerTests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
MARKETING_VERSION = 1.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.app.RunnerTests;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.useragent.RunnerTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/app.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/app";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/useragent.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/useragent";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
331C80DC294CF71000263BE5 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 5385F9987FF8E7FD3BA4E87E /* Pods-RunnerTests.release.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
MARKETING_VERSION = 1.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.app.RunnerTests;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.useragent.RunnerTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/app.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/app";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/useragent.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/useragent";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
331C80DD294CF71000263BE5 /* Profile */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = ADF8B0EB51CA38AE67931C44 /* Pods-RunnerTests.profile.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
MARKETING_VERSION = 1.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.app.RunnerTests;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.useragent.RunnerTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/app.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/app";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/useragent.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/useragent";
|
||||
};
|
||||
name = Profile;
|
||||
};
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||
BuildableName = "app.app"
|
||||
BuildableName = "useragent.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
@@ -31,7 +31,7 @@
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||
BuildableName = "app.app"
|
||||
BuildableName = "useragent.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
@@ -66,7 +66,7 @@
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||
BuildableName = "app.app"
|
||||
BuildableName = "useragent.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
@@ -83,7 +83,7 @@
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||
BuildableName = "app.app"
|
||||
BuildableName = "useragent.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
||||
@@ -4,4 +4,7 @@
|
||||
<FileRef
|
||||
location = "group:Runner.xcodeproj">
|
||||
</FileRef>
|
||||
<FileRef
|
||||
location = "group:Pods/Pods.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
// 'flutter create' template.
|
||||
|
||||
// The application's name. By default this is also the title of the Flutter window.
|
||||
PRODUCT_NAME = app
|
||||
PRODUCT_NAME = useragent
|
||||
|
||||
// The application's bundle identifier
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.app
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.useragent
|
||||
|
||||
// The copyright displayed in application information
|
||||
PRODUCT_COPYRIGHT = Copyright © 2026 com.example. All rights reserved.
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
name: arbiter
|
||||
description: "User agent for Arbiter"
|
||||
publish_to: 'none'
|
||||
|
||||
version: 0.1.0
|
||||
description: "Useragent for Arbiter project"
|
||||
publish_to: 'none'
|
||||
version: 1.0.0+1
|
||||
|
||||
environment:
|
||||
sdk: ^3.10.8
|
||||
@@ -11,11 +10,31 @@ dependencies:
|
||||
flutter:
|
||||
sdk: flutter
|
||||
|
||||
cupertino_icons: ^1.0.8
|
||||
flutter_adaptive_scaffold:
|
||||
git: https://github.com/hdbg/flutter_adaptive_scaffold.git
|
||||
talker: ^5.1.15
|
||||
riverpod: ^3.1.0
|
||||
hooks_riverpod: ^3.1.0
|
||||
sizer: ^3.1.3
|
||||
biometric_signature: ^10.2.0
|
||||
mtcore:
|
||||
hosted: https://git.markettakers.org/api/packages/MarketTakers/pub/
|
||||
version: ^1.0.6
|
||||
cryptography: ^2.9.0
|
||||
flutter_secure_storage: ^10.0.0
|
||||
cryptography_flutter: ^2.3.4
|
||||
riverpod_annotation: ^4.0.0
|
||||
grpc: ^5.1.0
|
||||
flutter_hooks: ^0.21.3+1
|
||||
|
||||
dev_dependencies:
|
||||
flutter_test:
|
||||
sdk: flutter
|
||||
|
||||
flutter_lints: ^6.0.0
|
||||
riverpod_generator: ^4.0.0+1
|
||||
build_runner: ^2.12.2
|
||||
|
||||
flutter:
|
||||
uses-material-design: true
|
||||
uses-material-design: true
|
||||
BIN
useragent/web/favicon.png
Normal file
|
After Width: | Height: | Size: 917 B |
BIN
useragent/web/icons/Icon-192.png
Normal file
|
After Width: | Height: | Size: 5.2 KiB |
BIN
useragent/web/icons/Icon-512.png
Normal file
|
After Width: | Height: | Size: 8.1 KiB |
BIN
useragent/web/icons/Icon-maskable-192.png
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
BIN
useragent/web/icons/Icon-maskable-512.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
38
useragent/web/index.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<!--
|
||||
If you are serving your web app in a path other than the root, change the
|
||||
href value below to reflect the base path you are serving from.
|
||||
|
||||
The path provided below has to start and end with a slash "/" in order for
|
||||
it to work correctly.
|
||||
|
||||
For more details:
|
||||
* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
|
||||
|
||||
This is a placeholder for base href that will be replaced by the value of
|
||||
the `--base-href` argument provided to `flutter build`.
|
||||
-->
|
||||
<base href="$FLUTTER_BASE_HREF">
|
||||
|
||||
<meta charset="UTF-8">
|
||||
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
|
||||
<meta name="description" content="A new Flutter project.">
|
||||
|
||||
<!-- iOS meta tags & icons -->
|
||||
<meta name="mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-title" content="useragent">
|
||||
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
||||
|
||||
<!-- Favicon -->
|
||||
<link rel="icon" type="image/png" href="favicon.png"/>
|
||||
|
||||
<title>useragent</title>
|
||||
<link rel="manifest" href="manifest.json">
|
||||
</head>
|
||||
<body>
|
||||
<script src="flutter_bootstrap.js" async></script>
|
||||
</body>
|
||||
</html>
|
||||
35
useragent/web/manifest.json
Normal file
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "useragent",
|
||||
"short_name": "useragent",
|
||||
"start_url": ".",
|
||||
"display": "standalone",
|
||||
"background_color": "#0175C2",
|
||||
"theme_color": "#0175C2",
|
||||
"description": "A new Flutter project.",
|
||||
"orientation": "portrait-primary",
|
||||
"prefer_related_applications": false,
|
||||
"icons": [
|
||||
{
|
||||
"src": "icons/Icon-192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "icons/Icon-512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "icons/Icon-maskable-192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "icons/Icon-maskable-512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
# Project-level configuration.
|
||||
cmake_minimum_required(VERSION 3.14)
|
||||
project(app LANGUAGES CXX)
|
||||
project(useragent LANGUAGES CXX)
|
||||
|
||||
# The name of the executable created for the application. Change this to change
|
||||
# the on-disk name of your application.
|
||||
set(BINARY_NAME "app")
|
||||
set(BINARY_NAME "useragent")
|
||||
|
||||
# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
|
||||
# versions of CMake.
|
||||
|
||||
@@ -6,6 +6,21 @@
|
||||
|
||||
#include "generated_plugin_registrant.h"
|
||||
|
||||
#include <biometric_signature/biometric_signature_plugin.h>
|
||||
#include <flutter_secure_storage_windows/flutter_secure_storage_windows_plugin.h>
|
||||
#include <rive_native/rive_native_plugin.h>
|
||||
#include <share_plus/share_plus_windows_plugin_c_api.h>
|
||||
#include <url_launcher_windows/url_launcher_windows.h>
|
||||
|
||||
void RegisterPlugins(flutter::PluginRegistry* registry) {
|
||||
BiometricSignaturePluginRegisterWithRegistrar(
|
||||
registry->GetRegistrarForPlugin("BiometricSignaturePlugin"));
|
||||
FlutterSecureStorageWindowsPluginRegisterWithRegistrar(
|
||||
registry->GetRegistrarForPlugin("FlutterSecureStorageWindowsPlugin"));
|
||||
RiveNativePluginRegisterWithRegistrar(
|
||||
registry->GetRegistrarForPlugin("RiveNativePlugin"));
|
||||
SharePlusWindowsPluginCApiRegisterWithRegistrar(
|
||||
registry->GetRegistrarForPlugin("SharePlusWindowsPluginCApi"));
|
||||
UrlLauncherWindowsRegisterWithRegistrar(
|
||||
registry->GetRegistrarForPlugin("UrlLauncherWindows"));
|
||||
}
|
||||
|
||||
@@ -3,6 +3,11 @@
|
||||
#
|
||||
|
||||
list(APPEND FLUTTER_PLUGIN_LIST
|
||||
biometric_signature
|
||||
flutter_secure_storage_windows
|
||||
rive_native
|
||||
share_plus
|
||||
url_launcher_windows
|
||||
)
|
||||
|
||||
list(APPEND FLUTTER_FFI_PLUGIN_LIST
|
||||
|
||||
@@ -90,12 +90,12 @@ BEGIN
|
||||
BLOCK "040904e4"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "com.example" "\0"
|
||||
VALUE "FileDescription", "app" "\0"
|
||||
VALUE "FileDescription", "useragent" "\0"
|
||||
VALUE "FileVersion", VERSION_AS_STRING "\0"
|
||||
VALUE "InternalName", "app" "\0"
|
||||
VALUE "InternalName", "useragent" "\0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2026 com.example. All rights reserved." "\0"
|
||||
VALUE "OriginalFilename", "app.exe" "\0"
|
||||
VALUE "ProductName", "app" "\0"
|
||||
VALUE "OriginalFilename", "useragent.exe" "\0"
|
||||
VALUE "ProductName", "useragent" "\0"
|
||||
VALUE "ProductVersion", VERSION_AS_STRING "\0"
|
||||
END
|
||||
END
|
||||
|
||||
@@ -27,7 +27,7 @@ int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev,
|
||||
FlutterWindow window(project);
|
||||
Win32Window::Point origin(10, 10);
|
||||
Win32Window::Size size(1280, 720);
|
||||
if (!window.Create(L"app", origin, size)) {
|
||||
if (!window.Create(L"useragent", origin, size)) {
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
window.SetQuitOnClose(true);
|
||||
|
||||