* separated signing and nyxd-client features
* updated cosmrs to the most recent version
* using tendermint_rpc directly for the Client trait
* fixed rest of the codebase
* removed nyxd-client feature
* export more types
* clippy that seems to have been skipped in makefile
* New TypeScript SDK example: Google Chrome
Example of a simple manifest v3 extension to load a Nym client within a
popup view.
* Firefox Extension example for Nym TypeScript SDK
* Fix typo
* Add basic install script
* fix up html files
* remove unnecessary background page
* bundle extensions with webpack
* use icons from shared assets
* ignore sdk index file
* import sdk lib
* create new build script for non-inline workers
* import workers and build as separate files using webpack
* update html titles
* create react app node tester example
* add readme file
* update readme for FF extension
* code formatting
---------
Co-authored-by: Nadim Kobeissi <nadim@symbolic.software>
Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
* create parcel example
* update plain html example
* move chat examples into own dir
* add examples to workspace
* update tsconfig path
* move webpack base to parent dir
* create node tester package dir
* start building node tester package
* refactor code + build updates
* fix up types
* add more methods and fix up types
* use node tester sdk inside wallet
* fix frontend state
* Use Node 18 instead of 16
* Fix up dependencies and yarn workspace
* Fix lint error
* Try to fix up linting error
* Remove explorer linting and move it to the existing action
* Add wasm-pack build to linting GH Action
* change lerna to use workspaces and fix linting errors
* Fix up node versions in GitHub Actions and add wasm-pack
* fix build:lint target in sdk
* exclude all worker.js from eslint for sdk
---------
Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
* Initial version
* Add open_proxy request
* Start adding cli commands
* use commands
* Common response type
* json output
* Tidy
* Remove the All case
* Remove empty file
* Remove todo
* Add ping command
* Ping 4 times by default
* Logic for controlling number of loops
* Some print tweaks
* wip client core
* hashing shared key in persisted details
* native client using on-disk gateway details
* ibid for socks5
* ibid for NR
* nym sdk
* non-wasm fixes
* wasm
* missed cargo fmt
* fixed nym-connect build
* changed serialization of the key hash to be more human readable
* allowing some dead code
* fixed gateway details deserializtion
* removed needless borrow in wasm client
* removed deadcode
* exhaustive match on GatewaySetup after having loaded the keys
* Add nym-socks5-listener to main workspace
* add socks5-listener to CI build path trigger
* Using repr(u8) instead of repr(C) for ClientState enum
---------
Co-authored-by: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
* initial crate
* foomp
* Make it work for x86_64-linux-android
* remove unused stuff
* Add header
* another layer of hacks
* additional target os locking
* cleanup
* bootstrap android app
* android jni function
* instructions + xcode project
* update jni name
* add native socks5 class
* typo
* gitkeep android native lib path
* add native socks5 class
* add socks5 native lib in java
* add build script
* fix jni dependency declaration
* wip
* Update build.sh
* Move build.sh to new subdir
* rename to build-android.sh
* fix typo in FFI function name
* use a good SP
* wip not crashing state
* add android network permissions
* android_logging
* starting client on button in swift + safer ffi
* set tag for libnyms5 logs
* testing callbacks
* android: start socks5 process in a separated thread
* non-blocking client with callbacks
* Remove the old non-working logger
* Restore commented out functionality in socks5 client
* basic file write/load + possible android fix
* Fully working state (minus task manager)
* Remove unused function
* data persistence + cb with address
* Remove stray old MyClass file from the merge
* Make storage_dir and Option
* Fix char_p for android
* Android now works with the new branch
* Tidy up a little in the jni code
* Move android mod to seperate file
* jni wrap start/stop
* Add android build to Makefile
* android: add basic UI and start/stop actions
* typo
* add nym word
* dirty persistence restored
* dirty android fixes
* even dirtier workaround
* Move rust crate to sdk/lib
* Update cargo.toml
* Strip release binary
* Update lib name in android project
* Move ios project to nym-connect directory
* remove old gitignore file
* Move ios client one step deeper
* fixed xcode lib paths
* removed old tracked file
* move android app under new path
* a bit of cleanup
* hopefully fixing the CI issues (🤞)
* Update Makefile
* android: add better support for persistent state
* updating ios UI on ffi callbacks
* missing dead code
* Added toggle button (wip)
* swapped connect and disconnect methods around
* icon
* fixed android build
* reset button + reuse service provider
* disabling reset button
* android: run proxy in a worker as foreground service
* todo user cancel action
* android build script: add aarch64
* add stop action from notification
* add simple callbacks to the socks5 bridge
* pick a sp randomly
* pass stop cb to lib call
* add loading state support
* refactor(android): base connection state on callback calls
* android: add optimistic ui
* android: unique instance of libnym
* removing deadcode
---------
Co-authored-by: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Co-authored-by: pierre <dommerc.pierre@gmail.com>
Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
* wip
* semi-hacky way of persisting wasm-client gateway config
a better way shall be introduced after config refactoring
* cargo fmt
* wasm client clippy
* removed artifacts from other branches
wasm-opt has a known issue on Apple Silicon:
https://github.com/rustwasm/wasm-pack/issues/913
The workaround currently seems to be running wasm-opt locally instead of
defining it as part of the Rust package's build pipeline in Cargo.toml.
I hope this is okay!
* added cargo config file to explicitly specify build target
* wip
* Config option to disable topology refreshing
* extracted common parsing code
* helper trait for working on wasm topology
* wasm topology parsing
* restored (slightly modified) old js-example
* wip
* Moved message preparation into a trait
* wip
* long-winded way of sending test packet
* standalone NymNodeTester
* finishing the test upon receiving all packets even if timeout wasnt reached
* initial round of cleanup
* sending multiple test packets in normal NymClient
* javascript-side cleanup
* starting mixnode test on btn click
* Improved NymNodeTester constructors
* improved error handling and constructors
* tester utils error handling
* further cleanup + using BTreeMap for NymTopology mixnodes
* handling missed errors
* splitting up 'test_node'
* split up and cleaned up generation of test result
* clippy + fixed example
* post rebase fixes
* another broken test
* prevent running multiple parallel tests
* cargo fmt
* Added nym- prefix to node tester utils
* Replace expect with error
* Move PersistentStorage in separate file
* Add in-memory cred manager
* Make wasm and mobile build
* Unify wasm and mobile cred storage
* Network defaults has mainnet default
* Add network_details to SDK
* Move BandwidthController in its own crate
* Move out credential into lib crate
* Remove nyxd arg in credential binary
* Use acquire cred in sdk
* Add example file, in sandbox
* Mobile lock file
* Update changelog
* Clearer builder methods and more documentation for them
* Sign only amount, without denom
* Toggle credentials mode on when enabled