├── .gitignore
├── .npmignore
├── .vscode
└── launch.json
├── CHANGELOG.md
├── LICENSE
├── README.md
├── buildspec.yml
├── debug.sh
├── examples
├── eos-scatter-basic
│ ├── .babelrc
│ ├── .gitignore
│ ├── .prettierrc
│ ├── README.md
│ ├── package.json
│ ├── src
│ │ ├── index.html
│ │ ├── index.js
│ │ └── styles.scss
│ └── yarn.lock
├── transit-electron-dualbuild
│ ├── .env.electron
│ ├── .env.web
│ ├── .gitignore
│ ├── README.md
│ ├── craco.config.electron.js
│ ├── craco.config.web.js
│ ├── docs
│ │ └── cra-craco-header.png
│ ├── electron-dev.js
│ ├── package.json
│ ├── public
│ │ ├── electron.js
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ └── manifest.json
│ ├── src
│ │ ├── AccessContextSubscribe.tsx
│ │ ├── AppRoutes.tsx
│ │ ├── ArbSign.tsx
│ │ ├── HomeScreen.tsx
│ │ ├── PaymentForm.tsx
│ │ ├── TestScreen.tsx
│ │ ├── WalletStateSubscribe.tsx
│ │ ├── config.ts
│ │ ├── core
│ │ │ ├── AppLayout.tsx
│ │ │ ├── AuthenticatedRoute.tsx
│ │ │ ├── AvailableWalletList.tsx
│ │ │ ├── MenuSectionHeaderButton.tsx
│ │ │ ├── UserAvatar.tsx
│ │ │ ├── UserBlock.tsx
│ │ │ ├── UserDropdown.tsx
│ │ │ ├── UserMedia.tsx
│ │ │ ├── UserMenu.tsx
│ │ │ ├── UserMenuAddWalletButton.tsx
│ │ │ ├── UserMenuLogoutButton.tsx
│ │ │ ├── UserWalletList.tsx
│ │ │ └── eosActions.ts
│ │ ├── globalStyles.ts
│ │ ├── index.tsx
│ │ ├── initDefaultAccessContext.ts
│ │ ├── login
│ │ │ ├── LoginButton.tsx
│ │ │ ├── LoginScreen.tsx
│ │ │ └── LoginScreenWalletList.tsx
│ │ ├── react-app-env.d.ts
│ │ └── shared
│ │ │ ├── EosLogo.tsx
│ │ │ ├── LogoLink.tsx
│ │ │ ├── MetroLogo.tsx
│ │ │ ├── NoContent.tsx
│ │ │ ├── ScatterLogo.tsx
│ │ │ ├── buttons
│ │ │ ├── CloseButton.tsx
│ │ │ └── GoButton.tsx
│ │ │ ├── dropdown
│ │ │ ├── Dropdown.tsx
│ │ │ ├── DropdownContainer.tsx
│ │ │ ├── DropdownContent.tsx
│ │ │ ├── DropdownTrigger.tsx
│ │ │ └── index.ts
│ │ │ ├── forms
│ │ │ ├── FieldLabel.tsx
│ │ │ ├── FormActions.tsx
│ │ │ ├── FormElement.tsx
│ │ │ ├── controls
│ │ │ │ └── Input.tsx
│ │ │ └── index.ts
│ │ │ ├── helpers.ts
│ │ │ ├── icons
│ │ │ └── SpinnerIcon.tsx
│ │ │ ├── providers
│ │ │ ├── Provider.tsx
│ │ │ ├── ProviderTypes.ts
│ │ │ └── metro
│ │ │ │ └── MetroPinScreen.tsx
│ │ │ ├── screen
│ │ │ ├── ScreenContent.tsx
│ │ │ ├── ScreenLayout.tsx
│ │ │ └── index.ts
│ │ │ ├── transactions
│ │ │ ├── TransactionAddonBlock.tsx
│ │ │ ├── TransactionAddonButton.tsx
│ │ │ ├── TransactionAddonMenu.tsx
│ │ │ ├── TransactionAddonMenuItem.tsx
│ │ │ ├── TransactionButton.tsx
│ │ │ ├── TransactionButtonBlock.tsx
│ │ │ └── types.ts
│ │ │ └── wallets
│ │ │ ├── WalletList.tsx
│ │ │ ├── WalletListItem.tsx
│ │ │ ├── WalletListItemInfo.tsx
│ │ │ ├── WalletListItemProgress.tsx
│ │ │ ├── WalletListItemStatus.tsx
│ │ │ ├── WalletProviderIcon.tsx
│ │ │ └── types.ts
│ ├── tsconfig.json
│ └── yarn.lock
├── transit-react-basic
│ ├── .env.local
│ ├── .gitignore
│ ├── README.md
│ ├── ScatterNetworkSettings.jpg
│ ├── Scatter_AddAccount1.jpg
│ ├── Scatter_AddAccount2.jpg
│ ├── Scatter_AddAccount3.jpg
│ ├── Scatter_AddAccount4.jpg
│ ├── Scatter_AddAccount5.jpg
│ ├── Transit_DemoVideo.jpg
│ ├── TransportU2F.js.patch
│ ├── Transportwebauthn.js.patch
│ ├── images.d.ts
│ ├── package-lock.json
│ ├── package.json
│ ├── patch-TransportU2F.sh
│ ├── patch-Transportwebauthn.sh
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ └── manifest.json
│ ├── src
│ │ ├── AccessContextSubscribe.tsx
│ │ ├── AppRoutes.tsx
│ │ ├── ArbSign.tsx
│ │ ├── HomeScreen.tsx
│ │ ├── PaymentForm.tsx
│ │ ├── TestScreen.tsx
│ │ ├── WalletStateSubscribe.tsx
│ │ ├── config.ts
│ │ ├── core
│ │ │ ├── AppLayout.tsx
│ │ │ ├── AuthenticatedRoute.tsx
│ │ │ ├── AvailableWalletList.tsx
│ │ │ ├── MenuSectionHeaderButton.tsx
│ │ │ ├── UserAvatar.tsx
│ │ │ ├── UserBlock.tsx
│ │ │ ├── UserDropdown.tsx
│ │ │ ├── UserMedia.tsx
│ │ │ ├── UserMenu.tsx
│ │ │ ├── UserMenuAddWalletButton.tsx
│ │ │ ├── UserMenuLogoutButton.tsx
│ │ │ ├── UserWalletList.tsx
│ │ │ └── eosActions.ts
│ │ ├── globalStyles.ts
│ │ ├── index.tsx
│ │ ├── initDefaultAccessContext.ts
│ │ ├── login
│ │ │ ├── LoginButton.tsx
│ │ │ ├── LoginScreen.tsx
│ │ │ └── LoginScreenWalletList.tsx
│ │ └── shared
│ │ │ ├── EosLogo.tsx
│ │ │ ├── LogoLink.tsx
│ │ │ ├── MetroLogo.tsx
│ │ │ ├── NoContent.tsx
│ │ │ ├── ScatterLogo.tsx
│ │ │ ├── buttons
│ │ │ └── CloseButton.tsx
│ │ │ ├── dropdown
│ │ │ ├── Dropdown.tsx
│ │ │ ├── DropdownContainer.tsx
│ │ │ ├── DropdownContent.tsx
│ │ │ ├── DropdownTrigger.tsx
│ │ │ └── index.ts
│ │ │ ├── forms
│ │ │ ├── FieldLabel.tsx
│ │ │ ├── FormActions.tsx
│ │ │ ├── FormElement.tsx
│ │ │ ├── controls
│ │ │ │ └── Input.tsx
│ │ │ └── index.ts
│ │ │ ├── helpers.ts
│ │ │ ├── icons
│ │ │ └── SpinnerIcon.tsx
│ │ │ ├── screen
│ │ │ ├── ScreenContent.tsx
│ │ │ ├── ScreenLayout.tsx
│ │ │ └── index.ts
│ │ │ ├── transactions
│ │ │ ├── TransactionAddonBlock.tsx
│ │ │ ├── TransactionAddonButton.tsx
│ │ │ ├── TransactionAddonMenu.tsx
│ │ │ ├── TransactionAddonMenuItem.tsx
│ │ │ ├── TransactionButton.tsx
│ │ │ ├── TransactionButtonBlock.tsx
│ │ │ └── types.ts
│ │ │ └── wallets
│ │ │ ├── WalletList.tsx
│ │ │ ├── WalletListItem.tsx
│ │ │ ├── WalletListItemInfo.tsx
│ │ │ ├── WalletListItemProgress.tsx
│ │ │ ├── WalletListItemStatus.tsx
│ │ │ ├── WalletProviderIcon.tsx
│ │ │ └── types.ts
│ ├── tsconfig.json
│ ├── tsconfig.prod.json
│ ├── tsconfig.test.json
│ └── tslint.json
└── transit-script-tag
│ ├── index.html
│ └── styles.css
├── lerna.json
├── package.json
├── packages
├── eos-transit-anchorlink-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-keycat-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-ledger-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── TransportU2F.js.patch
│ ├── Transportwebauthn.js.patch
│ ├── exampleTxn.txt
│ ├── package-lock.json
│ ├── package.json
│ ├── patch-TransportU2F.sh
│ ├── patch-Transportwebauthn.sh
│ ├── src
│ │ ├── EosLedger.ts
│ │ ├── EosUtils.ts
│ │ ├── LedgerDataManager.ts
│ │ ├── index.ts
│ │ └── typings
│ │ │ ├── bigi
│ │ │ └── index.d.ts
│ │ │ ├── eosjs-ecc
│ │ │ └── index.d.ts
│ │ │ ├── ledgerhq__hw-transport-node-hid
│ │ │ └── index.d.ts
│ │ │ ├── ledgerhq__hw-transport-web-ble
│ │ │ └── index.d.ts
│ │ │ ├── ledgerhq__hw-transport-webauthn
│ │ │ └── index.d.ts
│ │ │ └── ledgerhq__hw-transport-webusb
│ │ │ └── index.d.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ ├── webpack.config.ts
│ └── yarn.lock
├── eos-transit-lynx-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── exampleTxn.txt
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ ├── LedgerDataManager.ts
│ │ ├── index.ts
│ │ └── typings
│ │ │ ├── bigi
│ │ │ └── index.d.ts
│ │ │ ├── eosjs-ecc
│ │ │ └── index.d.ts
│ │ │ └── eosjs
│ │ │ └── index.d.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ ├── webpack.config.ts
│ └── yarn.lock
├── eos-transit-meetone-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-metro-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-portis-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-scatter-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ ├── index.ts
│ │ └── typings
│ │ │ ├── scatterjs-core.d.ts
│ │ │ └── scatterjs-plugin-eosjs2.d.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-simpleos-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-stub-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-tokenpocket-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
├── eos-transit-whalevault-provider
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ └── webpack.config.ts
└── eos-transit
│ ├── .gitignore
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ ├── index.ts
│ ├── stateContainer.ts
│ ├── types.ts
│ ├── util.ts
│ ├── wallet.ts
│ └── walletAccessContext.ts
│ ├── tsconfig.json
│ ├── tsconfig.webpack.json
│ ├── webpack.config.eosjs.ts
│ └── webpack.config.ts
├── plugin-dev
└── transit-dev-simple
│ ├── .env.local
│ ├── .gitignore
│ ├── .vscode
│ └── launch.json
│ ├── README.md
│ ├── VideoPreview.png
│ ├── images.d.ts
│ ├── package-lock.json
│ ├── package.json
│ ├── public
│ ├── favicon.ico
│ ├── index.html
│ └── manifest.json
│ ├── src
│ ├── TestScreen.tsx
│ ├── default_mywallet.ts
│ ├── example_mywallet_eoslynx._ts
│ ├── example_mywallet_tokenpocket._ts
│ ├── index.tsx
│ ├── initDefaultAccessContext.ts
│ ├── mywallet.ts
│ ├── screen
│ │ ├── AppLayout.tsx
│ │ ├── ScreenContent.tsx
│ │ ├── ScreenLayout.tsx
│ │ └── index.ts
│ └── ui
│ │ ├── AppRoutes.tsx
│ │ ├── DebugButton.tsx
│ │ ├── LogoLink.tsx
│ │ ├── TestButton.tsx
│ │ ├── Toggle.tsx
│ │ └── globalStyles.ts
│ ├── tsconfig.json
│ ├── tsconfig.prod.json
│ ├── tsconfig.test.json
│ └── tslint.json
├── tsconfig.json
├── tsconfig.webpack.json
├── tslint.json
├── webpack.config.ts
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /dist
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | # .env.local
16 | # .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 |
8 | {
9 | "type": "chrome",
10 | "request": "launch",
11 | "name": "Launch Chrome against localhost",
12 | "url": "http://localhost:8080",
13 | "webRoot": "${workspaceFolder}"
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/buildspec.yml:
--------------------------------------------------------------------------------
1 | version: 0.2
2 |
3 | phases:
4 | install:
5 | commands:
6 | pre_build:
7 | commands:
8 | - echo prepare env. Ensure latest version of node is available.
9 | - sudo apt-get update
10 | - sudo apt-get install -y apt-transport-https
11 | - sudo curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
12 | - echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
13 | - curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
14 | - sudo apt-get update
15 | - sudo apt-get install -y nodejs
16 | - sudo apt-get install -y build-essential
17 | - sudo npm -v
18 | - sudo apt-get install -y yarn
19 | - echo done with prepare env.
20 | build:
21 | commands:
22 | - echo build site using yarn
23 | - yarn
24 | - cd ./examples/transit-react-basic/
25 | - chmod 755 patch-TransportU2F.sh
26 | - chmod 755 patch-Transportwebauthn.sh
27 | - yarn installpkg
28 | - yarn build
29 | - echo done building
30 | post_build:
31 | commands:
32 | - echo about to sync to S3
33 | - aws s3 sync ./build "s3://${BUCKET_NAME}" --delete
34 | - echo after sync to S3
35 | artifacts:
36 | files:
37 | - '**/*'
--------------------------------------------------------------------------------
/debug.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | SESSION=transit
3 |
4 | set -- $(stty size)
5 | tmux kill-session -t transit
6 | tmux -2 new-session -d -s $SESSION -x "$2" -y "$(($1 - 1))"
7 |
8 | # Setup a window for tailing log files
9 | tmux new-window -t $SESSION:1 -n 'Debug'
10 | tmux split-window -v
11 |
12 | tmux select-pane -t 0
13 | tmux split-window -v
14 |
15 | tmux select-pane -t 0
16 | tmux send-keys "cd packages/eos-transit" C-m
17 | tmux send-keys "yarn watch" C-m
18 | tmux select-pane -t 1
19 | tmux send-keys "cd packages/eos-transit-tokenpocket-provider" C-m
20 | tmux send-keys "yarn watch" C-m
21 |
22 | tmux select-pane -t 2
23 | tmux split-window -v
24 |
25 | tmux select-pane -t 2
26 | tmux send-keys "cd packages" C-m
27 | tmux select-pane -t 3
28 | tmux send-keys "cd examples/transit-react-basic" C-m
29 | tmux send-keys "yarn start" C-m
30 |
31 |
32 | # Attach to session
33 | tmux -2 attach-session -t $SESSION
34 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/.babelrc:
--------------------------------------------------------------------------------
1 | { "plugins": ["transform-runtime"] }
2 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | **/node_modules
6 |
7 | # testing
8 | /coverage
9 |
10 | # production
11 | /build
12 | /dist
13 | /lib
14 | **/build
15 | **/dist
16 | **/lib
17 |
18 | # misc
19 | .DS_Store
20 | # .env.local
21 | .env.development.local
22 | .env.test.local
23 | .env.production.local
24 | .cache
25 |
26 | npm-debug.log*
27 | yarn-debug.log*
28 | yarn-error.log*
29 | lerna-debug.log*
30 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/.prettierrc:
--------------------------------------------------------------------------------
1 | printWidth: 80
2 | singleQuote: true
3 | tabWidth: 2
4 | useTabs: false
5 | bracketSpacing: true
6 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/README.md:
--------------------------------------------------------------------------------
1 | # eos-scatter-basic
2 |
3 | This is an example of running a `pay` transaction via Scatter (either `ScatterWebExtension` or `Scatter Desktop`).
4 |
5 | ## Quick start
6 |
7 | ### Prerequisites
8 |
9 | 1. Make sure you have [`yarn`](https://yarnpkg.com) installed.
10 | 2. Install [`parcel-bundler`](https://en.parceljs.org/getting_started.html) globally:
11 |
12 | With `yarn`:
13 |
14 | $ yard global add parcel-bundler
15 |
16 | or `npm`:
17 |
18 | $ npm install -g parcel-bundler
19 |
20 | ### Setup
21 |
22 | 1. Install the dependencies:
23 |
24 | $ yarn install
25 |
26 | 2. Start the development server with:
27 |
28 | $ npm start
29 |
30 | 3. Access the server at [`localhost:1234`](http://localhost:1234).
31 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-scatter-basic",
3 | "private": true,
4 | "scripts": {
5 | "start": "parcel ./src/index.html"
6 | },
7 | "dependencies": {
8 | "@babel/cli": "^7.0.0",
9 | "@babel/core": "^7.0.0",
10 | "@babel/plugin-transform-async-to-generator": "^7.0.0",
11 | "@babel/plugin-transform-runtime": "^7.0.0",
12 | "@babel/preset-env": "^7.0.0",
13 | "@babel/runtime": "^7.0.0",
14 | "babel-loader": "^8.0.2",
15 | "babel-plugin-transform-runtime": "^6.23.0",
16 | "babel-preset-minify": "^0.5.0-alpha.3cc09dcf",
17 | "eosjs": "^16.0.7",
18 | "minireset.css": "^0.0.3",
19 | "scatter-js": "^2.5.2",
20 | "scatterjs-core": "^1.1.1",
21 | "scatterjs-plugin-eosjs": "^1.1.1"
22 | },
23 | "devDependencies": {
24 | "node-sass": "^4.9.3"
25 | },
26 | "prettier": {
27 | "singleQuote": true,
28 | "printWidth": 80,
29 | "tabWidth": 2,
30 | "useTabs": false,
31 | "bracketSpacing": true
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | EOS Playground - Scatter Basic Demo
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 |
23 |
24 |
25 |
26 |
32 |
33 |
34 |
35 |
36 |
37 |
44 |
45 |
46 |
47 |
48 |
49 |
55 |
56 |
57 |
58 |
63 |
64 |
65 |
66 |
--------------------------------------------------------------------------------
/examples/eos-scatter-basic/src/styles.scss:
--------------------------------------------------------------------------------
1 | // @import './node_modules/minireset.css/minireset.css';
2 |
3 | body {
4 | font-family: 'Helvetica Neue', sans-serif;
5 | padding: 40px 50px;
6 | }
7 |
8 | * {
9 | box-sizing: border-box;
10 | }
11 |
12 | h2 {
13 | display: block;
14 | margin: 0 0 8px;
15 | font-size: 20px;
16 | }
17 |
18 | .header {
19 | margin-bottom: 30px;
20 | }
21 |
22 | .subheading {
23 | display: block;
24 | margin: 0 0 10px;
25 | font-size: 12px;
26 | font-weight: normal;
27 | color: #aaa;
28 | }
29 |
30 | .container {
31 | margin: 0 auto;
32 | max-width: 350px;
33 | }
34 |
35 | .form-element {
36 | margin-bottom: 20px;
37 |
38 | label {
39 | display: block;
40 | margin-bottom: 5px;
41 | font-size: 10px;
42 | color: #aaa;
43 | text-transform: uppercase;
44 | }
45 | }
46 |
47 | .input {
48 | display: block;
49 | width: 100%;
50 | min-width: 180px;
51 | padding: 10px 20px;
52 | border: 1px solid #ccc;
53 | border-radius: 0;
54 | font-size: 14px;
55 | font-weight: 300;
56 | color: #252525;
57 | outline: none;
58 |
59 | &:focus {
60 | border-color: #999;
61 | }
62 |
63 | &:disabled {
64 | background-color: #eee;
65 | color: #999;
66 | }
67 | }
68 |
69 | .button {
70 | display: block;
71 | width: 100%;
72 | min-width: 180px;
73 | padding: 10px 20px;
74 | font-size: 12px;
75 | font-weight: 300;
76 | border: none;
77 | background-color: rgb(14, 196, 150);
78 | color: white;
79 | text-transform: uppercase;
80 | outline: none;
81 |
82 | &:hover {
83 | background-color: rgb(3, 231, 174);
84 | cursor: pointer;
85 | }
86 | }
87 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/.env.electron:
--------------------------------------------------------------------------------
1 | REACT_APP_NAME=myApp
2 | REACT_APP_MODE=electron
3 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/.env.web:
--------------------------------------------------------------------------------
1 | REACT_APP_NAME=myApp
2 | REACT_APP_MODE=web
3 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
25 | .DS_Store
26 | hide
27 | dist
28 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/README.md:
--------------------------------------------------------------------------------
1 | ### Electron example
2 |
3 | This is a copy of the transit-react-basic project
4 |
5 | To run the project:
6 |
7 | 1. yarn install (Do this from powershell if on windows)
8 | 2. yarn watch:electron (Do this from WSL if on windows - lerna link to npm packages won't work otherwise)
9 | 3. yarn start:web (Do this from powershell if on windows)
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/craco.config.electron.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | webpack: {
3 | configure: {
4 | target: 'electron-renderer'
5 | }
6 | }
7 | };
8 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/craco.config.web.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | webpack: {
3 | configure: {
4 | target: 'web'
5 | }
6 | }
7 | };
8 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/docs/cra-craco-header.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-electron-dualbuild/docs/cra-craco-header.png
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-electron-dualbuild/public/favicon.ico
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
12 |
13 |
22 | React App
23 |
24 |
25 |
28 |
29 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | }
10 | ],
11 | "start_url": ".",
12 | "display": "standalone",
13 | "theme_color": "#000000",
14 | "background_color": "#ffffff"
15 | }
16 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/AccessContextSubscribe.tsx:
--------------------------------------------------------------------------------
1 | import { Component, ReactNode } from 'react';
2 | import WAL, { WalletAccessContext, StateUnsubscribeFn } from 'eos-transit';
3 |
4 | export interface AccessContextSubscribeProps {
5 | children?: (accessContext: WalletAccessContext) => ReactNode;
6 | }
7 |
8 | export class AccessContextSubscribe extends Component {
9 | unsubscribe?: StateUnsubscribeFn;
10 | unmounted?: boolean;
11 |
12 | handleAccessContextUpdate = () => {
13 | if (!this.unmounted) this.forceUpdate();
14 | };
15 |
16 | componentDidMount() {
17 | this.unsubscribe = WAL.accessContext.subscribe(this.handleAccessContextUpdate);
18 | }
19 |
20 | componentWillUnmount() {
21 | this.unmounted = true;
22 | const { unsubscribe } = this;
23 | if (typeof unsubscribe === 'function') unsubscribe();
24 | }
25 |
26 | render() {
27 | const { children } = this.props;
28 | if (typeof children !== 'function') return null;
29 | return children(WAL.accessContext);
30 | }
31 | }
32 |
33 | export default AccessContextSubscribe;
34 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/AppRoutes.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Route, Switch } from 'react-router-dom';
3 | import LoginScreen from './login/LoginScreen';
4 | import AuthenticatedRoute from './core/AuthenticatedRoute';
5 | import { AppLayout } from './core/AppLayout';
6 | import { HomeScreen } from './HomeScreen';
7 | import { TestScreen } from './TestScreen';
8 |
9 | export function AppRoutes() {
10 | return (
11 |
12 |
13 |
14 |
15 | {() => (
16 |
17 |
18 |
19 |
20 | )}
21 |
22 | />
23 | {/* */}
24 |
25 |
26 | );
27 | }
28 |
29 | export default AppRoutes;
30 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/HomeScreen.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PaymentForm from './PaymentForm';
3 |
4 | export function HomeScreen() {
5 | return ;
6 | }
7 |
8 | export default HomeScreen;
9 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/TestScreen.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ArbSign from './ArbSign';
3 |
4 | export function TestScreen() {
5 | return ;
6 | }
7 |
8 | export default TestScreen;
9 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/WalletStateSubscribe.tsx:
--------------------------------------------------------------------------------
1 | import { Component, ReactNode } from 'react';
2 | import { StateUnsubscribeFn, Wallet, WalletState } from 'eos-transit';
3 |
4 | export interface WalletStateSubscribeProps {
5 | wallet: Wallet;
6 | children?: (walletState: WalletState) => ReactNode;
7 | }
8 |
9 | export class WalletStateSubscribe extends Component {
10 | unsubscribe?: StateUnsubscribeFn;
11 | unmounted?: boolean;
12 |
13 | handleWalletStateUpdate = () => {
14 | if (!this.unmounted) this.forceUpdate();
15 | };
16 |
17 | componentDidMount() {
18 | const { wallet } = this.props;
19 | this.unsubscribe = wallet.subscribe(this.handleWalletStateUpdate);
20 | }
21 |
22 | componentWillUnmount() {
23 | this.unmounted = true;
24 | const { unsubscribe } = this;
25 | if (typeof unsubscribe === 'function') unsubscribe();
26 | }
27 |
28 | render() {
29 | const { children, wallet } = this.props;
30 | if (typeof children !== 'function') return null;
31 | return children(wallet.state);
32 | }
33 | }
34 |
35 | export default WalletStateSubscribe;
36 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/config.ts:
--------------------------------------------------------------------------------
1 | const env = process.env;
2 |
3 | export const config = {
4 | defaultNetwork: env.REACT_APP_DEFAULT_NETWORK
5 | };
6 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/AppLayout.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode } from 'react';
2 | import {
3 | ScreenLayout,
4 | ScreenContentHeader,
5 | ScreenContentBody,
6 | ScreenContentBodyContainer,
7 | ScreenContentHeaderMain
8 | } from '../shared/screen';
9 | import { LogoLink } from '../shared/LogoLink';
10 | import UserBlock from './UserBlock';
11 |
12 | export interface AppLayoutProps {
13 | children?: ReactNode;
14 | }
15 |
16 | export function AppLayout({ children }: AppLayoutProps) {
17 | return (
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | {children}
28 |
29 |
30 | );
31 | }
32 |
33 | export default AppLayout;
34 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/AuthenticatedRoute.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode } from 'react';
2 | import {
3 | Route,
4 | Redirect,
5 | withRouter,
6 | RouteComponentProps
7 | } from 'react-router-dom';
8 | import WAL from 'eos-transit';
9 |
10 | export interface Props extends RouteComponentProps {
11 | component?: Component;
12 | children?: (props: any) => ReactNode;
13 | otherwiseRedirectTo?: string;
14 | }
15 |
16 | export function AuthenticatedRoute({
17 | children,
18 | component,
19 | otherwiseRedirectTo,
20 | ...rest
21 | }: Props) {
22 | function renderComponent(props: any) {
23 | if (typeof children === 'function') {
24 | return children(props);
25 | }
26 |
27 | if (Component) {
28 | return ;
29 | }
30 |
31 | return null;
32 | }
33 |
34 | return (
35 | {
38 | const isLoggedIn = !!WAL.accessContext.getActiveWallets().length;
39 | if (isLoggedIn) return renderComponent(props);
40 |
41 | return (
42 |
48 | );
49 | }}
50 | />
51 | );
52 | }
53 |
54 | export default withRouter(AuthenticatedRoute);
55 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/UserAvatar.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { FiUser } from 'react-icons/fi';
4 |
5 | const UserAvatarRoot = styled('div')({
6 | display: 'flex',
7 | alignItems: 'center',
8 | justifyContent: 'center',
9 | position: 'relative',
10 | width: 30,
11 | height: 30,
12 | fontSize: 20,
13 | // backgroundColor: 'rgba(0, 0, 0, 0.3)',
14 | borderRadius: '50%',
15 | overflow: 'hidden',
16 |
17 | '& img': {
18 | position: 'absolute',
19 | top: 0,
20 | left: 0,
21 | width: '100%',
22 | maxWidth: '120%',
23 | maxHeight: '120%',
24 | textAlign: 'center'
25 | }
26 | });
27 |
28 | export interface Props {
29 | children?: any;
30 | isActive?: boolean;
31 | isLoading?: boolean;
32 | onClick?: () => void;
33 | url?: string;
34 | }
35 |
36 | export function UserAvatar(props: Props) {
37 | const { url } = props;
38 |
39 | return (
40 | {url ?
: }
41 | );
42 | }
43 |
44 | export default UserAvatar;
45 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/UserBlock.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode } from 'react';
2 | import WAL from 'eos-transit';
3 | import { UserDropdown } from './UserDropdown';
4 |
5 | const { accessContext } = WAL;
6 |
7 | export interface UserBlockProps {
8 | children?: ReactNode;
9 | username?: string;
10 | }
11 |
12 | export function UserBlock({ children, username }: UserBlockProps) {
13 | return ;
14 | }
15 |
16 | export function UserBlockConnected({ children }: UserBlockProps) {
17 | const isLoggedIn = !!accessContext.getActiveWallets().length;
18 | if (!isLoggedIn) return null;
19 |
20 | const auth = accessContext.getActiveWallets()[0].auth;
21 | const username = (auth && `${auth.accountName}@${auth.permission}`) || void 0;
22 |
23 | return {children};
24 | }
25 |
26 | export default UserBlockConnected;
27 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/UserDropdown.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | Dropdown,
4 | DropdownContainer,
5 | DropdownContent
6 | } from '../shared/dropdown';
7 | import UserMedia from './UserMedia';
8 | import { UserMenu } from './UserMenu';
9 |
10 | export interface UserDropdownProps {
11 | username?: string;
12 | }
13 |
14 | export function UserDropdown({ username }: UserDropdownProps) {
15 | return (
16 |
17 | {({ isExpanded, toggle }: any) => (
18 |
19 |
26 |
27 |
28 |
29 |
30 |
31 | )}
32 |
33 | );
34 | }
35 |
36 | export default UserDropdown;
37 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/UserMenuAddWalletButton.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { IoIosAddCircleOutline } from 'react-icons/io';
4 |
5 | export interface UserMenuAddWalletButtonProps {
6 | onClick?: (event: any) => void;
7 | }
8 |
9 | export const UserMenuAddWalletButtonRoot = styled('div')({
10 | display: 'flex',
11 | alignItems: 'center',
12 | width: '100%',
13 | border: '1px dashed #424a56',
14 | borderRadius: 1,
15 | fontSize: 14,
16 | backgroundColor: '#20252f',
17 | color: 'white',
18 | textAlign: 'center',
19 | outline: 'none',
20 | transition: 'all 0.2s',
21 |
22 | '&:hover': {
23 | backgroundColor: '#2e3542',
24 | color: 'white',
25 | cursor: 'pointer',
26 | borderColor: '#346f77'
27 | },
28 |
29 | '&:active': {
30 | backgroundColor: '#26c5df',
31 | borderColor: 'transparent'
32 | }
33 | });
34 |
35 | const iconWidth = 50;
36 |
37 | export const UserMenuAddWalletButtonText = styled('div')({
38 | flex: 1,
39 | padding: `13px ${iconWidth + 13}px 13px 0`,
40 | textAlign: 'center'
41 | });
42 |
43 | export const UserMenuAddWalletButtonIcon = styled('div')({
44 | display: 'flex',
45 | alignItems: 'center',
46 | justifyContent: 'center',
47 | width: iconWidth,
48 | padding: 13,
49 | fontSize: 24,
50 | opacity: 0.5
51 | });
52 |
53 | export function UserMenuAddWalletButton({
54 | onClick
55 | }: UserMenuAddWalletButtonProps) {
56 | return (
57 |
58 |
59 |
60 |
61 |
62 | Add Wallet
63 |
64 | );
65 | }
66 |
67 | export default UserMenuAddWalletButton;
68 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/UserMenuLogoutButton.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import WAL from 'eos-transit';
4 | import { IoIosLogOut } from 'react-icons/io';
5 |
6 | const { accessContext } = WAL;
7 |
8 | export interface UserMenuLogoutButtonProps {
9 | onClick?: (event: any) => void;
10 | }
11 |
12 | export const UserMenuLogoutButtonRoot = styled('div')({
13 | display: 'flex',
14 | alignItems: 'center',
15 | justifyContent: 'center',
16 | width: '100%',
17 | border: 'none',
18 | borderRadius: 1,
19 | padding: '10px 20px',
20 | fontSize: 14,
21 | backgroundColor: '#20252f',
22 | color: 'white',
23 | textAlign: 'center',
24 | outline: 'none',
25 | transition: 'all 0.2s',
26 |
27 | '&:hover': {
28 | // backgroundColor: '#2e3542',
29 | backgroundColor: '#98243f',
30 | color: 'white',
31 | cursor: 'pointer'
32 | },
33 |
34 | '&:active': {
35 | // backgroundColor: '#2e3542',
36 | backgroundColor: '#c3173f'
37 | }
38 | });
39 |
40 | export const UserMenuLogoutButtonIcon = styled('div')({
41 | display: 'flex',
42 | alignItems: 'center',
43 | paddingLeft: 10
44 | });
45 |
46 | export const UserMenuLogoutButtonText = styled('div')({});
47 |
48 | export function UserMenuLogoutButton({ onClick }: UserMenuLogoutButtonProps) {
49 | return (
50 |
51 | Logout
52 |
53 |
54 |
55 |
56 | );
57 | }
58 |
59 | export function UserMenuLogoutButtonConnected() {
60 | return accessContext.terminateAll()} />;
61 | }
62 |
63 | export default UserMenuLogoutButtonConnected;
64 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/core/UserWalletList.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import WAL from 'eos-transit';
3 | import { NoContent } from '../shared/NoContent';
4 | import { WalletList } from '../shared/wallets/WalletList';
5 |
6 | const { accessContext } = WAL;
7 |
8 | export function UserWalletList() {
9 | const wallets = accessContext.getWallets();
10 |
11 | if (!wallets.length) {
12 | return (
13 |
17 | );
18 | }
19 |
20 | return (
21 | wallet.terminate()}
24 | onItemLogoutClick={wallet => wallet.terminate()}
25 | onItemReconnectClick={wallet => wallet.connect()}
26 | />
27 | );
28 | }
29 |
30 | export default UserWalletList;
31 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/globalStyles.ts:
--------------------------------------------------------------------------------
1 | import { injectGlobal } from 'emotion';
2 |
3 | export function applyGlobalStyles() {
4 | return injectGlobal`
5 | body {
6 | margin: 0;
7 | padding: 0;
8 | font-family: 'Helvetica', 'Helvetica Neue', sans-serif;
9 | -webkit-font-smoothing: antialiased;
10 | background-color: #21262f;
11 | color: white;
12 | }
13 |
14 | a {
15 | color: #9c73d7;
16 | }
17 |
18 | a:hover,
19 | a:focus,
20 | a:active {
21 | color: white;
22 | }
23 | `;
24 | }
25 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { render } from 'react-dom';
3 | import { BrowserRouter as Router } from 'react-router-dom';
4 | import 'minireset.css';
5 | import './initDefaultAccessContext';
6 | import AppRoutes from './AppRoutes';
7 | import { applyGlobalStyles } from './globalStyles';
8 | import AccessContextSubscribe from 'AccessContextSubscribe';
9 |
10 | applyGlobalStyles();
11 |
12 | const Root = () => (
13 |
14 | {() => (
15 |
16 |
17 |
18 | )}
19 |
20 | );
21 |
22 | render(, document.getElementById('root'));
23 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/EosLogo.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 |
3 | export function EosLogo() {
4 | return (
5 |
33 | );
34 | }
35 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/LogoLink.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { NavLink, NavLinkProps } from 'react-router-dom';
4 |
5 | export const LogoLinkRoot = styled(NavLink)({
6 | display: 'flex',
7 | alignItems: 'center',
8 | justifyContent: 'center',
9 | width: 45,
10 | height: 45,
11 | fontSize: 12,
12 | backgroundColor: 'rgba(255, 255, 255, 0.1)',
13 | color: 'white',
14 | textDecoration: 'none',
15 | textTransform: 'uppercase',
16 | borderRadius: '50%',
17 | transition: 'all 0.2s',
18 |
19 | '&:hover': {
20 | backgroundColor: 'rgba(255, 255, 255, 0.25)',
21 | textDecoration: 'none'
22 | }
23 | });
24 |
25 | export function LogoLink(props: NavLinkProps) {
26 | return EOS;
27 | }
28 |
29 | export default LogoLink;
30 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/NoContent.tsx:
--------------------------------------------------------------------------------
1 | import React, { ComponentType } from 'react';
2 | import styled from 'react-emotion';
3 |
4 | const NoContentRoot = styled('div')({
5 | flex: 1,
6 | display: 'flex',
7 | alignItems: 'stretch',
8 | justifyContent: 'stretch',
9 | // padding: '10px'
10 | });
11 |
12 | const NoContentFrame = styled('div')({
13 | flex: 1,
14 | display: 'flex',
15 | flexDirection: 'column',
16 | alignItems: 'center',
17 | justifyContent: 'center',
18 | padding: '50px 20px',
19 | border: '1px dashed rgba(255, 255, 255, 0.3)',
20 | textAlign: 'center'
21 | });
22 |
23 | const NoContentIcon = styled('div')({
24 | fontSize: 36,
25 | color: 'rgba(255, 255, 255, 0.8)',
26 |
27 | '&:not(:last-child)': {
28 | marginBottom: 20
29 | }
30 | });
31 |
32 | const Message = styled('div')({
33 | fontSize: 14,
34 | color: 'rgba(255, 255, 255, 1)',
35 | lineHeight: 1.2,
36 |
37 | '&:not(:last-child)': {
38 | marginBottom: 10
39 | }
40 | });
41 |
42 | const Sublabel = styled('div')({
43 | fontSize: 12,
44 | color: 'rgba(255, 255, 255, 0.4)',
45 | lineHeight: 1.2
46 | });
47 |
48 | export interface Props {
49 | className?: string;
50 | message: string;
51 | note?: string;
52 | icon?: ComponentType;
53 | }
54 |
55 | export function NoContent({ icon, message, note, className }: Props) {
56 | const Icon = icon;
57 |
58 | return (
59 |
60 |
61 | {Icon && (
62 |
63 |
64 |
65 | )}
66 | {message}
67 | {note}
68 |
69 |
70 | );
71 | }
72 |
73 | export default NoContent;
74 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/buttons/CloseButton.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { IoIosClose } from 'react-icons/io';
4 |
5 | export interface CloseButtonProps {
6 | onClick?: (event: any) => void;
7 | size: number;
8 | }
9 |
10 | export const CloseButtonRoot = styled('div')(
11 | {
12 | display: 'inline-flex',
13 | alignItems: 'center',
14 | justifyContent: 'center',
15 | border: 'none',
16 | outline: 'none',
17 | backgroundColor: 'rgba(255, 255, 255, 0.02)',
18 | color: 'white',
19 | transition: 'all 0.2s',
20 |
21 | '&:hover': {
22 | backgroundColor: 'rgba(255, 255, 255, 0.07)',
23 | color: '#26c5de',
24 | cursor: 'pointer'
25 | }
26 | },
27 | ({ size }: CloseButtonProps) => ({
28 | width: size,
29 | height: size,
30 | fontSize: size * 0.8,
31 |
32 | '&:not(:last-child)': {
33 | marginRight: size / 4
34 | }
35 | })
36 | );
37 |
38 | export function CloseButton({ onClick, size }: Partial) {
39 | return (
40 |
41 |
42 |
43 | );
44 | }
45 |
46 | export default CloseButton;
47 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/buttons/GoButton.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const GoButton = styled('button')({
4 | borderRadius: 5,
5 | border: 'none',
6 | boxShadow: 'none',
7 | backgroundColor: '#1a73e8',
8 | color: "#FFFFFF",
9 | textDecoration: 'none',
10 | width: 50,
11 | height: 50,
12 | textAlign: 'center',
13 | margin:5
14 | })
15 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/dropdown/Dropdown.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode } from 'react';
2 | import onClickOutside, { InjectedOnClickOutProps } from 'react-onclickoutside';
3 | import { DropdownContainer } from './DropdownContainer';
4 |
5 | export interface DropdownChildrenFnArg {
6 | isExpanded: boolean;
7 | toggle: () => void;
8 | }
9 |
10 | export interface DropdownProps {
11 | children?: (dropdownState: DropdownChildrenFnArg) => ReactNode;
12 | isExpanded?: boolean; // TODO: Handle passed force-state
13 | closesOn?: string; // TODO: Type more precisely and implement
14 | }
15 |
16 | export interface State {
17 | isExpanded: boolean;
18 | }
19 |
20 | export class Dropdown extends Component<
21 | DropdownProps & InjectedOnClickOutProps,
22 | State
23 | > {
24 | state = { isExpanded: false };
25 |
26 | toggle = () => {
27 | this.setState(state => ({ isExpanded: !state.isExpanded }));
28 | };
29 |
30 | handleClickOutside = (event: any) => {
31 | if (!this.props.closesOn || this.props.closesOn === 'clickOutside') {
32 | this.setState({ isExpanded: false });
33 | }
34 | };
35 |
36 | render() {
37 | const { toggle } = this;
38 | const { isExpanded } = this.state;
39 | const { children } = this.props;
40 |
41 | return (
42 |
43 | {children ? children({ isExpanded, toggle }) : null}
44 |
45 | );
46 | }
47 | }
48 |
49 | export default onClickOutside(Dropdown);
50 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/dropdown/DropdownContainer.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const DropdownContainer = styled('div')({
4 | position: 'relative',
5 | display: 'inline-flex'
6 | });
7 |
8 | DropdownContainer.displayName = 'DropdownContainer';
9 |
10 | export default DropdownContainer;
11 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/dropdown/DropdownContent.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export interface Props {
4 | visible?: boolean;
5 | alignRight?: boolean;
6 | }
7 |
8 | export const DropdownContent = styled('div')(
9 | {
10 | position: 'absolute',
11 | zIndex: 20,
12 | top: '100%',
13 | borderRadius: 0,
14 | borderWidth: 0,
15 | backgroundColor: '#171c24',
16 | color: 'white',
17 | boxShadow: '0 5px 30px -8px rgba(0, 0, 0, 0.5)',
18 | transform: 'scale(0)',
19 | transition: 'all 0.2s'
20 | },
21 | ({ alignRight, visible }: Props) => {
22 | return {
23 | display: 'block',
24 | visibility: visible ? 'visible' : 'hidden',
25 | // display: visible ? 'block' : 'none',
26 | right: alignRight ? 0 : 'auto',
27 | opacity: visible ? 1 : 0,
28 | transform: visible ? 'scale(1) scaleY(1)' : 'scaleX(0.95) scaleY(0.9)',
29 | transformOrigin: 'top right'
30 | };
31 | }
32 | );
33 |
34 | DropdownContent.displayName = 'DropdownContent';
35 |
36 | export default DropdownContent;
37 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/dropdown/DropdownTrigger.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode, MouseEvent } from 'react';
2 |
3 | export interface Props {
4 | children?: ReactNode;
5 | onTriggerClick?: (event: MouseEvent) => void;
6 | }
7 |
8 | export function DropdownTrigger({ children, onTriggerClick }: Props) {
9 | return {children}
;
10 | }
11 |
12 | export default DropdownTrigger;
13 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/dropdown/index.ts:
--------------------------------------------------------------------------------
1 | import Dropdown from './Dropdown';
2 | export { Dropdown };
3 | export * from './DropdownContainer';
4 | export * from './DropdownContent';
5 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/forms/FieldLabel.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const FieldLabel = styled('label')({
4 | display: 'block',
5 | marginBottom: 8,
6 | fontSize: 13
7 | });
8 |
9 | export default FieldLabel;
10 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/forms/FormActions.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const FormActions = styled('div')({
4 | marginBottom: 20
5 | });
6 |
7 | FormActions.displayName = 'FormActions';
8 |
9 | export default FormActions;
10 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/forms/FormElement.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const FormElement = styled('div')({
4 | marginBottom: 25
5 | });
6 |
7 | export default FormElement;
8 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/forms/controls/Input.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const Input = styled('input')({
4 | padding: 18,
5 | fontSize: 16,
6 | borderStyle: 'solid',
7 | borderWidth: 1,
8 | // borderBottomWidth: 1,
9 | borderColor: 'rgba(255, 255, 255, 0.3)',
10 | // borderColor: 'rgba(255, 255, 255, 0.45)',
11 | borderRadius: 2,
12 | color: 'white',
13 | backgroundColor: 'transparent',
14 | outline: 'none',
15 | transition: 'all 0.2s',
16 |
17 | '&:focus': {
18 | borderColor: '#26c5df'
19 | },
20 |
21 | '&:not([type=checkbox]):not([type=file])': {
22 | width: '100%'
23 | },
24 |
25 | '&[disabled]': {
26 | backgroundColor: 'rgba(0, 0, 0, 0.2)',
27 | color: 'rgba(255, 255, 255, 0.3)'
28 | }
29 | });
30 |
31 | Input.displayName = 'Input';
32 |
33 | export default Input;
34 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/forms/index.ts:
--------------------------------------------------------------------------------
1 | export * from './FormElement';
2 | export * from './FieldLabel';
3 | export * from './FormActions';
4 |
5 | // Styled controls
6 |
7 | export * from './controls/Input';
8 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/helpers.ts:
--------------------------------------------------------------------------------
1 | export function toNumber(input?: string) {
2 | if (!input) return 0;
3 | const chunks = input.split(' ');
4 | if (!chunks[0]) return 0;
5 | return Number(chunks[0]);
6 | }
7 |
8 | export const ProviderHasPin = (providerId:string) => {
9 | switch (providerId)
10 | {
11 | case 'Metro':
12 | return true
13 | default:
14 | return false;
15 | }
16 | }
17 |
18 | export const REGEX = {
19 | NULL_WHITESPACE: /^\s*$/
20 | }
21 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/icons/SpinnerIcon.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled, { keyframes } from 'react-emotion';
3 |
4 | const spinAnimation = keyframes({
5 | '0%': { transform: `rotate(0deg)` },
6 | '100%': { transform: `rotate(359deg)` }
7 | });
8 |
9 | export interface SpinnerIconProps {
10 | size: number;
11 | }
12 |
13 | export const SpinnerIconRoot = styled('div')(
14 | {
15 | display: 'inline-flex',
16 |
17 | '&:after': {
18 | content: '" "',
19 | display: 'block',
20 | margin: 1,
21 | borderRadius: '50%',
22 | border: '2px solid #fff',
23 | borderColor: '#fff transparent #fff transparent',
24 | animation: `${spinAnimation} 1.2s infinite linear`
25 | }
26 | },
27 | ({ size }: SpinnerIconProps) => ({
28 | '&:after': {
29 | width: size,
30 | height: size
31 | },
32 |
33 | '&:not(:last-child)': {
34 | marginRight: size / 2
35 | }
36 | })
37 | );
38 |
39 | export function SpinnerIcon({ size }: Partial) {
40 | return ;
41 | }
42 |
43 | export default SpinnerIcon;
44 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/providers/Provider.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import MetrolPinScreen from './metro/MetroPinScreen'
3 | import {ProviderProps} from './ProviderTypes'
4 |
5 | const Provider = (props: ProviderProps) => {
6 |
7 | switch(props.ProviderId)
8 | {
9 | case 'Metro' :
10 | {
11 | return
12 | }
13 | default :
14 | {
15 | return null
16 | }
17 | }
18 | }
19 |
20 | export default Provider
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/providers/ProviderTypes.ts:
--------------------------------------------------------------------------------
1 |
2 |
3 | export interface ProviderProps {
4 | onSelect?: (pin: any) => void;
5 | ProviderId: string;
6 | }
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/screen/ScreenContent.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const ScreenContent = styled('div')({
4 | flex: 1,
5 | display: 'flex',
6 | flexDirection: 'column',
7 | alignItems: 'stretch',
8 | justifyContent: 'stretch'
9 | });
10 |
11 | export const ScreenContentHeader = styled('header')({
12 | display: 'flex',
13 | padding: '25px 30px'
14 | });
15 |
16 | export const ScreenContentHeaderMain = styled('div')({
17 | flex: 1
18 | });
19 |
20 | export interface ScreenContentBodyProps {
21 | flex?: boolean;
22 | }
23 |
24 | export const ScreenContentBody = styled('main')(
25 | {
26 | flex: 1,
27 | margin: '0 auto',
28 | padding: '30px 0'
29 | },
30 | ({ flex }: ScreenContentBodyProps) => ({
31 | display: flex !== false ? 'flex' : 'block'
32 | })
33 | );
34 |
35 | export interface ScreenContentBodyContainerProps {
36 | flex?: boolean;
37 | }
38 |
39 | export const ScreenContentBodyContainer = styled('div')(
40 | {
41 | maxWidth: 480,
42 | width: 480
43 | },
44 | ({ flex }: ScreenContentBodyContainerProps) => ({
45 | display: flex !== false ? 'flex' : 'block',
46 | flexDirection: 'column'
47 | })
48 | );
49 |
50 | export const ScreenContentFooter = styled('footer')({});
51 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/screen/ScreenLayout.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const ScreenLayout = styled('div')({
4 | width: '100%',
5 | minHeight: '100vh',
6 | display: 'flex',
7 | flexDirection: 'column',
8 | justifyContent: 'stretch'
9 | });
10 |
11 | export default ScreenLayout;
12 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/screen/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ScreenLayout';
2 | export * from './ScreenContent';
3 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/transactions/TransactionAddonBlock.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { IoIosArrowDown } from 'react-icons/io';
3 | import { Wallet } from 'eos-transit';
4 | import { Dropdown, DropdownContainer, DropdownContent } from '../dropdown';
5 | import { TransactionAddonButton } from './TransactionAddonButton';
6 | import TransactionAddonMenu from './TransactionAddonMenu';
7 |
8 | export interface TransactionAddonBlockProps {
9 | disabled?: boolean;
10 | success?: boolean;
11 | danger?: boolean;
12 | onWalletSelect?: (wallet: Wallet) => void;
13 | }
14 |
15 | export function TransactionAddonBlock({
16 | disabled,
17 | success,
18 | danger,
19 | onWalletSelect
20 | }: TransactionAddonBlockProps) {
21 | return disabled ? (
22 |
23 |
24 |
25 | ) : (
26 |
27 | {({ isExpanded, toggle }) => (
28 |
29 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | )}
42 |
43 | );
44 | }
45 |
46 | export default TransactionAddonBlock;
47 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/transactions/TransactionAddonMenu.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import styled from 'react-emotion';
3 | import WAL, { Wallet } from 'eos-transit';
4 | import { TransactionAddonMenuItem } from './TransactionAddonMenuItem';
5 | import WalletStateSubscribe from 'WalletStateSubscribe';
6 |
7 | // Visual components
8 |
9 | const TransactionAddonMenuRoot = styled('div')({
10 | minWidth: 250,
11 | width: 330,
12 | padding: '8px'
13 | });
14 |
15 | const TransactionAddonMenuHeader = styled('header')({
16 | padding: '5px 0',
17 | fontSize: 11,
18 | fontWeight: 300,
19 | color: 'white',
20 | textTransform: 'uppercase',
21 | marginBottom: 5
22 | });
23 |
24 | // Exported component
25 |
26 | export interface TransactionAddonMenuProps {
27 | onWalletSelect?: (selectedWallet: Wallet) => void;
28 | }
29 |
30 | export class TransactionAddonMenu extends Component {
31 | handleItemSelect = (wallet: Wallet) => {
32 | const { onWalletSelect } = this.props;
33 | if (typeof onWalletSelect === 'function') {
34 | onWalletSelect(wallet);
35 | }
36 | };
37 |
38 | getActiveWallets = () => {
39 | return WAL.accessContext.getActiveWallets();
40 | };
41 |
42 | render() {
43 | const { getActiveWallets, handleItemSelect } = this;
44 | const activeWallets = getActiveWallets();
45 |
46 | return (
47 |
48 | Run with wallet:
49 | {activeWallets.map((wallet, i) => (
50 |
51 | {() => }
52 |
53 | ))}
54 |
55 | );
56 | }
57 | }
58 |
59 | export default TransactionAddonMenu;
60 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/transactions/types.ts:
--------------------------------------------------------------------------------
1 | import { Wallet } from 'eos-transit';
2 |
3 | export interface TransactionStatus {
4 | inProgress?: boolean;
5 | progressStatus?: string;
6 | success?: boolean;
7 | successMessage?: string;
8 | error?: boolean;
9 | errorMessage?: string;
10 | }
11 |
12 | export interface TransactionInfo {
13 | id?: string;
14 | // TODO: Other data
15 | }
16 |
17 | export interface TransactionModel {
18 | wallet: Wallet;
19 | amount: number;
20 | receiverName: string;
21 | currency: string;
22 | transactionStatus: TransactionStatus;
23 | transactionInfo?: TransactionInfo;
24 | }
25 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/wallets/WalletProviderIcon.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { IoIosUnlock } from 'react-icons/io';
3 | import { FiCopy } from 'react-icons/fi';
4 | import { ScatterLogo } from '../ScatterLogo';
5 | import { MetroLogo } from '../MetroLogo';
6 |
7 | const defaultIcon = IoIosUnlock;
8 |
9 | const providerIcons = {
10 | 'eos-metro': MetroLogo,
11 | 'scatter-desktop': ScatterLogo,
12 | 'paste-the-private-key': FiCopy
13 | };
14 |
15 | interface WalletProviderIconProps {
16 | providerId?: string;
17 | }
18 |
19 | export function WalletProviderIcon({ providerId }: WalletProviderIconProps) {
20 | const IconComponent =
21 | (providerId && providerIcons[providerId]) || defaultIcon;
22 |
23 | return ;
24 | }
25 |
26 | export default WalletProviderIcon;
27 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/src/shared/wallets/types.ts:
--------------------------------------------------------------------------------
1 | export interface WalletConnectionStatus {
2 | connecting?: boolean;
3 | connected: boolean;
4 | error?: boolean;
5 | errorMessage?: string;
6 | }
7 |
8 | export interface WalletProviderInfo {
9 | id: string;
10 | name?: string;
11 | shortName?: string;
12 | description?: string;
13 | }
14 |
15 | export interface WalletInfo {
16 | accountName: string;
17 | accountAuthority?: string;
18 | publicKey?: string;
19 | eosBalance?: number;
20 | ram?: number;
21 | cpu?: number;
22 | net?: number;
23 | }
24 |
25 | export interface WalletModel {
26 | providerInfo: WalletProviderInfo;
27 | connectionStatus: WalletConnectionStatus;
28 | walletInfo?: WalletInfo;
29 | }
30 |
--------------------------------------------------------------------------------
/examples/transit-electron-dualbuild/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "baseUrl": "./src",
4 | "target": "es5",
5 | "lib": [
6 | "dom",
7 | "dom.iterable",
8 | "esnext"
9 | ],
10 | "allowJs": true,
11 | "skipLibCheck": true,
12 | "esModuleInterop": true,
13 | "allowSyntheticDefaultImports": true,
14 | "strict": false,
15 | "forceConsistentCasingInFileNames": true,
16 | "module": "esnext",
17 | "moduleResolution": "node",
18 | "resolveJsonModule": true,
19 | "isolatedModules": true,
20 | "noEmit": true,
21 | "jsx": "preserve",
22 | "noImplicitReturns": true,
23 | "noImplicitThis": true,
24 | "noImplicitAny": true,
25 | "strictNullChecks": true,
26 | "suppressImplicitAnyIndexErrors": true,
27 | "noUnusedLocals": false
28 | },
29 | "include": [
30 | "src"
31 | ]
32 | }
--------------------------------------------------------------------------------
/examples/transit-react-basic/.env.local:
--------------------------------------------------------------------------------
1 | PORT=3300
2 | BROWSER=none
3 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # testing
7 | /coverage
8 |
9 | # production
10 | /build
11 |
12 | # misc
13 | .DS_Store
14 | # .env.local
15 | .env.development.local
16 | .env.test.local
17 | .env.production.local
18 |
19 | npm-debug.log*
20 | yarn-debug.log*
21 | yarn-error.log*
22 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/ScatterNetworkSettings.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/ScatterNetworkSettings.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/Scatter_AddAccount1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/Scatter_AddAccount1.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/Scatter_AddAccount2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/Scatter_AddAccount2.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/Scatter_AddAccount3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/Scatter_AddAccount3.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/Scatter_AddAccount4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/Scatter_AddAccount4.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/Scatter_AddAccount5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/Scatter_AddAccount5.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/Transit_DemoVideo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/Transit_DemoVideo.jpg
--------------------------------------------------------------------------------
/examples/transit-react-basic/TransportU2F.js.patch:
--------------------------------------------------------------------------------
1 | --- TransportU2F.js 2019-02-05 14:51:58.052501700 -0500
2 | +++ TransportU2F_new.js 2019-02-05 14:52:20.660241700 -0500
3 | @@ -14,6 +14,8 @@
4 |
5 | var _hwTransport2 = _interopRequireDefault(_hwTransport);
6 |
7 | +var regeneratorRuntime = require("@babel/runtime/regenerator");
8 | +
9 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10 |
11 | function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
12 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/Transportwebauthn.js.patch:
--------------------------------------------------------------------------------
1 | --- TransportWebAuthn.js 1985-10-26 03:15:00.000000000 -0500
2 | +++ TransportWebAuthnMod.js 2019-05-02 10:21:29.013725600 -0400
3 | @@ -12,6 +12,8 @@
4 |
5 | var _errors = require("@ledgerhq/errors");
6 |
7 | +var regeneratorRuntime = require("@babel/runtime/regenerator");
8 | +
9 | var _scrambling = require("@ledgerhq/devices/lib/scrambling");
10 |
11 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12 | @@ -179,4 +181,4 @@
13 | };
14 |
15 | exports.default = TransportWebAuthn;
16 | -//# sourceMappingURL=TransportWebAuthn.js.map
17 | \ No newline at end of file
18 | +//# sourceMappingURL=TransportWebAuthn.js.map
19 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/images.d.ts:
--------------------------------------------------------------------------------
1 | declare module '*.svg'
2 | declare module '*.png'
3 | declare module '*.jpg'
4 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/patch-TransportU2F.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 | cd "$(dirname "$0")";
3 | echo "Patching TransportU2F.js ..."
4 | patch node_modules/@ledgerhq/hw-transport-u2f/lib/TransportU2F.js TransportU2F.js.patch
5 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/patch-Transportwebauthn.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 | cd "$(dirname "$0")";
3 | echo "Patching TransportWebAuthn.js ..."
4 | patch node_modules/@ledgerhq/hw-transport-webauthn/lib/TransportWebAuthn.js Transportwebauthn.js.patch
5 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/examples/transit-react-basic/public/favicon.ico
--------------------------------------------------------------------------------
/examples/transit-react-basic/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 |
12 |
13 |
22 | WAL:E / React Transfer App Example
23 |
24 |
25 |
28 |
29 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "EOS UAL Example",
3 | "name": "EOS UAL React App Example",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | }
10 | ],
11 | "start_url": "./index.html",
12 | "display": "standalone",
13 | "theme_color": "#000000",
14 | "background_color": "#ffffff"
15 | }
16 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/AccessContextSubscribe.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode } from 'react';
2 | import WAL, { WalletAccessContext, StateUnsubscribeFn } from 'eos-transit';
3 |
4 | export interface AccessContextSubscribeProps {
5 | children?: (accessContext: WalletAccessContext) => ReactNode;
6 | }
7 |
8 | export class AccessContextSubscribe extends Component {
9 | unsubscribe?: StateUnsubscribeFn;
10 | unmounted?: boolean;
11 |
12 | handleAccessContextUpdate = () => {
13 | if (!this.unmounted) this.forceUpdate();
14 | };
15 |
16 | componentDidMount() {
17 | this.unsubscribe = WAL.accessContext.subscribe(this.handleAccessContextUpdate);
18 | }
19 |
20 | componentWillUnmount() {
21 | this.unmounted = true;
22 | const { unsubscribe } = this;
23 | if (typeof unsubscribe === 'function') unsubscribe();
24 | }
25 |
26 | render() {
27 | const { children } = this.props;
28 | if (typeof children !== 'function') return null;
29 | return children(WAL.accessContext);
30 | }
31 | }
32 |
33 | export default AccessContextSubscribe;
34 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/AppRoutes.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Route, Switch } from 'react-router-dom';
3 | import LoginScreen from './login/LoginScreen';
4 | import AuthenticatedRoute from './core/AuthenticatedRoute';
5 | import { AppLayout } from './core/AppLayout';
6 | import { HomeScreen } from './HomeScreen';
7 | import { TestScreen } from './TestScreen';
8 |
9 | export function AppRoutes() {
10 | return (
11 |
12 |
13 |
14 |
15 | {() => (
16 |
17 |
18 |
19 |
20 | )}
21 |
22 | />
23 | {/* */}
24 |
25 |
26 | );
27 | }
28 |
29 | export default AppRoutes;
30 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/HomeScreen.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PaymentForm from './PaymentForm';
3 |
4 | export function HomeScreen() {
5 | return ;
6 | }
7 |
8 | export default HomeScreen;
9 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/TestScreen.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ArbSign from './ArbSign';
3 |
4 | export function TestScreen() {
5 | return ;
6 | }
7 |
8 | export default TestScreen;
9 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/WalletStateSubscribe.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode } from 'react';
2 | import { StateUnsubscribeFn, Wallet, WalletState } from 'eos-transit';
3 |
4 | export interface WalletStateSubscribeProps {
5 | wallet: Wallet;
6 | children?: (walletState: WalletState) => ReactNode;
7 | }
8 |
9 | export class WalletStateSubscribe extends Component {
10 | unsubscribe?: StateUnsubscribeFn;
11 | unmounted?: boolean;
12 |
13 | handleWalletStateUpdate = () => {
14 | if (!this.unmounted) this.forceUpdate();
15 | };
16 |
17 | componentDidMount() {
18 | const { wallet } = this.props;
19 | this.unsubscribe = wallet.subscribe(this.handleWalletStateUpdate);
20 | }
21 |
22 | componentWillUnmount() {
23 | this.unmounted = true;
24 | const { unsubscribe } = this;
25 | if (typeof unsubscribe === 'function') unsubscribe();
26 | }
27 |
28 | render() {
29 | const { children, wallet } = this.props;
30 | if (typeof children !== 'function') return null;
31 | return children(wallet.state);
32 | }
33 | }
34 |
35 | export default WalletStateSubscribe;
36 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/config.ts:
--------------------------------------------------------------------------------
1 | const env = process.env;
2 |
3 | export const config = {
4 | defaultNetwork: env.REACT_APP_DEFAULT_NETWORK
5 | };
6 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/AppLayout.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode } from 'react';
2 | import {
3 | ScreenLayout,
4 | ScreenContentHeader,
5 | ScreenContentBody,
6 | ScreenContentBodyContainer,
7 | ScreenContentHeaderMain
8 | } from '../shared/screen';
9 | import { LogoLink } from '../shared/LogoLink';
10 | import UserBlock from './UserBlock';
11 |
12 | export interface AppLayoutProps {
13 | children?: ReactNode;
14 | }
15 |
16 | export function AppLayout({ children }: AppLayoutProps) {
17 | return (
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | {children}
28 |
29 |
30 | );
31 | }
32 |
33 | export default AppLayout;
34 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/AuthenticatedRoute.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode } from 'react';
2 | import {
3 | Route,
4 | Redirect,
5 | withRouter,
6 | RouteComponentProps
7 | } from 'react-router-dom';
8 | import WAL from 'eos-transit';
9 |
10 | export interface Props extends RouteComponentProps {
11 | component?: Component;
12 | children?: (props: any) => ReactNode;
13 | otherwiseRedirectTo?: string;
14 | }
15 |
16 | export function AuthenticatedRoute({
17 | children,
18 | component,
19 | otherwiseRedirectTo,
20 | ...rest
21 | }: Props) {
22 | function renderComponent(props: any) {
23 | if (typeof children === 'function') {
24 | return children(props);
25 | }
26 |
27 | if (Component) {
28 | return ;
29 | }
30 |
31 | return null;
32 | }
33 |
34 | return (
35 | {
38 | const isLoggedIn = !!WAL.accessContext.getActiveWallets().length;
39 | if (isLoggedIn) return renderComponent(props);
40 |
41 | return (
42 |
48 | );
49 | }}
50 | />
51 | );
52 | }
53 |
54 | export default withRouter(AuthenticatedRoute);
55 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/UserAvatar.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { FiUser } from 'react-icons/fi';
4 |
5 | const UserAvatarRoot = styled('div')({
6 | display: 'flex',
7 | alignItems: 'center',
8 | justifyContent: 'center',
9 | position: 'relative',
10 | width: 30,
11 | height: 30,
12 | fontSize: 20,
13 | // backgroundColor: 'rgba(0, 0, 0, 0.3)',
14 | borderRadius: '50%',
15 | overflow: 'hidden',
16 |
17 | '& img': {
18 | position: 'absolute',
19 | top: 0,
20 | left: 0,
21 | width: '100%',
22 | maxWidth: '120%',
23 | maxHeight: '120%',
24 | textAlign: 'center'
25 | }
26 | });
27 |
28 | export interface Props {
29 | children?: any;
30 | isActive?: boolean;
31 | isLoading?: boolean;
32 | onClick?: () => void;
33 | url?: string;
34 | }
35 |
36 | export function UserAvatar(props: Props) {
37 | const { url } = props;
38 |
39 | return (
40 | {url ?
: }
41 | );
42 | }
43 |
44 | export default UserAvatar;
45 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/UserBlock.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode } from 'react';
2 | import WAL from 'eos-transit';
3 | import { UserDropdown } from './UserDropdown';
4 |
5 | const { accessContext } = WAL;
6 |
7 | export interface UserBlockProps {
8 | children?: ReactNode;
9 | username?: string;
10 | }
11 |
12 | export function UserBlock({ children, username }: UserBlockProps) {
13 | return ;
14 | }
15 |
16 | export function UserBlockConnected({ children }: UserBlockProps) {
17 | const isLoggedIn = !!accessContext.getActiveWallets().length;
18 | if (!isLoggedIn) return null;
19 |
20 | const auth = accessContext.getActiveWallets()[0].auth;
21 | const username = (auth && `${auth.accountName}@${auth.permission}`) || void 0;
22 |
23 | return {children};
24 | }
25 |
26 | export default UserBlockConnected;
27 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/UserDropdown.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | Dropdown,
4 | DropdownContainer,
5 | DropdownContent
6 | } from '../shared/dropdown';
7 | import UserMedia from './UserMedia';
8 | import { UserMenu } from './UserMenu';
9 |
10 | export interface UserDropdownProps {
11 | username?: string;
12 | }
13 |
14 | export function UserDropdown({ username }: UserDropdownProps) {
15 | return (
16 |
17 | {({ isExpanded, toggle }: any) => (
18 |
19 |
26 |
27 |
28 |
29 |
30 |
31 | )}
32 |
33 | );
34 | }
35 |
36 | export default UserDropdown;
37 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/UserMenuAddWalletButton.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { IoIosAddCircleOutline } from 'react-icons/io';
4 |
5 | export interface UserMenuAddWalletButtonProps {
6 | onClick?: (event: any) => void;
7 | }
8 |
9 | export const UserMenuAddWalletButtonRoot = styled('div')({
10 | display: 'flex',
11 | alignItems: 'center',
12 | width: '100%',
13 | border: '1px dashed #424a56',
14 | borderRadius: 1,
15 | fontSize: 14,
16 | backgroundColor: '#20252f',
17 | color: 'white',
18 | textAlign: 'center',
19 | outline: 'none',
20 | transition: 'all 0.2s',
21 |
22 | '&:hover': {
23 | backgroundColor: '#2e3542',
24 | color: 'white',
25 | cursor: 'pointer',
26 | borderColor: '#346f77'
27 | },
28 |
29 | '&:active': {
30 | backgroundColor: '#26c5df',
31 | borderColor: 'transparent'
32 | }
33 | });
34 |
35 | const iconWidth = 50;
36 |
37 | export const UserMenuAddWalletButtonText = styled('div')({
38 | flex: 1,
39 | padding: `13px ${iconWidth + 13}px 13px 0`,
40 | textAlign: 'center'
41 | });
42 |
43 | export const UserMenuAddWalletButtonIcon = styled('div')({
44 | display: 'flex',
45 | alignItems: 'center',
46 | justifyContent: 'center',
47 | width: iconWidth,
48 | padding: 13,
49 | fontSize: 24,
50 | opacity: 0.5
51 | });
52 |
53 | export function UserMenuAddWalletButton({
54 | onClick
55 | }: UserMenuAddWalletButtonProps) {
56 | return (
57 |
58 |
59 |
60 |
61 |
62 | Add Wallet
63 |
64 | );
65 | }
66 |
67 | export default UserMenuAddWalletButton;
68 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/UserMenuLogoutButton.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import WAL from 'eos-transit';
4 | import { IoIosLogOut } from 'react-icons/io';
5 |
6 | const { accessContext } = WAL;
7 |
8 | export interface UserMenuLogoutButtonProps {
9 | onClick?: (event: any) => void;
10 | }
11 |
12 | export const UserMenuLogoutButtonRoot = styled('div')({
13 | display: 'flex',
14 | alignItems: 'center',
15 | justifyContent: 'center',
16 | width: '100%',
17 | border: 'none',
18 | borderRadius: 1,
19 | padding: '10px 20px',
20 | fontSize: 14,
21 | backgroundColor: '#20252f',
22 | color: 'white',
23 | textAlign: 'center',
24 | outline: 'none',
25 | transition: 'all 0.2s',
26 |
27 | '&:hover': {
28 | // backgroundColor: '#2e3542',
29 | backgroundColor: '#98243f',
30 | color: 'white',
31 | cursor: 'pointer'
32 | },
33 |
34 | '&:active': {
35 | // backgroundColor: '#2e3542',
36 | backgroundColor: '#c3173f'
37 | }
38 | });
39 |
40 | export const UserMenuLogoutButtonIcon = styled('div')({
41 | display: 'flex',
42 | alignItems: 'center',
43 | paddingLeft: 10
44 | });
45 |
46 | export const UserMenuLogoutButtonText = styled('div')({});
47 |
48 | export function UserMenuLogoutButton({ onClick }: UserMenuLogoutButtonProps) {
49 | return (
50 |
51 | Logout
52 |
53 |
54 |
55 |
56 | );
57 | }
58 |
59 | export function UserMenuLogoutButtonConnected() {
60 | return accessContext.terminateAll()} />;
61 | }
62 |
63 | export default UserMenuLogoutButtonConnected;
64 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/core/UserWalletList.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import WAL from 'eos-transit';
3 | import { NoContent } from '../shared/NoContent';
4 | import { WalletList } from '../shared/wallets/WalletList';
5 |
6 | const { accessContext } = WAL;
7 |
8 | export function UserWalletList() {
9 | const wallets = accessContext.getWallets();
10 |
11 | if (!wallets.length) {
12 | return (
13 |
17 | );
18 | }
19 |
20 | return (
21 | wallet.terminate()}
24 | onItemLogoutClick={wallet => wallet.terminate()}
25 | onItemReconnectClick={wallet => wallet.connect()}
26 | />
27 | );
28 | }
29 |
30 | export default UserWalletList;
31 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/globalStyles.ts:
--------------------------------------------------------------------------------
1 | import { injectGlobal } from 'emotion';
2 |
3 | export function applyGlobalStyles() {
4 | return injectGlobal`
5 | body {
6 | margin: 0;
7 | padding: 0;
8 | font-family: 'Helvetica', 'Helvetica Neue', sans-serif;
9 | -webkit-font-smoothing: antialiased;
10 | background-color: #21262f;
11 | color: white;
12 | }
13 |
14 | a {
15 | color: #9c73d7;
16 | }
17 |
18 | a:hover,
19 | a:focus,
20 | a:active {
21 | color: white;
22 | }
23 | `;
24 | }
25 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { render } from 'react-dom';
3 | import { BrowserRouter as Router } from 'react-router-dom';
4 | import 'minireset.css';
5 | import './initDefaultAccessContext';
6 | import AppRoutes from './AppRoutes';
7 | import { applyGlobalStyles } from './globalStyles';
8 | import AccessContextSubscribe from 'AccessContextSubscribe';
9 |
10 | applyGlobalStyles();
11 |
12 | const Root = () => (
13 |
14 | {() => (
15 |
16 |
17 |
18 | )}
19 |
20 | );
21 |
22 | render(, document.getElementById('root'));
23 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/EosLogo.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 |
3 | export function EosLogo() {
4 | return (
5 |
33 | );
34 | }
35 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/LogoLink.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { NavLink, NavLinkProps } from 'react-router-dom';
4 |
5 | export const LogoLinkRoot = styled(NavLink)({
6 | display: 'flex',
7 | alignItems: 'center',
8 | justifyContent: 'center',
9 | width: 45,
10 | height: 45,
11 | fontSize: 12,
12 | backgroundColor: 'rgba(255, 255, 255, 0.1)',
13 | color: 'white',
14 | textDecoration: 'none',
15 | textTransform: 'uppercase',
16 | borderRadius: '50%',
17 | transition: 'all 0.2s',
18 |
19 | '&:hover': {
20 | backgroundColor: 'rgba(255, 255, 255, 0.25)',
21 | textDecoration: 'none'
22 | }
23 | });
24 |
25 | export function LogoLink(props: NavLinkProps) {
26 | return EOS;
27 | }
28 |
29 | export default LogoLink;
30 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/NoContent.tsx:
--------------------------------------------------------------------------------
1 | import React, { ComponentType } from 'react';
2 | import styled from 'react-emotion';
3 |
4 | const NoContentRoot = styled('div')({
5 | flex: 1,
6 | display: 'flex',
7 | alignItems: 'stretch',
8 | justifyContent: 'stretch',
9 | // padding: '10px'
10 | });
11 |
12 | const NoContentFrame = styled('div')({
13 | flex: 1,
14 | display: 'flex',
15 | flexDirection: 'column',
16 | alignItems: 'center',
17 | justifyContent: 'center',
18 | padding: '50px 20px',
19 | border: '1px dashed rgba(255, 255, 255, 0.3)',
20 | textAlign: 'center'
21 | });
22 |
23 | const NoContentIcon = styled('div')({
24 | fontSize: 36,
25 | color: 'rgba(255, 255, 255, 0.8)',
26 |
27 | '&:not(:last-child)': {
28 | marginBottom: 20
29 | }
30 | });
31 |
32 | const Message = styled('div')({
33 | fontSize: 14,
34 | color: 'rgba(255, 255, 255, 1)',
35 | lineHeight: 1.2,
36 |
37 | '&:not(:last-child)': {
38 | marginBottom: 10
39 | }
40 | });
41 |
42 | const Sublabel = styled('div')({
43 | fontSize: 12,
44 | color: 'rgba(255, 255, 255, 0.4)',
45 | lineHeight: 1.2
46 | });
47 |
48 | export interface Props {
49 | className?: string;
50 | message: string;
51 | note?: string;
52 | icon?: ComponentType;
53 | }
54 |
55 | export function NoContent({ icon, message, note, className }: Props) {
56 | const Icon = icon;
57 |
58 | return (
59 |
60 |
61 | {Icon && (
62 |
63 |
64 |
65 | )}
66 | {message}
67 | {note}
68 |
69 |
70 | );
71 | }
72 |
73 | export default NoContent;
74 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/buttons/CloseButton.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { IoIosClose } from 'react-icons/io';
4 |
5 | export interface CloseButtonProps {
6 | onClick?: (event: any) => void;
7 | size: number;
8 | }
9 |
10 | export const CloseButtonRoot = styled('div')(
11 | {
12 | display: 'inline-flex',
13 | alignItems: 'center',
14 | justifyContent: 'center',
15 | border: 'none',
16 | outline: 'none',
17 | backgroundColor: 'rgba(255, 255, 255, 0.02)',
18 | color: 'white',
19 | transition: 'all 0.2s',
20 |
21 | '&:hover': {
22 | backgroundColor: 'rgba(255, 255, 255, 0.07)',
23 | color: '#26c5de',
24 | cursor: 'pointer'
25 | }
26 | },
27 | ({ size }: CloseButtonProps) => ({
28 | width: size,
29 | height: size,
30 | fontSize: size * 0.8,
31 |
32 | '&:not(:last-child)': {
33 | marginRight: size / 4
34 | }
35 | })
36 | );
37 |
38 | export function CloseButton({ onClick, size }: Partial) {
39 | return (
40 |
41 |
42 |
43 | );
44 | }
45 |
46 | export default CloseButton;
47 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/dropdown/Dropdown.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode, createContext } from 'react';
2 | import onClickOutside, { InjectedOnClickOutProps } from 'react-onclickoutside';
3 | import { DropdownContainer } from './DropdownContainer';
4 |
5 | export interface DropdownChildrenFnArg {
6 | isExpanded: boolean;
7 | toggle: () => void;
8 | }
9 |
10 | export interface DropdownProps {
11 | children?: (dropdownState: DropdownChildrenFnArg) => ReactNode;
12 | isExpanded?: boolean; // TODO: Handle passed force-state
13 | closesOn?: string; // TODO: Type more precisely and implement
14 | }
15 |
16 | export interface State {
17 | isExpanded: boolean;
18 | }
19 |
20 | export class Dropdown extends Component<
21 | DropdownProps & InjectedOnClickOutProps,
22 | State
23 | > {
24 | state = { isExpanded: false };
25 |
26 | toggle = () => {
27 | this.setState(state => ({ isExpanded: !state.isExpanded }));
28 | };
29 |
30 | handleClickOutside = (event: any) => {
31 | if (!this.props.closesOn || this.props.closesOn === 'clickOutside') {
32 | this.setState({ isExpanded: false });
33 | }
34 | };
35 |
36 | render() {
37 | const { toggle } = this;
38 | const { isExpanded } = this.state;
39 | const { children } = this.props;
40 |
41 | return (
42 |
43 | {children ? children({ isExpanded, toggle }) : null}
44 |
45 | );
46 | }
47 | }
48 |
49 | export default onClickOutside(Dropdown);
50 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/dropdown/DropdownContainer.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export const DropdownContainer = styled('div')({
4 | position: 'relative',
5 | display: 'inline-flex'
6 | });
7 |
8 | DropdownContainer.displayName = 'DropdownContainer';
9 |
10 | export default DropdownContainer;
11 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/dropdown/DropdownContent.tsx:
--------------------------------------------------------------------------------
1 | import styled from 'react-emotion';
2 |
3 | export interface Props {
4 | visible?: boolean;
5 | alignRight?: boolean;
6 | }
7 |
8 | export const DropdownContent = styled('div')(
9 | {
10 | position: 'absolute',
11 | zIndex: 20,
12 | top: '100%',
13 | borderRadius: 0,
14 | borderWidth: 0,
15 | backgroundColor: '#171c24',
16 | color: 'white',
17 | boxShadow: '0 5px 30px -8px rgba(0, 0, 0, 0.5)',
18 | transform: 'scale(0)',
19 | transition: 'all 0.2s'
20 | },
21 | ({ alignRight, visible }: Props) => {
22 | return {
23 | display: 'block',
24 | visibility: visible ? 'visible' : 'hidden',
25 | // display: visible ? 'block' : 'none',
26 | right: alignRight ? 0 : 'auto',
27 | opacity: visible ? 1 : 0,
28 | transform: visible ? 'scale(1) scaleY(1)' : 'scaleX(0.95) scaleY(0.9)',
29 | transformOrigin: 'top right'
30 | };
31 | }
32 | );
33 |
34 | DropdownContent.displayName = 'DropdownContent';
35 |
36 | export default DropdownContent;
37 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/dropdown/DropdownTrigger.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode, MouseEvent } from 'react';
2 |
3 | export interface Props {
4 | children?: ReactNode;
5 | onTriggerClick?: (event: MouseEvent) => void;
6 | }
7 |
8 | export function DropdownTrigger({ children, onTriggerClick }: Props) {
9 | return {children}
;
10 | }
11 |
12 | export default DropdownTrigger;
13 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/dropdown/index.ts:
--------------------------------------------------------------------------------
1 | import Dropdown from './Dropdown';
2 | export { Dropdown };
3 | export * from './DropdownContainer';
4 | export * from './DropdownContent';
5 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/forms/FieldLabel.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const FieldLabel = styled('label')({
5 | display: 'block',
6 | marginBottom: 8,
7 | fontSize: 13
8 | });
9 |
10 | export default FieldLabel;
11 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/forms/FormActions.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const FormActions = styled('div')({
5 | marginBottom: 20
6 | });
7 |
8 | FormActions.displayName = 'FormActions';
9 |
10 | export default FormActions;
11 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/forms/FormElement.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const FormElement = styled('div')({
5 | marginBottom: 25
6 | });
7 |
8 | export default FormElement;
9 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/forms/controls/Input.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const Input = styled('input')({
5 | padding: 18,
6 | fontSize: 16,
7 | borderStyle: 'solid',
8 | borderWidth: 1,
9 | // borderBottomWidth: 1,
10 | borderColor: 'rgba(255, 255, 255, 0.3)',
11 | // borderColor: 'rgba(255, 255, 255, 0.45)',
12 | borderRadius: 2,
13 | color: 'white',
14 | backgroundColor: 'transparent',
15 | outline: 'none',
16 | transition: 'all 0.2s',
17 |
18 | '&:focus': {
19 | borderColor: '#26c5df'
20 | },
21 |
22 | '&:not([type=checkbox]):not([type=file])': {
23 | width: '100%'
24 | },
25 |
26 | '&[disabled]': {
27 | backgroundColor: 'rgba(0, 0, 0, 0.2)',
28 | color: 'rgba(255, 255, 255, 0.3)'
29 | }
30 | });
31 |
32 | Input.displayName = 'Input';
33 |
34 | export default Input;
35 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/forms/index.ts:
--------------------------------------------------------------------------------
1 | export * from './FormElement';
2 | export * from './FieldLabel';
3 | export * from './FormActions';
4 |
5 | // Styled controls
6 |
7 | export * from './controls/Input';
8 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/helpers.ts:
--------------------------------------------------------------------------------
1 | export function toNumber(input?: string) {
2 | if (!input) return 0;
3 | const chunks = input.split(' ');
4 | if (!chunks[0]) return 0;
5 | return Number(chunks[0]);
6 | }
7 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/icons/SpinnerIcon.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled, { keyframes } from 'react-emotion';
3 |
4 | const spinAnimation = keyframes({
5 | '0%': { transform: `rotate(0deg)` },
6 | '100%': { transform: `rotate(359deg)` }
7 | });
8 |
9 | export interface SpinnerIconProps {
10 | size: number;
11 | }
12 |
13 | export const SpinnerIconRoot = styled('div')(
14 | {
15 | display: 'inline-flex',
16 |
17 | '&:after': {
18 | content: '" "',
19 | display: 'block',
20 | margin: 1,
21 | borderRadius: '50%',
22 | border: '2px solid #fff',
23 | borderColor: '#fff transparent #fff transparent',
24 | animation: `${spinAnimation} 1.2s infinite linear`
25 | }
26 | },
27 | ({ size }: SpinnerIconProps) => ({
28 | '&:after': {
29 | width: size,
30 | height: size
31 | },
32 |
33 | '&:not(:last-child)': {
34 | marginRight: size / 2
35 | }
36 | })
37 | );
38 |
39 | export function SpinnerIcon({ size }: Partial) {
40 | return ;
41 | }
42 |
43 | export default SpinnerIcon;
44 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/screen/ScreenContent.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const ScreenContent = styled('div')({
5 | flex: 1,
6 | display: 'flex',
7 | flexDirection: 'column',
8 | alignItems: 'stretch',
9 | justifyContent: 'stretch'
10 | });
11 |
12 | export const ScreenContentHeader = styled('header')({
13 | display: 'flex',
14 | padding: '25px 30px'
15 | });
16 |
17 | export const ScreenContentHeaderMain = styled('div')({
18 | flex: 1
19 | });
20 |
21 | export interface ScreenContentBodyProps {
22 | flex?: boolean;
23 | }
24 |
25 | export const ScreenContentBody = styled('main')(
26 | {
27 | flex: 1,
28 | margin: '0 auto',
29 | padding: '30px 0'
30 | },
31 | ({ flex }: ScreenContentBodyProps) => ({
32 | display: flex !== false ? 'flex' : 'block'
33 | })
34 | );
35 |
36 | export interface ScreenContentBodyContainerProps {
37 | flex?: boolean;
38 | }
39 |
40 | export const ScreenContentBodyContainer = styled('div')(
41 | {
42 | maxWidth: 480,
43 | width: 480
44 | },
45 | ({ flex }: ScreenContentBodyContainerProps) => ({
46 | display: flex !== false ? 'flex' : 'block',
47 | flexDirection: 'column'
48 | })
49 | );
50 |
51 | export const ScreenContentFooter = styled('footer')({});
52 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/screen/ScreenLayout.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const ScreenLayout = styled('div')({
5 | width: '100%',
6 | minHeight: '100vh',
7 | display: 'flex',
8 | flexDirection: 'column',
9 | justifyContent: 'stretch'
10 | });
11 |
12 | export default ScreenLayout;
13 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/screen/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ScreenLayout';
2 | export * from './ScreenContent';
3 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/transactions/TransactionAddonBlock.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { IoIosArrowDown } from 'react-icons/io';
3 | import { Wallet } from 'eos-transit';
4 | import { Dropdown, DropdownContainer, DropdownContent } from '../dropdown';
5 | import { TransactionAddonButton } from './TransactionAddonButton';
6 | import TransactionAddonMenu from './TransactionAddonMenu';
7 |
8 | export interface TransactionAddonBlockProps {
9 | disabled?: boolean;
10 | success?: boolean;
11 | danger?: boolean;
12 | onWalletSelect?: (wallet: Wallet) => void;
13 | }
14 |
15 | export function TransactionAddonBlock({
16 | disabled,
17 | success,
18 | danger,
19 | onWalletSelect
20 | }: TransactionAddonBlockProps) {
21 | return disabled ? (
22 |
23 |
24 |
25 | ) : (
26 |
27 | {({ isExpanded, toggle }) => (
28 |
29 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | )}
42 |
43 | );
44 | }
45 |
46 | export default TransactionAddonBlock;
47 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/transactions/TransactionAddonMenu.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import styled from 'react-emotion';
3 | import WAL, { Wallet } from 'eos-transit';
4 | import { TransactionAddonMenuItem } from './TransactionAddonMenuItem';
5 | import WalletStateSubscribe from 'WalletStateSubscribe';
6 |
7 | // Visual components
8 |
9 | const TransactionAddonMenuRoot = styled('div')({
10 | minWidth: 250,
11 | width: 330,
12 | padding: '8px'
13 | });
14 |
15 | const TransactionAddonMenuHeader = styled('header')({
16 | padding: '5px 0',
17 | fontSize: 11,
18 | fontWeight: 300,
19 | color: 'white',
20 | textTransform: 'uppercase',
21 | marginBottom: 5
22 | });
23 |
24 | // Exported component
25 |
26 | export interface TransactionAddonMenuProps {
27 | onWalletSelect?: (selectedWallet: Wallet) => void;
28 | }
29 |
30 | export class TransactionAddonMenu extends Component {
31 | handleItemSelect = (wallet: Wallet) => {
32 | const { onWalletSelect } = this.props;
33 | if (typeof onWalletSelect === 'function') {
34 | onWalletSelect(wallet);
35 | }
36 | };
37 |
38 | getActiveWallets = () => {
39 | return WAL.accessContext.getActiveWallets();
40 | };
41 |
42 | render() {
43 | const { getActiveWallets, handleItemSelect } = this;
44 | const activeWallets = getActiveWallets();
45 |
46 | return (
47 |
48 | Run with wallet:
49 | {activeWallets.map((wallet, i) => (
50 |
51 | {() => }
52 |
53 | ))}
54 |
55 | );
56 | }
57 | }
58 |
59 | export default TransactionAddonMenu;
60 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/transactions/types.ts:
--------------------------------------------------------------------------------
1 | import { Wallet } from 'eos-transit';
2 |
3 | export interface TransactionStatus {
4 | inProgress?: boolean;
5 | progressStatus?: string;
6 | success?: boolean;
7 | successMessage?: string;
8 | error?: boolean;
9 | errorMessage?: string;
10 | }
11 |
12 | export interface TransactionInfo {
13 | id?: string;
14 | // TODO: Other data
15 | }
16 |
17 | export interface TransactionModel {
18 | wallet: Wallet;
19 | amount: number;
20 | receiverName: string;
21 | currency: string;
22 | transactionStatus: TransactionStatus;
23 | transactionInfo?: TransactionInfo;
24 | }
25 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/wallets/WalletProviderIcon.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { IoIosUnlock } from 'react-icons/io';
3 | import { FiCopy } from 'react-icons/fi';
4 | import { ScatterLogo } from '../ScatterLogo';
5 | import { MetroLogo } from '../MetroLogo';
6 |
7 | const defaultIcon = IoIosUnlock;
8 |
9 | const providerIcons = {
10 | 'eos-metro': MetroLogo,
11 | 'scatter-desktop': ScatterLogo,
12 | 'paste-the-private-key': FiCopy
13 | };
14 |
15 | interface WalletProviderIconProps {
16 | providerId?: string;
17 | }
18 |
19 | export function WalletProviderIcon({ providerId }: WalletProviderIconProps) {
20 | const IconComponent =
21 | (providerId && providerIcons[providerId]) || defaultIcon;
22 |
23 | return ;
24 | }
25 |
26 | export default WalletProviderIcon;
27 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/src/shared/wallets/types.ts:
--------------------------------------------------------------------------------
1 | export interface WalletConnectionStatus {
2 | connecting?: boolean;
3 | connected: boolean;
4 | error?: boolean;
5 | errorMessage?: string;
6 | }
7 |
8 | export interface WalletProviderInfo {
9 | id: string;
10 | name?: string;
11 | shortName?: string;
12 | description?: string;
13 | }
14 |
15 | export interface WalletInfo {
16 | accountName: string;
17 | accountAuthority?: string;
18 | publicKey?: string;
19 | eosBalance?: number;
20 | ram?: number;
21 | cpu?: number;
22 | net?: number;
23 | }
24 |
25 | export interface WalletModel {
26 | providerInfo: WalletProviderInfo;
27 | connectionStatus: WalletConnectionStatus;
28 | walletInfo?: WalletInfo;
29 | }
30 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "baseUrl": "./src",
4 | "outDir": "./build",
5 | "module": "esnext",
6 | "target": "es5",
7 | "lib": ["dom", "es2017"],
8 | "sourceMap": true,
9 | "allowJs": true,
10 | "jsx": "react",
11 | "moduleResolution": "node",
12 | "rootDir": "src",
13 | "forceConsistentCasingInFileNames": true,
14 | "noImplicitReturns": true,
15 | "noImplicitThis": true,
16 | "noImplicitAny": true,
17 | "strictNullChecks": true,
18 | "suppressImplicitAnyIndexErrors": true,
19 | "noUnusedLocals": false,
20 | "allowSyntheticDefaultImports": true
21 | },
22 | "exclude": [
23 | "node_modules",
24 | "build",
25 | "scripts",
26 | "acceptance-tests",
27 | "webpack",
28 | "jest",
29 | "src/setupTests.ts"
30 | ]
31 | }
32 |
--------------------------------------------------------------------------------
/examples/transit-react-basic/tsconfig.prod.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json"
3 | }
--------------------------------------------------------------------------------
/examples/transit-react-basic/tsconfig.test.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs"
5 | }
6 | }
--------------------------------------------------------------------------------
/examples/transit-script-tag/styles.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: 'Helvetica Neue', sans-serif;
3 | padding: 40px 50px;
4 | }
5 |
6 | * {
7 | box-sizing: border-box;
8 | }
9 |
10 | h2 {
11 | display: block;
12 | margin: 0 0 8px;
13 | font-size: 20px;
14 | }
15 |
16 | .header {
17 | margin-bottom: 30px;
18 | }
19 |
20 | .subheading {
21 | display: block;
22 | margin: 0 0 10px;
23 | font-size: 12px;
24 | font-weight: normal;
25 | color: #aaa;
26 | }
27 |
28 | .container {
29 | margin: 0 auto;
30 | max-width: 350px;
31 | }
32 |
33 | .form-element {
34 | margin-bottom: 20px;
35 | }
36 | .form-element label {
37 | display: block;
38 | margin-bottom: 5px;
39 | font-size: 10px;
40 | color: #aaa;
41 | text-transform: uppercase;
42 | }
43 |
44 | .input {
45 | display: block;
46 | width: 100%;
47 | min-width: 180px;
48 | padding: 10px 20px;
49 | border: 1px solid #ccc;
50 | border-radius: 0;
51 | font-size: 14px;
52 | font-weight: 300;
53 | color: #252525;
54 | outline: none;
55 | }
56 |
57 | .input:focus {
58 | border-color: #999;
59 | }
60 |
61 | .input:disabled {
62 | background-color: #eee;
63 | color: #999;
64 | }
65 |
66 | .button {
67 | display: block;
68 | width: 100%;
69 | min-width: 180px;
70 | padding: 10px 20px;
71 | font-size: 12px;
72 | font-weight: 300;
73 | border: none;
74 | background-color: rgb(14, 196, 150);
75 | color: white;
76 | text-transform: uppercase;
77 | outline: none;
78 | }
79 |
80 | .button:hover {
81 | background-color: rgb(3, 231, 174);
82 | cursor: pointer;
83 | }
84 |
--------------------------------------------------------------------------------
/lerna.json:
--------------------------------------------------------------------------------
1 | {
2 | "packages": [ "packages/*", "examples/transit-react-basic", "examples/transit-electron-dualbuild" ],
3 | "version": "independent",
4 | "npmClient": "yarn",
5 | "command": {
6 | "publish": {
7 | "message": "chore(release): publish",
8 | "ignoreChanges": [ "*.md" ]
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "bootstrap": "lerna exec yarn installpkg && lerna link",
5 | "clean": "lerna clean --yes",
6 | "start": "yarn watch-packages",
7 | "start-all": "lerna run start --stream",
8 | "build-packages": "lerna run build-production --no-bail",
9 | "watch-packages": "lerna run watch",
10 | "build-packages-production": "lerna run build-production --no-bail",
11 | "lint": "./node_modules/.bin/tslint -c ./tslint.json -p ./tsconfig.json",
12 | "test": ""
13 | },
14 | "devDependencies": {
15 | "@types/node": "*",
16 | "@types/uuid": "^3.4.4",
17 | "@types/webpack": "^4.4.18",
18 | "cross-env": "^5.2.0",
19 | "lerna": "^3.4.3",
20 | "prettier": "^1.15.2",
21 | "scatterjs-core": "^2.3.8",
22 | "scatterjs-plugin-eosjs2": "^1.1.6",
23 | "shx": "^0.3.2",
24 | "ts-loader": "^5.3.0",
25 | "ts-node": "^7.0.1",
26 | "tsconfig-paths": "^3.7.0",
27 | "tslint": "^5.11.0",
28 | "tslint-config-prettier": "^1.16.0",
29 | "tslint-react": "^3.6.0",
30 | "typescript": "3.1.6",
31 | "webpack": "4.29.6",
32 | "webpack-cli": "^3.1.2"
33 | },
34 | "prettier": {
35 | "singleQuote": true,
36 | "printWidth": 80,
37 | "tabWidth": 2,
38 | "useTabs": false,
39 | "bracketSpacing": true
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 | Copyright (c) 2020 Greymass Inc.
5 |
6 | Permission is hereby granted, free of charge, to any person obtaining a copy
7 | of this software and associated documentation files (the "Software"), to deal
8 | in the Software without restriction, including without limitation the rights
9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | copies of the Software, and to permit persons to whom the Software is
11 | furnished to do so, subject to the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included in all
14 | copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 | SOFTWARE.
23 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-anchorlink-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjunction with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, GitHub: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 | ## Links To This Package
12 |
13 | NPM: https://www.npmjs.com/package/eos-transit-anchorlink-provider
14 | GitHub: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-anchorlink-provider
15 |
16 | ## Implementation Details
17 |
18 | Anchor link is a cross-device authentication and signing protocol built on top of ESR (EOSIO Signing Requests / EEP-7).
19 |
20 | More information in the [Anchor Link repository](https://github.com/greymass/anchor-link)
21 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-anchorlink-provider",
3 | "version": "4.0.7",
4 | "description": "Anchor / ESR provider for eos-transit",
5 | "license": "MIT",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-anchorlink-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "anchor-link": "^2.0.0",
22 | "anchor-link-browser-transport": "^2.0.0",
23 | "eos-transit": "^4.0.7"
24 | },
25 | "devDependencies": {
26 | "eosjs": "^20.0.0",
27 | "prettier": "^1.19.1",
28 | "webpack": "^4.25.1",
29 | "webpack-cli": "^3.1.2"
30 | },
31 | "prettier": {
32 | "singleQuote": true,
33 | "printWidth": 80,
34 | "tabWidth": 2,
35 | "useTabs": false,
36 | "bracketSpacing": true
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-anchorlink-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: ['.tsx', '.ts', '.js']
23 | },
24 | output: {
25 | filename: 'eos-transit-anchorlink-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: ['WAL', 'providers', 'anchorlink'],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': ['eos-transit', 'default']
34 | })
35 | ],
36 | externals: {
37 | 'eos-transit': 'WAL'
38 | },
39 | stats: {
40 | colors: true
41 | }
42 | };
43 |
44 | export default config;
45 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-keycat-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-keycat-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-keycat-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-keycat-provider",
3 | "version": "4.0.7",
4 | "description": "Keycat - a wallet in your browser",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-keycat-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "eosjs": "^20.0.0",
23 | "keycatjs": "^0.6.2"
24 | },
25 | "devDependencies": {
26 | "webpack": "^4.25.1",
27 | "webpack-cli": "^3.1.2"
28 | },
29 | "prettier": {
30 | "singleQuote": true,
31 | "printWidth": 80,
32 | "tabWidth": 2,
33 | "useTabs": false,
34 | "bracketSpacing": true
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-keycat-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-tokenpocket-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'tokenpocket' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-ledger-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-ledger-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-ledger-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/TransportU2F.js.patch:
--------------------------------------------------------------------------------
1 | --- TransportU2F.js 2019-02-05 14:51:58.052501700 -0500
2 | +++ TransportU2F_new.js 2019-02-05 14:52:20.660241700 -0500
3 | @@ -14,6 +14,8 @@
4 |
5 | var _hwTransport2 = _interopRequireDefault(_hwTransport);
6 |
7 | +var regeneratorRuntime = require("@babel/runtime/regenerator");
8 | +
9 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10 |
11 | function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
12 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/Transportwebauthn.js.patch:
--------------------------------------------------------------------------------
1 | --- TransportWebAuthn.js 1985-10-26 03:15:00.000000000 -0500
2 | +++ TransportWebAuthnMod.js 2019-05-02 10:21:29.013725600 -0400
3 | @@ -12,6 +12,8 @@
4 |
5 | var _errors = require("@ledgerhq/errors");
6 |
7 | +var regeneratorRuntime = require("@babel/runtime/regenerator");
8 | +
9 | var _scrambling = require("@ledgerhq/devices/lib/scrambling");
10 |
11 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12 | @@ -179,4 +181,4 @@
13 | };
14 |
15 | exports.default = TransportWebAuthn;
16 | -//# sourceMappingURL=TransportWebAuthn.js.map
17 | \ No newline at end of file
18 | +//# sourceMappingURL=TransportWebAuthn.js.map
19 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/exampleTxn.txt:
--------------------------------------------------------------------------------
1 | 0420aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e90604049d75315c0402c85c0404ca6f261d040100040100040100040100040101040800a6823403ea30550408000000572d3ccdcd04010104081082f99f72f33fe5040800000000a8ed323204012604261082f99f72f33fe52082f99f72f33fe50a0000000000000004454f530000000005546573743104010004200000000000000000000000000000000000000000000000000000000000000000
2 |
3 | 0420aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e9060404fa82315c040248770404c8e139fe040100040100040100040100040101040800a6823403ea30550408000000572d3ccdcd04010104081082f99f72f33fe5040800000000a8ed323204012604261082f99f72f33fe52082f99f72f33fe50a0000000000000004454f530000000005546573743104010004200000000000000000000000000000000000000000000000000000000000000000
4 |
5 | aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906
6 |
7 |
8 | cf057bbfb72640471fd910bcb67639c22df9f92470936cddc1ade0e2f2e7dc4f3d80315cbbf4e2c27fb5000000000100a6823403ea3055000000572d3ccdcd01405d76789a9b315500000000a8ed3232261082f99f72f33fe52082f99f72f33fe5010000000000000004454f5300000000055465737431000000000000000000000000000000000000000000000000000000000000000000
9 | cf057bbfb72640471fd910bcb67639c22df9f92470936cddc1ade0e2f2e7dc4f 3d80315cbbf4e2c27fb5000000000100a6823403ea3055000000572d3ccdcd01405d76789a9b315500000000a8ed3232261082f99f72f33fe52082f99f72f33fe5010000000000000004454f530000000005546573743100 0000000000000000000000000000000000000000000000000000000000000000
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/patch-TransportU2F.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 | cd "$(dirname "$0")";
3 | echo "Patching TransportU2F.js ..."
4 | patch node_modules/@ledgerhq/hw-transport-u2f/lib/TransportU2F.js TransportU2F.js.patch
5 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/patch-Transportwebauthn.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 | cd "$(dirname "$0")";
3 | echo "Patching TransportWebAuthn.js ..."
4 | patch node_modules/@ledgerhq/hw-transport-webauthn/lib/TransportWebAuthn.js Transportwebauthn.js.patch
5 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/src/typings/bigi/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "bigi";
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/src/typings/eosjs-ecc/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "eosjs-ecc";
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/src/typings/ledgerhq__hw-transport-node-hid/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "@ledgerhq/hw-transport-node-hid";
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/src/typings/ledgerhq__hw-transport-web-ble/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "@ledgerhq/hw-transport-web-ble";
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/src/typings/ledgerhq__hw-transport-webauthn/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "@ledgerhq/hw-transport-webauthn";
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/src/typings/ledgerhq__hw-transport-webusb/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "@ledgerhq/hw-transport-webusb";
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "./lib",
4 | "declaration": true,
5 | "declarationDir": "./lib",
6 | "module": "esnext",
7 | "target": "es5",
8 | "lib": ["dom", "es5", "es2015"],
9 | "sourceMap": true,
10 | "jsx": "react",
11 | "forceConsistentCasingInFileNames": true,
12 | "noImplicitReturns": true,
13 | "noImplicitThis": true,
14 | "noImplicitAny": true,
15 | "strictNullChecks": true,
16 | "suppressImplicitAnyIndexErrors": true,
17 | "noUnusedLocals": false,
18 | "allowSyntheticDefaultImports": true,
19 | "esModuleInterop": true,
20 | "moduleResolution": "node",
21 | "typeRoots": ["./node_modules/@types", "./src/typings"],
22 | "types": ["eosjs-ecc", "bigi", "ledgerhq__hw-transport-webauthn", "ledgerhq__hw-transport-web-ble", "ledgerhq__hw-transport-webusb"]
23 | },
24 | "files": ["src/index.ts"]
25 | }
26 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-ledger-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-ledger-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'ledger' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ],
34 | _hwTransport2: [ '@babel/runtime/regenerator' ]
35 | })
36 | ],
37 | externals: 'eosjs',
38 | stats: {
39 | colors: true
40 | }
41 | };
42 |
43 | export default config;
44 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-lynx-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-lynx-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-lynx-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/exampleTxn.txt:
--------------------------------------------------------------------------------
1 | 0420aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e90604049d75315c0402c85c0404ca6f261d040100040100040100040100040101040800a6823403ea30550408000000572d3ccdcd04010104081082f99f72f33fe5040800000000a8ed323204012604261082f99f72f33fe52082f99f72f33fe50a0000000000000004454f530000000005546573743104010004200000000000000000000000000000000000000000000000000000000000000000
2 |
3 | 0420aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e9060404fa82315c040248770404c8e139fe040100040100040100040100040101040800a6823403ea30550408000000572d3ccdcd04010104081082f99f72f33fe5040800000000a8ed323204012604261082f99f72f33fe52082f99f72f33fe50a0000000000000004454f530000000005546573743104010004200000000000000000000000000000000000000000000000000000000000000000
4 |
5 | aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906
6 |
7 |
8 | cf057bbfb72640471fd910bcb67639c22df9f92470936cddc1ade0e2f2e7dc4f3d80315cbbf4e2c27fb5000000000100a6823403ea3055000000572d3ccdcd01405d76789a9b315500000000a8ed3232261082f99f72f33fe52082f99f72f33fe5010000000000000004454f5300000000055465737431000000000000000000000000000000000000000000000000000000000000000000
9 | cf057bbfb72640471fd910bcb67639c22df9f92470936cddc1ade0e2f2e7dc4f 3d80315cbbf4e2c27fb5000000000100a6823403ea3055000000572d3ccdcd01405d76789a9b315500000000a8ed3232261082f99f72f33fe52082f99f72f33fe5010000000000000004454f530000000005546573743100 0000000000000000000000000000000000000000000000000000000000000000
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-lynx-provider",
3 | "version": "4.0.7",
4 | "description": "EOS Lynx wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-lynx-ledger-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "tsc -w",
17 | "test": "",
18 | "lint": "tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "eosjs": "^20.0.0"
23 | },
24 | "devDependencies": {
25 | "@babel/plugin-transform-regenerator": "^7.0.0",
26 | "webpack": "^4.25.1"
27 | },
28 | "prettier": {
29 | "singleQuote": true,
30 | "printWidth": 80,
31 | "tabWidth": 2,
32 | "useTabs": false,
33 | "bracketSpacing": true
34 | },
35 | "gitHead": "2540a6a5c87f61e4487d67673a4579bec0ea8feb"
36 | }
37 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/src/typings/bigi/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "bigi";
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/src/typings/eosjs-ecc/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "eosjs-ecc";
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/src/typings/eosjs/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "eosjs";
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "./lib",
4 | "declaration": true,
5 | "declarationDir": "./lib",
6 | "module": "esnext",
7 | "target": "es5",
8 | "lib": ["dom", "es5", "es2015"],
9 | "sourceMap": true,
10 | "jsx": "react",
11 | "forceConsistentCasingInFileNames": true,
12 | "noImplicitReturns": true,
13 | "noImplicitThis": true,
14 | "noImplicitAny": false,
15 | "strictNullChecks": true,
16 | "suppressImplicitAnyIndexErrors": true,
17 | "noUnusedLocals": false,
18 | "allowSyntheticDefaultImports": true,
19 | "esModuleInterop": true,
20 | "moduleResolution": "node",
21 | //"typeRoots": ["./node_modules/@types", "./src/typings"],
22 | //"types": ["eosjs-ecc","eosjs", "bigi"]
23 | },
24 | "files": ["src/index.ts"]
25 | }
26 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-lynx-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: ['.tsx', '.ts', '.js']
23 | },
24 | output: {
25 | filename: 'eos-transit-lynx-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: ['WAL', 'providers', 'lynx'],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin(
33 | {
34 | 'window.WAL': ['eos-transit', 'default']
35 | }
36 | )
37 | ],
38 | externals: 'eosjs',
39 | stats: {
40 | colors: true
41 | }
42 | };
43 |
44 | export default config;
45 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-meetone-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-meetone-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-meetone-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon..
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-meetone-provider",
3 | "version": "4.0.7",
4 | "description": "meetone wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-meetone-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "eosjs": "^20.0.0"
23 | },
24 | "devDependencies": {
25 | "webpack": "^4.25.1",
26 | "webpack-cli": "^3.1.2"
27 | },
28 | "prettier": {
29 | "singleQuote": true,
30 | "printWidth": 80,
31 | "tabWidth": 2,
32 | "useTabs": false,
33 | "bracketSpacing": true
34 | },
35 | "gitHead": "f0552f1b3201cce5dcf998892bd29c2f16f39a39"
36 | }
37 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-meetone-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-meetone-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'meetone' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-metro-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-tokenpocket-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-tokenpocket-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-metro-provider",
3 | "version": "4.0.7",
4 | "description": "Metro wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-metro-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-metro-api": "^1.0.11",
22 | "eos-metro-transport-u2f": "^1.0.12",
23 | "eos-transit": "^4.0.7"
24 | },
25 | "devDependencies": {
26 | "@types/chrome": "0.0.82",
27 | "webpack": "^4.25.1",
28 | "webpack-cli": "^3.1.2"
29 | },
30 | "prettier": {
31 | "singleQuote": true,
32 | "printWidth": 80,
33 | "tabWidth": 2,
34 | "useTabs": false,
35 | "bracketSpacing": true
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-metro-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-tokenpocket-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'tokenpocket' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-portis-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-tokenpocket-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-tokenpocket-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | ## Usage
25 |
26 | Node that this plugin requires a Dappid to initialize. See the last line in the below example.
27 |
28 | ```
29 |
30 | const appName = 'My Dapp';
31 |
32 | const walContext = initDefaultAccessContext({
33 | appName,
34 | network: {
35 | host: 'eos.greymass.com',
36 | port: 443,
37 | protocol: 'https',
38 | chainId: 'aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906'
39 | },
40 |
41 | walletProviders: [
42 | scatter(),
43 | portis({DappId: '0f987db7-f1f6-4ec6-bd8e-XXXXXXXXXX'}) ]
44 | });
45 |
46 | ```
47 |
48 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-portis-provider",
3 | "version": "4.0.7",
4 | "description": "portis wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-portis-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "@portis/eos": "^1.0.0-beta.2",
22 | "eos-transit": "^4.0.7",
23 | "eosjs": "^20.0.0"
24 | },
25 | "devDependencies": {
26 | "webpack": "^4.25.1",
27 | "webpack-cli": "^3.1.2"
28 | },
29 | "prettier": {
30 | "singleQuote": true,
31 | "printWidth": 80,
32 | "tabWidth": 2,
33 | "useTabs": false,
34 | "bracketSpacing": true
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-portis-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-tokenpocket-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'tokenpocket' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-scatter-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-scatter-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-scatter-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-scatter-provider",
3 | "version": "4.0.7",
4 | "description": "Scatter app wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-scatter-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "scatterjs-core": "2.7.18",
23 | "scatterjs-plugin-eosjs2": "1.5.0"
24 | },
25 | "devDependencies": {
26 | "webpack": "^4.25.1",
27 | "webpack-cli": "^3.1.2"
28 | },
29 | "prettier": {
30 | "singleQuote": true,
31 | "printWidth": 80,
32 | "tabWidth": 2,
33 | "useTabs": false,
34 | "bracketSpacing": true
35 | },
36 | "gitHead": "2540a6a5c87f61e4487d67673a4579bec0ea8feb"
37 | }
38 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/src/typings/scatterjs-core.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'scatterjs-core';
2 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/src/typings/scatterjs-plugin-eosjs2.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'scatterjs-plugin-eosjs2';
2 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib",
7 | "typeRoots": ["./node_modules/@types", "./src/typings"]
8 | },
9 | "files": ["src/index.ts"],
10 | "include": ["src/typings/*"]
11 | }
12 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-scatter-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: ['.tsx', '.ts', '.js']
23 | },
24 | output: {
25 | filename: 'eos-transit-scatter-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: ['WAL', 'providers', 'scatter'],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': ['eos-transit', 'default'],
34 | 'window.ScatterJS': ['scatterjs-core', 'default'],
35 | 'window.ScatterEOS': ['scatterjs-plugin-eosjs2', 'default']
36 | })
37 | ],
38 | externals: {
39 | 'eos-transit': 'WAL',
40 | 'scatterjs-core': 'ScatterJS',
41 | 'scatterjs-plugin-eosjs2': 'ScatterEOS'
42 | },
43 | stats: {
44 | colors: true
45 | }
46 | };
47 |
48 | export default config;
49 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-simpleos-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-simpleos-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-simpleos-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-simpleos-provider",
3 | "version": "4.0.7",
4 | "description": "simpleos - a wallet in your browser",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-simpleos-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "eosjs": "^20.0.0"
23 | },
24 | "devDependencies": {
25 | "webpack": "^4.25.1",
26 | "webpack-cli": "^3.1.2"
27 | },
28 | "prettier": {
29 | "singleQuote": true,
30 | "printWidth": 80,
31 | "tabWidth": 2,
32 | "useTabs": false,
33 | "bracketSpacing": true
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-simpleos-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-tokenpocket-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'tokenpocket' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-stub-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-stub-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-stub-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "wal-eos-stub-provider",
3 | "version": "4.0.7",
4 | "description": "Stub wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-stub-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7"
22 | },
23 | "devDependencies": {
24 | "eosjs": "^20.0.0",
25 | "webpack": "^4.25.1",
26 | "webpack-cli": "^3.1.2"
27 | },
28 | "prettier": {
29 | "singleQuote": true,
30 | "printWidth": 80,
31 | "tabWidth": 2,
32 | "useTabs": false,
33 | "bracketSpacing": true
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-stub-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: ['.tsx', '.ts', '.js']
23 | },
24 | output: {
25 | filename: 'eos-transit-stub-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: ['WAL', 'providers', 'stub'],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': ['eos-transit', 'default']
34 | })
35 | ],
36 | externals: {
37 | 'eos-transit': 'WAL'
38 | },
39 | stats: {
40 | colors: true
41 | }
42 | };
43 |
44 | export default config;
45 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-tokenpocket-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-tokenpocket-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-tokenpocket-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-tokenpocket-provider",
3 | "version": "4.0.7",
4 | "description": "TokenPocket wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-tokenpocket-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "eosjs": "^20.0.0"
23 | },
24 | "devDependencies": {
25 | "webpack": "^4.25.1",
26 | "webpack-cli": "^3.1.2"
27 | },
28 | "prettier": {
29 | "singleQuote": true,
30 | "printWidth": 80,
31 | "tabWidth": 2,
32 | "useTabs": false,
33 | "bracketSpacing": true
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-tokenpocket-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-tokenpocket-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'tokenpocket' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/README.md:
--------------------------------------------------------------------------------
1 | # eos-transit-whalevault-provider
2 |
3 | ## Introduction
4 |
5 | This is a plugin which is intended to be used in conjuntion with the EOS Transit API framework.
6 |
7 | Website: https://www.eostransit.com/
8 | EOS Transit, NPM: https://www.npmjs.com/package/eos-transit
9 | EOS Transit, Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit
10 |
11 |
12 | ## Links To This Package
13 |
14 | NPM: https://www.npmjs.com/package/eos-transit-whalevault-provider
15 | Github: https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit-whalevault-provider
16 |
17 | ## Implementation Details
18 |
19 | 👉🏻 **Please see the "Quick Start" and thorough guide in the [`eos-transit` package docs](https://github.com/eosnewyork/eos-transit/tree/master/packages/eos-transit)**
20 |
21 | ## Build Your Own Plugin
22 | To build a plugin for your own signature provider to be included in the Transit API framework, please visit our in-depth tutorial here: https://github.com/eosnewyork/eos-transit/tree/master/plugin-dev/transit-dev-simple
23 |
24 | // We'll be adding plugin specific documentation here soon.
25 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit-whalevault-provider",
3 | "version": "4.0.7",
4 | "description": "WhaleVault wallet provider for eos-transit",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit-whalevault-provider ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack",
16 | "watch": "../../node_modules/typescript/bin/tsc -w",
17 | "test": "",
18 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
19 | },
20 | "dependencies": {
21 | "eos-transit": "^4.0.7",
22 | "eosjs": "^20.0.0"
23 | },
24 | "devDependencies": {
25 | "webpack": "^4.25.1",
26 | "webpack-cli": "^3.1.2"
27 | },
28 | "prettier": {
29 | "singleQuote": true,
30 | "printWidth": 80,
31 | "tabWidth": 2,
32 | "useTabs": false,
33 | "bracketSpacing": true
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit-whalevault-provider/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: [ '.tsx', '.ts', '.js' ]
23 | },
24 | output: {
25 | filename: 'eos-transit-tokenpocket-provider.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: [ 'WAL', 'providers', 'tokenpocket' ],
29 | libraryExport: 'default'
30 | },
31 | plugins: [
32 | new ProvidePlugin({
33 | 'window.WAL': [ 'eos-transit', 'default' ]
34 | })
35 | ],
36 | externals: 'eosjs',
37 | stats: {
38 | colors: true
39 | }
40 | };
41 |
42 | export default config;
43 |
--------------------------------------------------------------------------------
/packages/eos-transit/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # compiled lib and types
7 | /lib
8 |
9 | # minified UMD builds
10 | /umd
11 |
12 | # misc
13 | .DS_Store
14 | .env
15 | .env.local
16 | .env.development.local
17 | .env.test.local
18 | .env.production.local
19 |
20 | npm-debug.log*
21 | yarn-debug.log*
22 | yarn-error.log*
23 | lerna-debug.log*
24 |
--------------------------------------------------------------------------------
/packages/eos-transit/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | src
3 | tsconfig.**
4 | webpack.config.**
5 | *.log
6 |
--------------------------------------------------------------------------------
/packages/eos-transit/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 EOS New York
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/packages/eos-transit/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eos-transit",
3 | "version": "4.0.7",
4 | "description": "Wallet Access Layer for EOS Blockchain Networks",
5 | "license": "UNLICENSED",
6 | "main": "lib/index.js",
7 | "module": "lib/index.js",
8 | "types": "lib",
9 | "scripts": {
10 | "echo": "echo \"================== eos-transit ===================\"",
11 | "installpkg": "yarn echo && npm install",
12 | "clean": "rm -rf lib && rm -rf umd",
13 | "prebuild": "yarn clean",
14 | "build": "../../node_modules/typescript/bin/tsc",
15 | "build-eosjs-bundle": "TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack --config webpack.config.eosjs.ts",
16 | "build-production": "yarn build && TS_NODE_PROJECT=\"tsconfig.webpack.json\" webpack && yarn build-eosjs-bundle",
17 | "watch": "../../node_modules/typescript/bin/tsc -w",
18 | "test": "",
19 | "lint": "../../node_modules/.bin/tslint -c ../../tslint.json -p ./tsconfig.json"
20 | },
21 | "dependencies": {
22 | "@types/uuid": "^7.0.3",
23 | "eosjs": "^20.0.0",
24 | "uuid": "^3.3.2"
25 | },
26 | "devDependencies": {
27 | "babel-core": "6.26.3",
28 | "babel-loader": "7.1.5",
29 | "babel-plugin-transform-runtime": "^6.23.0",
30 | "babel-preset-env": "1.7.0",
31 | "babel-preset-es2015": "6.24.1",
32 | "babel-preset-stage-1": "6.24.1",
33 | "webpack": "^4.25.1",
34 | "webpack-cli": "^3.1.2"
35 | },
36 | "prettier": {
37 | "singleQuote": true,
38 | "printWidth": 80,
39 | "tabWidth": 2,
40 | "useTabs": false,
41 | "bracketSpacing": true
42 | },
43 | "gitHead": "2540a6a5c87f61e4487d67673a4579bec0ea8feb"
44 | }
45 |
--------------------------------------------------------------------------------
/packages/eos-transit/src/index.ts:
--------------------------------------------------------------------------------
1 | import { WalletAccessContext, WalletAccessContextOptions } from './types';
2 | import { initAccessContext } from './walletAccessContext';
3 | import { initWallet } from './wallet';
4 |
5 | export * from './types';
6 | export { initWallet } from './wallet';
7 | export { initAccessContext };
8 |
9 | export let defaultAccessContext: WalletAccessContext;
10 |
11 | export function initDefaultAccessContext(
12 | options: WalletAccessContextOptions
13 | ): WalletAccessContext {
14 | defaultAccessContext = initAccessContext(options);
15 | return defaultAccessContext;
16 | }
17 |
18 | const WAL = {
19 | initDefaultAccessContext,
20 |
21 | get accessContext() {
22 | if (!defaultAccessContext) {
23 | throw new Error(`
24 | No default WalletAccessContext is configured.
25 | Make sure to first run 'initDefaultAccessContext' to set it up.
26 | `);
27 | }
28 |
29 | return defaultAccessContext;
30 | },
31 |
32 | initWallet
33 | };
34 |
35 | export default WAL;
36 |
37 | // force rebuild 2
--------------------------------------------------------------------------------
/packages/eos-transit/src/stateContainer.ts:
--------------------------------------------------------------------------------
1 | import {
2 | StateContainer,
3 | StateUpdater,
4 | StateListener,
5 | StateUnsubscribeFn,
6 | StateUpdaterFn
7 | } from './types';
8 |
9 | export function makeStateContainer(
10 | initialState: TState
11 | ): StateContainer {
12 | let state: TState = initialState;
13 | let listeners: Array> = [];
14 |
15 | return {
16 | getState() {
17 | return state;
18 | },
19 |
20 | updateState(updater: StateUpdater) {
21 | state =
22 | typeof updater === 'function'
23 | ? (updater as StateUpdaterFn)(state)
24 | : updater;
25 | for (const listener of listeners) {
26 | listener(state);
27 | }
28 | },
29 |
30 | subscribe(listenerFn: StateListener): StateUnsubscribeFn {
31 | listeners.push(listenerFn);
32 |
33 | return function unsubscribe() {
34 | listeners = listeners.filter(l => l !== listenerFn);
35 | };
36 | }
37 | };
38 | }
39 |
--------------------------------------------------------------------------------
/packages/eos-transit/src/util.ts:
--------------------------------------------------------------------------------
1 | import { NetworkConfig } from './types';
2 |
3 | export function getNetworkUrl({ protocol, host, port }: NetworkConfig) {
4 | return `${protocol ? protocol : 'http'}://${host}${port ? `:${port}` : ''}`;
5 | }
6 |
7 | export function getErrorMessage(
8 | error: Error | string,
9 | fallbackMessage: string = 'Error'
10 | ) {
11 | if (error) {
12 | return typeof error === 'string' ? error : error.message || fallbackMessage;
13 | }
14 | return fallbackMessage;
15 | }
16 |
--------------------------------------------------------------------------------
/packages/eos-transit/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./lib",
5 | "declaration": true,
6 | "declarationDir": "./lib"
7 | },
8 | "files": ["src/index.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/packages/eos-transit/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/eos-transit/webpack.config.eosjs.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration, ProvidePlugin } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './node_modules/eosjs/dist/index.js',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.js$/,
11 | use: {
12 | loader: 'babel-loader',
13 | options: {
14 | presets: [
15 | 'babel-preset-env',
16 | 'babel-preset-stage-1',
17 | 'babel-preset-es2015'
18 | ]
19 | }
20 | }
21 | }
22 | ]
23 | },
24 | resolve: {
25 | extensions: ['.tsx', '.ts', '.js']
26 | },
27 | output: {
28 | filename: 'eosjs.min.js',
29 | path: path.resolve(__dirname, 'umd'),
30 | libraryTarget: 'umd',
31 | library: 'eosjs'
32 | },
33 | stats: {
34 | colors: true
35 | }
36 | };
37 |
38 | export default config;
39 |
--------------------------------------------------------------------------------
/packages/eos-transit/webpack.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { Configuration } from 'webpack';
3 |
4 | const config: Configuration = {
5 | mode: 'production',
6 | entry: './src/index.ts',
7 | module: {
8 | rules: [
9 | {
10 | test: /\.tsx?$/,
11 | use: {
12 | loader: 'ts-loader',
13 | options: {
14 | configFile: 'tsconfig.webpack.json'
15 | }
16 | },
17 | exclude: /node_modules/
18 | }
19 | ]
20 | },
21 | resolve: {
22 | extensions: ['.tsx', '.ts', '.js']
23 | },
24 | output: {
25 | filename: 'eos-transit.min.js',
26 | path: path.resolve(__dirname, 'umd'),
27 | libraryTarget: 'umd',
28 | library: 'WAL',
29 | libraryExport: 'default'
30 | },
31 | externals: 'eosjs',
32 | stats: {
33 | colors: true
34 | }
35 | };
36 |
37 | export default config;
38 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/.env.local:
--------------------------------------------------------------------------------
1 | PORT=3300
2 | BROWSER=none
3 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # testing
7 | /coverage
8 |
9 | # production
10 | /build
11 |
12 | # misc
13 | .DS_Store
14 | # .env.local
15 | .env.development.local
16 | .env.test.local
17 | .env.production.local
18 |
19 | npm-debug.log*
20 | yarn-debug.log*
21 | yarn-error.log*
22 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 | {
8 | "type": "chrome",
9 | "request": "launch",
10 | "name": "Launch Chrome against localhost",
11 | "url": "http://localhost:3300",
12 | "webRoot": "${workspaceFolder}"
13 | }
14 | ]
15 | }
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/VideoPreview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/plugin-dev/transit-dev-simple/VideoPreview.png
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/images.d.ts:
--------------------------------------------------------------------------------
1 | declare module '*.svg'
2 | declare module '*.png'
3 | declare module '*.jpg'
4 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "transit-dev-simple",
3 | "version": "2.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "react-scripts-ts start",
7 | "build": "react-scripts-ts build",
8 | "test": "react-scripts-ts test --env=jsdom",
9 | "eject": "react-scripts-ts eject"
10 | },
11 | "dependencies": {
12 | "emotion": "^9.2.10",
13 | "eos-transit": "^3.0.0",
14 | "eosjs": "^20.0.0-beta3",
15 | "minireset.css": "^0.0.3",
16 | "react": "^16.5.2",
17 | "react-dom": "^16.5.2",
18 | "react-emotion": "^9.2.10",
19 | "react-icons": "^3.1.0",
20 | "react-onclickoutside": "^6.7.1",
21 | "react-router": "^4.3.1",
22 | "react-router-dom": "^4.3.1",
23 | "react-scripts-ts": "3.1.0"
24 | },
25 | "devDependencies": {
26 | "@types/node": "^10.11.3",
27 | "@types/react": "^16.4.14",
28 | "@types/react-dom": "^16.0.8",
29 | "@types/react-onclickoutside": "^6.0.4",
30 | "@types/react-router": "^4.0.31",
31 | "@types/react-router-dom": "^4.3.1",
32 | "prettier": "^1.14.3",
33 | "tslint": "^5.11.0",
34 | "tslint-config-prettier": "^1.15.0",
35 | "tslint-react": "^3.6.0",
36 | "typescript": "^3.1.3"
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosnewyork/eos-transit/476b9a53e2c6aabffe0009a652d3044a92105920/plugin-dev/transit-dev-simple/public/favicon.ico
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 |
12 |
13 |
22 | WAL:E / React Transfer App Example
23 |
24 |
25 |
28 |
29 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "EOS UAL Example",
3 | "name": "EOS UAL React App Example",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | }
10 | ],
11 | "start_url": "./index.html",
12 | "display": "standalone",
13 | "theme_color": "#000000",
14 | "background_color": "#ffffff"
15 | }
16 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { render } from 'react-dom';
3 | import { BrowserRouter as Router } from 'react-router-dom';
4 | import 'minireset.css';
5 | import './initDefaultAccessContext';
6 | import AppRoutes from './ui/AppRoutes';
7 | import { applyGlobalStyles } from './ui/globalStyles';
8 |
9 | applyGlobalStyles();
10 |
11 | const Root = () => (
12 |
13 |
14 |
15 | );
16 |
17 | render(, document.getElementById('root'));
18 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/initDefaultAccessContext.ts:
--------------------------------------------------------------------------------
1 | import { initDefaultAccessContext } from 'eos-transit';
2 | import myWallet from './mywallet';
3 |
4 | const appName = 'transit-dev-simple';
5 |
6 | const walContext = initDefaultAccessContext({
7 | appName,
8 | network: {
9 | host: 'api.eosnewyork.io',
10 | port: 80,
11 | protocol: 'http',
12 | chainId: 'aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906'
13 | },
14 | walletProviders: [ myWallet() ]
15 | });
16 |
17 | // const walContext = initDefaultAccessContext({
18 | // appName,
19 | // network: {
20 | // host: 'api.pennstation.eosnewyork.io',
21 | // port: 7101,
22 | // protocol: 'https',
23 | // chainId: 'cf057bbfb72640471fd910bcb67639c22df9f92470936cddc1ade0e2f2e7dc4f'
24 | // },
25 | // walletProviders: [ myWallet() ]
26 | // });
27 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/screen/AppLayout.tsx:
--------------------------------------------------------------------------------
1 | import React, { ReactNode } from 'react';
2 | import {
3 | ScreenLayout,
4 | ScreenContentHeader,
5 | ScreenContentBody,
6 | ScreenContentBodyContainer,
7 | ScreenContentHeaderMain
8 | } from '.';
9 | import { LogoLink } from '../ui/LogoLink';
10 |
11 | export interface AppLayoutProps {
12 | children?: ReactNode;
13 | }
14 |
15 | export function AppLayout({ children }: AppLayoutProps) {
16 | return (
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 | {children}
26 |
27 |
28 | );
29 | }
30 |
31 | export default AppLayout;
32 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/screen/ScreenContent.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const ScreenContent = styled('div')({
5 | flex: 1,
6 | display: 'flex',
7 | flexDirection: 'column',
8 | alignItems: 'stretch',
9 | justifyContent: 'stretch'
10 | });
11 |
12 | export const ScreenContentHeader = styled('header')({
13 | display: 'flex',
14 | padding: '25px 30px'
15 | });
16 |
17 | export const ScreenContentHeaderMain = styled('div')({
18 | flex: 1
19 | });
20 |
21 | export interface ScreenContentBodyProps {
22 | flex?: boolean;
23 | }
24 |
25 | export const ScreenContentBody = styled('main')(
26 | {
27 | flex: 1,
28 | margin: '0 auto',
29 | padding: '30px 0'
30 | },
31 | ({ flex }: ScreenContentBodyProps) => ({
32 | display: flex !== false ? 'flex' : 'block'
33 | })
34 | );
35 |
36 | export interface ScreenContentBodyContainerProps {
37 | flex?: boolean;
38 | }
39 |
40 | export const ScreenContentBodyContainer = styled('div')(
41 | {
42 | maxWidth: 480,
43 | width: 480
44 | },
45 | ({ flex }: ScreenContentBodyContainerProps) => ({
46 | display: flex !== false ? 'flex' : 'block',
47 | flexDirection: 'column'
48 | })
49 | );
50 |
51 | export const ScreenContentFooter = styled('footer')({});
52 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/screen/ScreenLayout.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 |
4 | export const ScreenLayout = styled('div')({
5 | width: '100%',
6 | minHeight: '100vh',
7 | display: 'flex',
8 | flexDirection: 'column',
9 | justifyContent: 'stretch'
10 | });
11 |
12 | export default ScreenLayout;
13 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/screen/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ScreenLayout';
2 | export * from './ScreenContent';
3 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/ui/AppRoutes.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Route, Switch } from 'react-router-dom';
3 | import { AppLayout } from '../screen/AppLayout';
4 | import { TestScreen } from '../TestScreen';
5 |
6 | export function AppRoutes() {
7 | return (
8 |
9 |
10 |
11 |
12 |
13 | );
14 | }
15 |
16 | export default AppRoutes;
17 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/ui/LogoLink.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styled from 'react-emotion';
3 | import { NavLink, NavLinkProps } from 'react-router-dom';
4 |
5 | export const LogoLinkRoot = styled(NavLink)({
6 | display: 'flex',
7 | alignItems: 'center',
8 | justifyContent: 'center',
9 | width: 45,
10 | height: 45,
11 | fontSize: 12,
12 | backgroundColor: 'rgba(255, 255, 255, 0.1)',
13 | color: 'white',
14 | textDecoration: 'none',
15 | textTransform: 'uppercase',
16 | borderRadius: '50%',
17 | transition: 'all 0.2s',
18 |
19 | '&:hover': {
20 | backgroundColor: 'rgba(255, 255, 255, 0.25)',
21 | textDecoration: 'none'
22 | }
23 | });
24 |
25 | export function LogoLink(props: NavLinkProps) {
26 | return EOS;
27 | }
28 |
29 | export default LogoLink;
30 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/ui/TestButton.tsx:
--------------------------------------------------------------------------------
1 | import React, { Component, ReactNode, Children } from 'react';
2 | import styled from 'react-emotion';
3 |
4 | // Visual components
5 | // TODO: Extract to `shared`
6 |
7 | const TestButtonRoot = styled('button')({
8 | display: 'flex',
9 | alignItems: 'center',
10 | justifyContent: 'center',
11 | minWidth: 200,
12 | padding: '10px 15px',
13 | color: 'white',
14 | fontSize: 12,
15 | fontWeight: 300,
16 | backgroundColor: '#2e3542',
17 | border: 'none',
18 | outline: 'none',
19 | textTransform: 'uppercase',
20 | borderRadius: 1,
21 | boxShadow: '0 7px 25px -4px rgba(0, 0, 0, 0.4)',
22 | transition: 'all 0.2s, transform 0.1s',
23 |
24 | '& strong': {
25 | fontWeight: 600
26 | },
27 |
28 | '&:hover': {
29 | backgroundColor: '#40495a',
30 | cursor: 'pointer'
31 | },
32 |
33 | '&:active': {
34 | backgroundColor: '#485163',
35 | boxShadow: '0 3px 15px -4px rgba(0, 0, 0, 0.8)',
36 | transform: 'translateY(1px) scale(0.99)'
37 | }
38 | });
39 |
40 | const TestButtonIcon = styled('div')({
41 | width: 24,
42 | height: 24
43 | });
44 |
45 | const TestButtonText = styled('div')({
46 | flex: 1,
47 | padding: '0, 10px',
48 | textAlign: 'center'
49 | });
50 |
51 | const TestButtonAddon = styled('div')(
52 | {
53 | // TODO
54 | }
55 | );
56 |
57 | // Exported component
58 |
59 | export interface TestButtonProps {
60 | children?: ReactNode;
61 | onClick?: (event: any) => void;
62 | }
63 |
64 | export class TestButton extends Component {
65 | render() {
66 | const { onClick } = this.props;
67 |
68 | return (
69 |
70 | {this.props.children}
71 |
72 | );
73 | }
74 | }
75 |
76 | export default TestButton;
77 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/src/ui/globalStyles.ts:
--------------------------------------------------------------------------------
1 | import { injectGlobal } from 'emotion';
2 |
3 | export function applyGlobalStyles() {
4 | return injectGlobal`
5 | body {
6 | margin: 0;
7 | padding: 0;
8 | font-family: 'Helvetica', 'Helvetica Neue', sans-serif;
9 | -webkit-font-smoothing: antialiased;
10 | background-color: #21262f;
11 | color: white;
12 | }
13 |
14 | a {
15 | color: #9c73d7;
16 | }
17 |
18 | a:hover,
19 | a:focus,
20 | a:active {
21 | color: white;
22 | }
23 | `;
24 | }
25 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "baseUrl": "./src",
4 | "outDir": "./build",
5 | "module": "esnext",
6 | "target": "es5",
7 | "lib": ["dom", "es2017"],
8 | "sourceMap": true,
9 | "allowJs": true,
10 | "jsx": "react",
11 | "moduleResolution": "node",
12 | "rootDir": "src",
13 | "forceConsistentCasingInFileNames": true,
14 | "noImplicitReturns": true,
15 | "noImplicitThis": true,
16 | "noImplicitAny": true,
17 | "strictNullChecks": true,
18 | "suppressImplicitAnyIndexErrors": true,
19 | "noUnusedLocals": false,
20 | "allowSyntheticDefaultImports": true
21 | },
22 | "exclude": [
23 | "node_modules",
24 | "build",
25 | "scripts",
26 | "acceptance-tests",
27 | "webpack",
28 | "jest",
29 | "src/setupTests.ts"
30 | ]
31 | }
32 |
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/tsconfig.prod.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json"
3 | }
--------------------------------------------------------------------------------
/plugin-dev/transit-dev-simple/tsconfig.test.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs"
5 | }
6 | }
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "lib": ["dom", "es5", "es2015"],
5 | "sourceMap": true,
6 | "jsx": "react",
7 | "forceConsistentCasingInFileNames": true,
8 | "noImplicitReturns": true,
9 | "noImplicitThis": true,
10 | "noImplicitAny": true,
11 | "strictNullChecks": true,
12 | "suppressImplicitAnyIndexErrors": true,
13 | "noUnusedLocals": false,
14 | "allowSyntheticDefaultImports": true,
15 | "esModuleInterop": true,
16 | "moduleResolution": "node"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es5",
6 | "esModuleInterop": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------