Skip to content

Commit

Permalink
Merge branch 'develop' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
rynomster committed Oct 25, 2017
2 parents 1e876ce + 24d4ad4 commit d8aa79a
Show file tree
Hide file tree
Showing 135 changed files with 3,858 additions and 2,582 deletions.
4 changes: 2 additions & 2 deletions .angular-cli.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@
"testTsconfig": "tsconfig.spec.json",
"prefix": "app",
"styles": [
"../node_modules/bootstrap/dist/css/bootstrap.min.css",
"../node_modules/font-awesome/css/font-awesome.min.css",
"../node_modules/open-sans-all/css/open-sans.min.css",
"styles.scss"
"styles.scss",
"assets/theme.scss"
],
"scripts": [
],
Expand Down
8 changes: 8 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,11 @@ trim_trailing_whitespace = true
[*.md]
max_line_length = off
trim_trailing_whitespace = false


[*.scss]
charset = utf-8
indent_style = space
indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = true
6 changes: 1 addition & 5 deletions main.js
Original file line number Diff line number Diff line change
Expand Up @@ -172,11 +172,7 @@ function makeTray() {
// Set the tray icon
tray.setToolTip('Particl ' + app.getVersion());
tray.setContextMenu(contextMenu)

// Always show window when tray icon clicked
tray.on('click',function() {
mainWindow.show()
});

return trayImage;
}

Expand Down
26 changes: 22 additions & 4 deletions modules/rpc/daemon.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ function init(callback) {
function startDaemon(restart, callback) {
if (restart && daemon) {
if (daemon.exitCode !== 0) {
setTimeout(() => startDaemon(restart, callback), 100);
return;
setTimeout(() => startDaemon(restart, callback), 200);
return false;
}
}

Expand All @@ -40,22 +40,40 @@ function startDaemon(restart, callback) {
waitForDaemon(callback);
}
}).catch(error => log.error(error));

return true;
}

function waitForDaemon(callback) {
const maxRetries = 10; // Some slow computers...
let retries = 0;
let errorString = '';
const daemonStartup = () => {
rpc.checkDaemon(options)
.then(callback)
.catch(() => retries < maxRetries && setTimeout(daemonStartup, 1000));
.catch(() => !daemon.exitCode && retries < maxRetries && setTimeout(daemonStartup, 1000));
retries++;

if (daemon.exitCode || retries >= maxRetries) {
console.log(daemon.exitCode, retries);
// Rebuild block and transaction indexes
if (errorString.includes('-reindex')) {
log.info('Corrupted block database detected, '
+ 'restarting the daemon with the -reindex flag.');
process.argv.push('-reindex');
daemon.exitCode = 0; // Hack a bit here...
// We don't want it to exit at this stage if start was called..
// it will probably error again if it has to.
if(startDaemon(true, callback)) {
return;
}
}
electron.app.exit(991);
}
}
if (daemon && !daemon.exitCode) {
daemon.stderr.on('data', data => {
errorString = data.toString('utf8');
});
setTimeout(daemonStartup, 1000);
}
}
Expand Down
4 changes: 2 additions & 2 deletions modules/rpc/rpc.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const rxIpc = require('rx-ipc-electron/lib/main').default;
const cookie = require('./cookie');
const daemon = require('./daemon');

