Merge pull request #5797 from ajp8164/feat/intel-tee
Baseline Intel TEE support
This commit is contained in:
commit
803a9ca365
27 changed files with 635 additions and 102 deletions
|
|
@ -16,7 +16,7 @@
|
|||
<span translate>File/Text</span>
|
||||
</div>
|
||||
<div class="col" ng-click="hardware = true; phrase = file = false" ng-style="hardware &&
|
||||
{'border-bottom-style': 'solid'}" ng-show="isCopay && (isChromeApp || isDevel)">
|
||||
{'border-bottom-style': 'solid'}" ng-show="isCopay && (supportsLedger || supportsTrezor)">
|
||||
<span translate>Hardware wallet</span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -6,8 +6,9 @@
|
|||
<img style="height:0.6em; margin-right: 1px;" ng-show="wallet.network != 'livenet'" src="img/icon-testnet-white.svg">
|
||||
<img style="height:0.6em; margin-right: 1px;" ng-show="!wallet.canSign() && !wallet.isPrivKeyExternal()" src="img/icon-read-only-white.svg">
|
||||
|
||||
<img style="height:0.6em; margin-right: 1px;" ng-show="wallet.getPrivKeyExternalSourceName() == 'trezor'" src="img/icon-trezor-white.svg">
|
||||
<img style="height:0.6em; margin-right: 1px;" ng-show="wallet.getPrivKeyExternalSourceName() == 'ledger'" src="img/icon-ledger-white.svg">
|
||||
<img style="height:0.6em; margin-right: 1px;" ng-show="wallet.getPrivKeyExternalSourceName() == 'trezor'" src="img/icon-trezor-white.svg">
|
||||
<img style="height:0.6em; margin-right: 1px;" ng-show="wallet.getPrivKeyExternalSourceName() == 'ledger'" src="img/icon-ledger-white.svg">
|
||||
<img style="height:0.6em; margin-right: 1px;" ng-show="wallet.getPrivKeyExternalSourceName() == 'intelTEE'" src="img/icon-inteltee-white.svg">
|
||||
<span ng-show="wallet.credentials.n > 1" class="size-12"><span translate>{{wallet.m}}-of-{{wallet.n}}</span></span>
|
||||
<span class="size-12 dib" style="height:0.6em; margin-right: 1px;" ng-show="wallet.credentials.account">#{{wallet.credentials.account || 0}} </span>
|
||||
|
||||
|
|
|
|||
|
|
@ -18,12 +18,6 @@
|
|||
</span>
|
||||
<i class="icon bp-arrow-right"></i>
|
||||
</a>
|
||||
<a class="item" ng-show="wallet.isPrivKeyExternal()">
|
||||
<span translate>Hardware Wallet</span>
|
||||
<span class="item-note">
|
||||
{{externalSource}}
|
||||
</span>
|
||||
</a>
|
||||
<a class="item item-icon-right" ui-sref="tabs.preferences.preferencesColor">
|
||||
<span translate>Color</span>
|
||||
<span class="item-note">
|
||||
|
|
@ -38,7 +32,7 @@
|
|||
<span class="toggle-label" translate>Hide Balance</span>
|
||||
</ion-toggle>
|
||||
|
||||
<div class="item item-divider" translate>
|
||||
<div class="item item-divider" ng-hide="wallet.isPrivKeyExternal() || !wallet.canSign()" translate>
|
||||
Security
|
||||
</div>
|
||||
<a class="item item-icon-right" ui-sref="tabs.preferences.backupWarning({from: 'tabs.preferences'})" ng-hide="wallet.isPrivKeyExternal()">
|
||||
|
|
|
|||
41
www/views/preferencesExternal.html
Normal file
41
www/views/preferencesExternal.html
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
<ion-view class="settings">
|
||||
<ion-nav-bar class="bar-royal">
|
||||
<ion-nav-title>{{externalSource.longName}}</ion-nav-title>
|
||||
<ion-nav-back-button>
|
||||
</ion-nav-back-button>
|
||||
</ion-nav-bar>
|
||||
<ion-content>
|
||||
<div ng-include="'views/includes/walletItem.html'"></div>
|
||||
|
||||
<div ng-if="!externalSource.isEmbeddedHardware">
|
||||
<div ng-if="!hardwareConnected" class="info centered">
|
||||
<span translate>No hardware information available.</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="externalSource.isEmbeddedHardware">
|
||||
<div ng-if="!hardwareConnected" class="warning centered">
|
||||
<span translate>Hardware not connected.</span><br>
|
||||
<span translate>Check installation and retry.</span>
|
||||
</div>
|
||||
|
||||
<div ng-if="hardwareConnected">
|
||||
<div class="list">
|
||||
<div class="item">
|
||||
<span translate>Version</span>
|
||||
<span class="item-note">
|
||||
{{externalSource.version || 'hardware disconnected'}}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="padding">
|
||||
<button class="button button-standard button-assertive" ng-click="showMneumonicFromHardwarePopup()">
|
||||
{{'Show Recovery Phrase'|translate}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</ion-content>
|
||||
</ion-view>
|
||||
|
|
@ -43,12 +43,19 @@
|
|||
{{derivationStrategy}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="item" ng-show="wallet.isPrivKeyExternal()">
|
||||
<div class="item" ng-show="wallet.isPrivKeyExternal() && !externalSource.isEmbeddedHardware">
|
||||
<span translate>Hardware Wallet</span>
|
||||
<span class="item-note">
|
||||
{{wallet.getPrivKeyExternalSourceName()}}
|
||||
{{externalSource}}
|
||||
</span>
|
||||
</div>
|
||||
<a class="item item-icon-right" href ui-sref="tabs.preferences.preferencesExternal" ng-show="wallet.isPrivKeyExternal() && externalSource.isEmbeddedHardware">
|
||||
<span translate>Hardware Wallet</span>
|
||||
<span class="item-note">
|
||||
{{externalSource}}
|
||||
</span>
|
||||
<i class="icon bp-arrow-right"></i>
|
||||
</a>
|
||||
<div class="item" ng-show="!wallet.isPrivKeyExternal() && !wallet.canSign()">
|
||||
<span translate></span>
|
||||
<span class="item-note">
|
||||
|
|
|
|||
|
|
@ -90,7 +90,7 @@
|
|||
ng-model="formData.derivationPath">
|
||||
</label>
|
||||
|
||||
<ion-toggle ng-show="seedSource.id == 'new'" ng-model="formData.testnetEnabled" toggle-class="toggle-positive">
|
||||
<ion-toggle ng-show="seedSource.supportsTestnet" ng-model="formData.testnetEnabled" toggle-class="toggle-positive">
|
||||
<span translate>Testnet</span>
|
||||
</ion-toggle>
|
||||
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@
|
|||
ng-model="formData.derivationPath">
|
||||
</label>
|
||||
|
||||
<ion-toggle ng-show="seedSource.id == 'new'" ng-model="formData.testnetEnabled" toggle-class="toggle-positive">
|
||||
<ion-toggle ng-show="seedSource.supportsTestnet" ng-model="formData.testnetEnabled" toggle-class="toggle-positive">
|
||||
Testnet
|
||||
</ion-toggle>
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<select ng-model="formData.seedSource" ng-options="seed as seed.label for seed in seedOptions"></select>
|
||||
</label>
|
||||
|
||||
<label class="item item-input item-stacked-label" ng-show="formData.seedSource.id == 'trezor' || formData.seedSource.id == 'ledger'">
|
||||
<label class="item item-input item-stacked-label" ng-show="formData.seedSource.id == 'trezor' || formData.seedSource.id == 'ledger' || formData.seedSource.id == 'intelTee'">
|
||||
<span class="input-label" translate>Account Number</span>
|
||||
<input type="number" ng-model="formData.account" ignore-mouse-wheel>
|
||||
</label>
|
||||
|
|
|
|||
|
|
@ -53,6 +53,11 @@
|
|||
</div>
|
||||
<div class="row qr">
|
||||
<div class="text-center col center-block" copy-to-clipboard="addr" ng-repeat="wallet in wallets track by $index" ng-class="walletPosition($index)">
|
||||
<span class="overlay" ng-show="shouldShowReceiveAddressFromHardware()">
|
||||
<button class="button button-standard button-primary" ng-click="showReceiveAddressFromHardware()">
|
||||
<span translate>Show address</span>
|
||||
</button>
|
||||
</span>
|
||||
<qrcode ng-if="walletAddrs[wallet.id]" size="220" data="bitcoin:{{walletAddrs[wallet.id]}}" color="#334"></qrcode>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue