Commit 9f31f4c
authored
iOS native SDK and example app (coinbase#589)
* first commit
* ios example app scaffolding
* README
* Update README.md
* pod
* integrate pod
* Create .codeflow.yml
* remove example on pod
* cleanup
* cleanup
* handshake
* handshake request encoder / response handler
* ios proof of concept
* Update README.md
* reorg
* host example app
* build settings
* cleanup
* request message renderer
* url rendering
* isCoinbaseWalletInstalled
* refactor
* key manager
* url codable / task manager
pod
* make request
* reintroduce message renderer
* dedup Message with custom coding
* response handler
* key storage
* hmmmmm
* key storage / no error throwing during init
* add domain to key storage
* response handling / error handling
* distinguish request/response types
* access control
* initial request
* host example app
* host
* handle encrypted response
* simplify symkey generation flow
* rename
Update README.md
Update README.md
* update path
* ios 12 support
* make RawRepresentableKey public
* clean up cryptography
* RawRepresentableKey
* make initialzier public
* ugh
* Update README.md
* Update README.md
* Update README.md
* sample host app
* reorg
* Merge remote-tracking branch 'native/master'
# Conflicts:
# .gitignore
# Conflicts:
# native/ios/CoinbaseWalletSDK.swift
# native/ios/Message/Message.swift
# native/ios/Message/Request/EncryptedRequestContent.swift
# native/ios/Message/Request/Request.swift
# native/ios/Message/Request/RequestMessage.swift
# native/ios/Message/Response/EncryptedResponseContent.swift
# native/ios/Message/Response/ResponseMessage.swift
# native/ios/Task/TaskManager.swift
* Merge branch 'master' of github.com:coinbase/coinbase-wallet-sdk
# Conflicts:
# .github/workflows/codeql-analysis.yml
# .github/workflows/main.yml
# .github/workflows/versioning.yml
# .gitignore
# README.md
# host/ios/LICENSE
# packages/wallet-sdk/.eslintignore
# packages/wallet-sdk/.eslintrc.js
# packages/wallet-sdk/.prettierignore
# packages/wallet-sdk/.prettierrc.yml
# packages/wallet-sdk/LICENSE
# packages/wallet-sdk/__tests__/addressStorage.test.js
# packages/wallet-sdk/__tests__/encryptDecrypt.test.js
# packages/wallet-sdk/assets/coinbase_wallet_logo_kit.zip
# packages/wallet-sdk/babel.config.js
# packages/wallet-sdk/compile-assets.js
# packages/wallet-sdk/jest.config.ts
# packages/wallet-sdk/jest.setup.ts
# packages/wallet-sdk/karma.conf.js
# packages/wallet-sdk/package.json
# packages/wallet-sdk/scripts/release.sh
# packages/wallet-sdk/src/CoinbaseWalletSDK.test.ts
# packages/wallet-sdk/src/CoinbaseWalletSDK.ts
# packages/wallet-sdk/src/__mocks__/provider.ts
# packages/wallet-sdk/src/__mocks__/relay.ts
# packages/wallet-sdk/src/assets/wallet-logo.ts
# packages/wallet-sdk/src/components/LinkFlow.test.tsx
# packages/wallet-sdk/src/components/LinkFlow.tsx
# packages/wallet-sdk/src/components/QRCode.tsx
# packages/wallet-sdk/src/components/Snackbar.scss
# packages/wallet-sdk/src/components/Snackbar.test.tsx
# packages/wallet-sdk/src/components/Snackbar.tsx
# packages/wallet-sdk/src/components/SnackbarContainer.test.tsx
# packages/wallet-sdk/src/components/Spinner.scss
# packages/wallet-sdk/src/components/Spinner.test.tsx
# packages/wallet-sdk/src/components/Spinner.tsx
# packages/wallet-sdk/src/components/TryExtensionLinkDialog.scss
# packages/wallet-sdk/src/components/TryExtensionLinkDialog.test.tsx
# packages/wallet-sdk/src/components/TryExtensionLinkDialog.tsx
# packages/wallet-sdk/src/components/icons/QRLogo.ts
# packages/wallet-sdk/src/components/icons/globe-icon.svg
# packages/wallet-sdk/src/components/icons/link-icon.svg
# packages/wallet-sdk/src/components/icons/lock-icon.svg
# packages/wallet-sdk/src/connection/ClientMessage.ts
# packages/wallet-sdk/src/connection/DiagnosticLogger.test.ts
# packages/wallet-sdk/src/connection/DiagnosticLogger.ts
# packages/wallet-sdk/src/connection/EventListener.ts
# packages/wallet-sdk/src/connection/RxWebSocket.test.ts
# packages/wallet-sdk/src/connection/RxWebSocket.ts
# packages/wallet-sdk/src/connection/ServerMessage.ts
# packages/wallet-sdk/src/connection/SessionConfig.ts
# packages/wallet-sdk/src/connection/WalletSDKConnection.ts
# packages/wallet-sdk/src/fixtures/provider.ts
# packages/wallet-sdk/src/index.ts
# packages/wallet-sdk/src/lib/ScopedLocalStorage.test.ts
# packages/wallet-sdk/src/lib/ScopedLocalStorage.ts
# packages/wallet-sdk/src/lib/cssReset.scss
# packages/wallet-sdk/src/lib/cssReset.ts
# packages/wallet-sdk/src/provider/CoinbaseWalletProvider.test.ts
# packages/wallet-sdk/src/provider/CoinbaseWalletProvider.ts
# packages/wallet-sdk/src/provider/FilterPolyfill.ts
# packages/wallet-sdk/src/provider/JSONRPC.ts
# packages/wallet-sdk/src/provider/SubscriptionManager.ts
# packages/wallet-sdk/src/provider/WalletSDKUI.test.ts
# packages/wallet-sdk/src/provider/WalletSDKUI.ts
# packages/wallet-sdk/src/provider/WalletUI.ts
# packages/wallet-sdk/src/provider/WalletUIError.ts
# packages/wallet-sdk/src/provider/Web3Provider.ts
# packages/wallet-sdk/src/relay/EthereumTransactionParams.ts
# packages/wallet-sdk/src/relay/RelayMessage.ts
# packages/wallet-sdk/src/relay/Session.ts
# packages/wallet-sdk/src/relay/WalletSDKRelay.ts
# packages/wallet-sdk/src/relay/WalletSDKRelayAbstract.ts
# packages/wallet-sdk/src/relay/WalletSDKRelayEventManager.test.ts
# packages/wallet-sdk/src/relay/WalletSDKRelayEventManager.ts
# packages/wallet-sdk/src/relay/Web3Method.ts
# packages/wallet-sdk/src/relay/Web3Request.ts
# packages/wallet-sdk/src/relay/Web3RequestCanceledMessage.ts
# packages/wallet-sdk/src/relay/Web3RequestMessage.ts
# packages/wallet-sdk/src/relay/Web3Response.ts
# packages/wallet-sdk/src/relay/Web3ResponseMessage.ts
# packages/wallet-sdk/src/relay/aes256gcm.test.ts
# packages/wallet-sdk/src/relay/aes256gcm.ts
# packages/wallet-sdk/src/types.ts
# packages/wallet-sdk/src/util.test.ts
# packages/wallet-sdk/src/util.ts
# packages/wallet-sdk/src/vendor-js/eth-eip712-util/LICENSE
# packages/wallet-sdk/src/vendor-js/eth-eip712-util/abi.js
# packages/wallet-sdk/src/vendor-js/eth-eip712-util/index.d.ts
# packages/wallet-sdk/src/vendor-js/eth-eip712-util/index.js
# packages/wallet-sdk/src/vendor-js/eth-eip712-util/util.js
# packages/wallet-sdk/src/vendor-js/qrcode-svg/LICENSE
# packages/wallet-sdk/src/vendor-js/qrcode-svg/index.d.ts
# packages/wallet-sdk/src/vendor-js/qrcode-svg/index.js
# packages/wallet-sdk/src/version.ts
# packages/wallet-sdk/tsconfig.build.json
# packages/wallet-sdk/tsconfig.json
# packages/wallet-sdk/webpack.config.js
# packages/wallet-sdk/yarn.lock
# src/vendor-js/qrcode-svg/LICENSE
* move under packages
* readme
* sample ios client app
* pod settings
* add `optional` filed to `Action`
* update example app
* Merge branch 'walletsegue' of github.com:coinbase/coinbase-wallet-sdk into walletsegue
* define ReturnType
* Update README.md
Update README.md
* introduce Web3JSONRPC helper
* nested params
* access control
* # This is a combination of 2 commits.
# This is the 1st commit message:
access control
# This is the commit message #2:
Revert "access control"
This reverts commit c8ea3da.
* remove public initializers
access control
# This is the commit message #2:
Revert "access control"
This reverts commit c8ea3da.
# This is the commit message #3:
remove public initializers
* use JSONSerialization to simplify Web3JSONRPC encoding
* singleton
* clean up error type
* host example
* ios example app
* example app
* add timestamp to message
* allow custom scheme / keystorage error message
* keystorageerror
* sampel ios app
* response handler
* swizzle
* update request on sample app
* cleanup keymanager implementation
* remove codeflow config
* remove old files
* gitignore
* cleanup
* rename
* missing changes
* sample app name
* update podspec
* author1 parent cf9254d commit 9f31f4c
File tree
39 files changed
+2444
-0
lines changed- examples/native-sdk-ios-client
- SampleApp.xcodeproj
- SampleApp
- Assets.xcassets
- AccentColor.colorset
- AppIcon.appiconset
- Base.lproj
- packages/wallet-native-sdk
- ios
- Key
- Message
- Request
- Response
- Task
39 files changed
+2444
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
0 commit comments