let TIMEOUT = 10000;
let TIMEOUT = 15000;
let HOSTNAME;
let PORT;
let rpcOptions;
Expand Down Expand Up @@ -122,7 +122,7 @@ function init(options) {
function checkDaemon(options) {
return new Promise((resolve, reject) => {
const _timeout = TIMEOUT;
TIMEOUT = 200;
TIMEOUT = 150;
rpcCall(
'getnetworkinfo', null, cookie.getAuth(options), (error, response) => {
rxIpc.removeListeners();
Expand Down
7 changes: 7 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -82,11 +82,14 @@
},
"dependencies": {
"@angular/animations": "^4.4.6",
"@angular/cdk": "2.0.0-beta.9",
"@angular/common": "^4.4.6",
"@angular/compiler": "^4.4.6",
"@angular/core": "^4.4.6",
"@angular/flex-layout": "^2.0.0-beta.9",
"@angular/forms": "^4.4.6",
"@angular/http": "^4.4.6",
"@angular/material": "2.0.0-beta.9",
"@angular/platform-browser": "^4.4.6",
"@angular/platform-browser-dynamic": "^4.4.6",
"@angular/router": "^4.4.6",
Expand All @@ -98,7 +101,11 @@
"electron-log": "^2.2.10",
"font-awesome": "^4.7.0",
"got": "^7.1.0",
"hammerjs": "^2.0.8",
"lodash": "^4.17.4",
"lodash.get": "^4.4.2",
"lodash.isempty": "^4.4.0",
"lodash.values": "^4.3.0",
"ng2-logger": "^1.0.3",
"ngx-bootstrap": "^1.8.0",
"ngx-clipboard": "^8.0.3",
Expand Down
2 changes: 2 additions & 0 deletions src/app/app.component.controls.scss
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
@import "./src/assets/_config"; // import shared colors etc.

:host /deep/ {
button.control {
border: 0;
Expand Down
189 changes: 106 additions & 83 deletions src/app/app.component.html
Original file line number Diff line number Diff line change
@@ -1,91 +1,114 @@
<sidebar-container>
<md-sidenav-container fullscreen>
<md-sidenav #sidenav mode="side" opened="true">

<sidebar position="left" [isDocked]="true" [isPinned]="true" [isOpen]="true"
(mouseenter)="!window.isXS && !sidebarLeft.isOpen && sidebarLeft.toggleOpen(true)"
(mouseleave)="!window.isXS && !sidebarLeft.isPinned && sidebarLeft.toggleOpen(false)"
#sidebarLeft>

<div class="header">
<span *ngIf="!window.isXS" class="toggle-pinned fa"
[ngClass]="{'fa-dot-circle-o': sidebarLeft.isPinned, 'fa-circle': !sidebarLeft.isPinned}"
(click)="sidebarLeft.togglePinned()">
</span>
<md-toolbar class="logo-area">
<span class="logo"></span>
</div>
<hr>
<accordion class="menu">
<accordion-group [isCollapsed]="false">
<a class="item" routerLinkActive="active" routerLink="/overview">
<span class="icon nc-icon nc-grid-48"></span>
Overview
</a>
</accordion-group>
<accordion-group #walletGroup [isCollapsed]="false">
<accordion-heading>
<a class="category" href="javascript:void(0)" (click)="walletGroup.toggleCollapse()">
Wallet
<span class="icon fa fa-chevron-down" [class.collapsed]="walletGroup.isCollapsed"></span>
</a>
</accordion-heading>
<hr>
<a class="item" routerLinkActive="active" routerLink="/wallet/receive">
<span class="icon nc-icon nc-simple-right"></span>
Receive
</a>
<a class="item" routerLinkActive="active" routerLink="/wallet/send">
<span class="icon nc-icon nc-simple-left"></span>
Send
</a>
<a class="item" routerLinkActive="active" routerLink="/wallet/history">
<span class="icon nc-icon nc-time-3"></span>
History
</a>
<a class="item" routerLinkActive="active" routerLink="/wallet/address-book">
<span class="icon nc-icon nc-multiple-19"></span>
Address Book
</a>
<a class="item" href="javascript:void(0)" (click)="createWallet()">
<span class="icon nc-icon nc-card-add"></span>
Add account
</a>
</accordion-group>
<!--accordion-group #settingsGroup [isCollapsed]="false">
<accordion-heading>
<a class="category" href="javascript:void(0)" (click)="settingsGroup.toggleCollapse()">
Settings
<span class="icon fa fa-chevron-down" [class.collapsed]="settingsGroup.isCollapsed"></span>
</a>
</accordion-heading>
<hr>
<a class="item" routerLinkActive="active" routerLink="/settings">
<span class="icon nc-icon nc-icon nc-preferences"></span>
Settings
</md-toolbar>

<md-divider></md-divider>

<md-content layout-padding>
<md-list class="sidesubmenu">
<a routerLinkActive="active" routerLink="/overview">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-grid-48"></md-icon>
<span class="menu-item">Overview</span>
</md-list-item>
</a>
</accordion-group>
<div>
<span><button (click)="firsttime()">firsttime</button></span>
<span><button (click)="syncing()">syncing</button></span>
<span><button (click)="unlock()">unlock</button></span>
</div-->
</accordion>
</sidebar>
</md-list>
</md-content>

<sidebar position="right" [isPinned]="true" #sidebarRight></sidebar>
<md-content layout-padding>
<md-accordion displayMode="flat" [multi]="'multi'" class="md-expansion-menu">
<md-expansion-panel #panel1 expanded="true">
<md-expansion-panel-header>Wallet</md-expansion-panel-header>

<sidebar position="top" [isDocked]="true" class="pinned-left" #sidebarTop>
<div class="header pull-left">
<span *ngIf="window.isXS" class="toggle-menu icon fa fa-bars fa-2x"
(click)="sidebarLeft.toggleOpen(); sidebarLeft.togglePinned(sidebarLeft.isOpen)">
</span>
<strong>{{ title }}</strong>
</div>
<div class="header pull-right">
<app-status></app-status>
<md-content layout-padding class="submenuarea">
<md-list class="sidesubmenu">
<a routerLinkActive="active" [routerLink]="walletInitialized ? '/wallet/receive' : null">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-simple-right"></md-icon>
<span class="menu-item">Receive</span>
</md-list-item>
</a>
<a routerLinkActive="active" [routerLink]="walletInitialized ? '/wallet/send' : null">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-simple-left"></md-icon>
<span class="menu-item">Send</span>
</md-list-item>
</a>
<a routerLinkActive="active" [routerLink]="walletInitialized ? '/wallet/history' : null">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-time-3"></md-icon>
<span class="menu-item">History</span>
</md-list-item>
</a>
<a routerLinkActive="active" [routerLink]="walletInitialized ? '/wallet/address-book' : null">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-multiple-19"></md-icon>
<span class="menu-item">Address Book</span>
</md-list-item>
</a>
<a routerLinkActive="active" href="javascript:void(0)" (click)="createWallet()">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-card-add" ></md-icon>
<span class="menu-item">Add Acount</span>
</md-list-item>
</a>
</md-list>
</md-content>
</md-expansion-panel>
</md-accordion>
</md-content>

<md-content layout-padding>
<md-accordion displayMode="flat" [multi]="'multi'" class="md-expansion-menu">
<md-expansion-panel #panel1 expanded="true">
<md-expansion-panel-header>Settings</md-expansion-panel-header>

<md-content layout-padding class="submenuarea">
<md-list class="sidesubmenu">
<a routerLinkActive="active" [routerLink]="walletInitialized ? '/settings' : null">
<md-list-item>
<md-icon fontSet="ncIcon" fontIcon="nc-grid-48"></md-icon>
<span class="menu-item">Settings</span>
</md-list-item>
</a>
</md-list>
</md-content>
</md-expansion-panel>
</md-accordion>
</md-content>

<md-content layout-padding *ngIf="!!daemonError || !!walletError">
<md-list class="sidesubmenu">
<md-list-item *ngIf="daemonError">
<md-icon>error</md-icon>
{{daemonError}}
</md-list-item>
<md-list-item *ngIf="walletError">
<md-icon>error</md-icon>
{{walletError}}
</md-list-item>
</md-list>
</md-content>

</md-sidenav>

<md-toolbar class="header-main">
<button fxLayout="row" fxLayoutAlign="center end" md-button (click)="sidenav.toggle()" fxHide.lg>
<md-icon>menu</md-icon>
</button>
{{ title }}
<div class="containerX">
<div fxLayout="row" fxFlex fxLayoutAlign="end center" fxcolor="accent" class="header-icons">
<app-status></app-status>
</div>
</div>
</sidebar>
</md-toolbar>

<sidebar position="bottom" #sidebarBottom></sidebar>
<div class="margin-left-right-50">
<router-outlet></router-outlet>
</div>

<router-outlet></router-outlet>
<app-modals></app-modals>
</sidebar-container>
</md-sidenav-container>
Loading

0 comments on commit d8aa79a

Please sign in to comment.