<commit_before><!--
/******************************************************************************
* Copyright © 2016 The Waves Developers.                                     *
*                                                                            *
* See the LICENSE file at                                                    *
* the top-level directory of this distribution for the individual copyright  *
* holder information and the developer policies on copyright and licensing.  *
*                                                                            *
* Unless otherwise agreed in a custom licensing agreement, no part of the    *
* Waves software, including this file may be copied, modified, propagated    *
* or distributed except according to the terms contained in the LICENSE file *
*                                                                            *
* Removal or modification of this copyright notice is prohibited.            *
*                                                                            *
******************************************************************************/
-->

<!doctype html>
<html ng-app="app" ng-csp>
<head>
    <meta charset="utf-8">
    <title>Waves Lite Client</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- CSS BEGIN -->
    <link rel="stylesheet" href="../bower_components/angular/angular-csp.css">
    <link rel="stylesheet" href="../bower_components/angular-material/angular-material.css">
    <link rel="stylesheet" href="css/jquery.modal.css">
    <link rel="stylesheet" href="css/jquery.growl.css">
    <link rel="stylesheet" href="css/tooltipster.min.css">
    <link rel="stylesheet" href="css/style.css">
    <!-- CSS END -->
	<link href="img/favicon.ico" type="image/x-icon" rel="shortcut icon"/>
</head>

<body ng-controller="homeController as home" ng-switch on="home.screen">

<!-- LOADER -->
    <div ng-controller="splashController as splash" id="bg-spin" class="noSelect" ng-show="home.screen === 'splash-screen'">
        <div id="logo-container-centered" class="centerIt">
            <div id="logoo">
                <img id="logo-spin" src="img/logo-spin.svg" />
                <p id="networkCheck">Loading...</p>
            </div>
        </div>
    </div>

    <!-- LOG IN AREA -->
    <div id="lockscreen" class="userBG" ng-controller="accountsController as accounts" ng-switch-when="accounts-screen" ng-cloak>
        <table id="lockscreenTable">

            <thead>
            <div id="logoNversion">
                <img src="img/topleftlogo.svg" />
                <p ng-class='{testnet: isTestnet()}'>{{::home.title}} <span class="wlcversion">{{::home.version}}</span></p>
            </div>
            </thead>

            <tbody>
            <tr>
                <td>
                    <!-- Accounts -->
                    <div id="accounts">
                        <h2 id="AccHeader">{{accounts.caption}}</h2>
                        <div class="wavesAccounts" ng-controller="accountListController as list" ng-show="accounts.mode === 'list'">
                            <p class="loginAccountDiv" ng-repeat="account in list.accounts track by account.address">
                                    <span class="loginAccount fade" tooltipster tooltip-theme="tooltipster-theme1" title="Log into this account." ng-click="list.signIn(account)"> <br/>
                                        <b>{{::account.name}}</b> <span class="divider-1"></span> <small>{{::account.address}}</small>
                                    </span>
                                <span class="clipSpan" tooltipster tooltip-theme="tooltipster-theme1" ngclipboard title="Copy this address to the clipboard." data-clipboard-text="{{::account.address}}" ngclipboard-success="clipboardOk()"></span>
                                <span class="divider-1"></span>
                                <button class="removeAccount wButtonAlt fade" tooltipster tooltip-theme="tooltipster-theme1" title="Remove this account from the list." ng-click="list.showRemoveWarning(account)">
                                    <span class="wButton-icon"><img src="img/wIcon_x.svg"></span>REMOVE
                                </button>
                            </p>

                            <button id="import_account" class="wButton fade" tooltipster tooltip-theme="tooltipster-theme1" title="Click here to import an existing account." ng-click="list.importAccount()">IMPORT ACCOUNT</button>
                            <span class="divider-1"></span>
                            <button id="create_account" class="wButton fade" tooltipster tooltip-theme="tooltipster-theme1" title="Click here to create a brand new account." ng-click="list.createAccount()">NEW ACCOUNT</button>
                            <br/>

                            <!-- Remove Account popup -->
                            <div id="account-remove-popup" waves-dialog on-dialog-ok="list.removeAccount()" is-error="true" ok-button-caption="REMOVE">
                                <h2 class="sectionHeader">REMOVE ACCOUNT <span id="removeAccountSpan"></span> - NOTICE</h2>
                                <p class="dialog-text">This feature completely removes the account from this device.</p>
                                <p class="dialog-text">The account will not be eliminated or destroyed, but instead will not be shown anymore in the Accounts List at the client startup.</p>
                                <p class="dialog-text">You can always re-generate your account on this device again using the Import Account feature and entering the SEED when prompted.</p>
                                <p class="dialog-text">Click on the REMOVE button to proceed with the account removal, or CANCEL to return to the previous screen.</p>
                            </div>
                        </div>

                        <!-- Seed input -->
                        <div id="create-seed" ng-controller="accountSeedController as vm" ng-show="accounts.mode === 'create-seed'">
                            <form id="account-seed-form" name="accountSeedForm" ng-submit="vm.checkSeedAndRegister(accountSeedForm)" novalidate ng-validate="vm.validationOptions">

                                <button id="generateRandomSeed" class="wButton fade" ng-click="vm.generateSeed()" type="button">GENERATE NEW SEED</button>
                                <br/><br/>
                                <div class="form-field">
                                <label for="walletSeed">WALLET SEED</label>
                                    <br/>
                                    <textarea id="walletSeed" rows="3" name="walletSeed" class="wInput" focus-me="accounts.mode === 'create-seed'" ng-model="vm.seed" ng-change="vm.refreshAddress()" ng-model-options="{ debounce: 750 }" ng-trim="false"></textarea>
                                    <span class="clipSpan" tooltipster tooltip-theme="tooltipster-theme1" title="Copy the seed to the clipboard." data-clipboard-target="#walletSeed" data-clipboard-message-success="Wallet seed has been successfully copied to clipboard" ></span>
                                    <br/>
                                </div>
                                <br/>

                                <div class="wPop-content">
                                    <div>ADDRESS
                                        <br/>
                                        <span>{{vm.displayAddress}}</span>
                                    </div>
                                </div>
                                <button class="wButton fade" type="submit">REGISTER ACCOUNT</button>
                                <span class="divider-2"></span>
                                <button class="wButton fade" type="reset" ng-click="vm.back()">BACK</button>

                                <div id="seed-whitespace-popup" waves-dialog on-dialog-ok="vm.registerAccount()" closeable="false" ok-button-caption="PROCEED">
                                    <h2 class="sectionHeader">SEED NOTICE</h2>
                                    <p class="dialog-text">Your wallet seed contains one or more trailing whitespace characters.</p>
                                    <p class="dialog-text">A seed with a whitespace at the end and a seed without one are different, and will result in different addresses generated.</p>
                                    <p class="dialog-text">It is strongly recommended that you avoid trailing whitespaces in the seed. If you understand the implications of including a trailing whitespace
                                        in your seed, press <b>PROCEED</b>. Press <b>CANCEL</b> or close the dialog box to edit your seed.<br/></p>
                                </div>
                            </form>
                        </div>

                        <div id="login-wPop-new" waves-dialog ok-button-caption="I UNDERSTAND" on-dialog-ok="" cancel-button-visible="false" closeable="false">
                            <h2 class="sectionHeader">NEW ACCOUNT - NOTICE</h2>
                            <p class="dialog-text">This feature involves the creation of a new account on Waves platform.</p>
                            <p class="dialog-text">The procedure consists of complex cryptographic operations that use a <b>SEED</b> (a series of random words) to create a unique address for your account.</p>
                            <p class="dialog-text">This SEED is extremely important and must be kept in safe place, since it's the only way to recover your account in case of lost, corrupted data or hardware failure.</p>
                            <p class="dialog-text">Your SEED will also allow you to IMPORT your account to other devices.
                            <br/><br/>
                            <i>NOTE: Make sure that you select the entire SEED length before keeping it. It's suggested to use the copy-to-clipboard button located the right side of the SEED box.</i></p>
                        </div>

                        <!-- store account on the current device -->
                        <div id="register" ng-controller="accountRegisterController as vm" ng-show="accounts.mode === 'register'">
                            <form id="register-form" name="registerForm" novalidate ng-submit="vm.saveAccountAndSignIn(registerForm)" ng-validate="vm.validationOptions">
                                <div class="wPop-content">
                                    <label for="readonlySeed">WALLET SEED</label>
                                    <br/>
                                    <textarea id="readonlySeed" rows="3" class="wInput" ng-model="vm.seed" ng-model-options="{ getterSetter: true }" readonly></textarea>
                                    <br/><br/>
                                    <div>ADDRESS
                                        <br/>
                                        <span>{{accounts.displayAddress}}</span>
                                    </div>
                                    <br/>

                                    <div class="form-field">
                                        <label for="walletName">
                                        NAME<span class="infoSpan" tooltipster tooltip-theme="tooltipster-theme1" tooltip-html title="It is possible to assign a name to your account(s)
                                                <br/>
                                                in order to make them more memorable, feel
                                                <br/><commit_msg>Added a safety warning to the account creation notice<commit_after><!--
/******************************************************************************
* Copyright © 2016 The Waves Developers.                                     *
*                                                                            *
* See the LICENSE file at                                                    *
* the top-level directory of this distribution for the individual copyright  *
* holder information and the developer policies on copyright and licensing.  *
*                                                                            *
* Unless otherwise agreed in a custom licensing agreement, no part of the    *
* Waves software, including this file may be copied, modified, propagated    *
* or distributed except according to the terms contained in the LICENSE file *
*                                                                            *
* Removal or modification of this copyright notice is prohibited.            *
*                                                                            *
******************************************************************************/
-->

<!doctype html>
<html ng-app="app" ng-csp>
<head>
    <meta charset="utf-8">
    <title>Waves Lite Client</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- CSS BEGIN -->
    <link rel="stylesheet" href="../bower_components/angular/angular-csp.css">
    <link rel="stylesheet" href="../bower_components/angular-material/angular-material.css">
    <link rel="stylesheet" href="css/jquery.modal.css">
    <link rel="stylesheet" href="css/jquery.growl.css">
    <link rel="stylesheet" href="css/tooltipster.min.css">
    <link rel="stylesheet" href="css/style.css">
    <!-- CSS END -->
	<link href="img/favicon.ico" type="image/x-icon" rel="shortcut icon"/>
</head>

<body ng-controller="homeController as home" ng-switch on="home.screen">

<!-- LOADER -->
    <div ng-controller="splashController as splash" id="bg-spin" class="noSelect" ng-show="home.screen === 'splash-screen'">
        <div id="logo-container-centered" class="centerIt">
            <div id="logoo">
                <img id="logo-spin" src="img/logo-spin.svg" />
                <p id="networkCheck">Loading...</p>
            </div>
        </div>
    </div>

    <!-- LOG IN AREA -->
    <div id="lockscreen" class="userBG" ng-controller="accountsController as accounts" ng-switch-when="accounts-screen" ng-cloak>
        <table id="lockscreenTable">

            <thead>
            <div id="logoNversion">
                <img src="img/topleftlogo.svg" />
                <p ng-class='{testnet: isTestnet()}'>{{::home.title}} <span class="wlcversion">{{::home.version}}</span></p>
            </div>
            </thead>

            <tbody>
            <tr>
                <td>
                    <!-- Accounts -->
                    <div id="accounts">
                        <h2 id="AccHeader">{{accounts.caption}}</h2>
                        <div class="wavesAccounts" ng-controller="accountListController as list" ng-show="accounts.mode === 'list'">
                            <p class="loginAccountDiv" ng-repeat="account in list.accounts track by account.address">
                                    <span class="loginAccount fade" tooltipster tooltip-theme="tooltipster-theme1" title="Log into this account." ng-click="list.signIn(account)"> <br/>
                                        <b>{{::account.name}}</b> <span class="divider-1"></span> <small>{{::account.address}}</small>
                                    </span>
                                <span class="clipSpan" tooltipster tooltip-theme="tooltipster-theme1" ngclipboard title="Copy this address to the clipboard." data-clipboard-text="{{::account.address}}" ngclipboard-success="clipboardOk()"></span>
                                <span class="divider-1"></span>
                                <button class="removeAccount wButtonAlt fade" tooltipster tooltip-theme="tooltipster-theme1" title="Remove this account from the list." ng-click="list.showRemoveWarning(account)">
                                    <span class="wButton-icon"><img src="img/wIcon_x.svg"></span>REMOVE
                                </button>
                            </p>

                            <button id="import_account" class="wButton fade" tooltipster tooltip-theme="tooltipster-theme1" title="Click here to import an existing account." ng-click="list.importAccount()">IMPORT ACCOUNT</button>
                            <span class="divider-1"></span>
                            <button id="create_account" class="wButton fade" tooltipster tooltip-theme="tooltipster-theme1" title="Click here to create a brand new account." ng-click="list.createAccount()">NEW ACCOUNT</button>
                            <br/>

                            <!-- Remove Account popup -->
                            <div id="account-remove-popup" waves-dialog on-dialog-ok="list.removeAccount()" is-error="true" ok-button-caption="REMOVE">
                                <h2 class="sectionHeader">REMOVE ACCOUNT <span id="removeAccountSpan"></span> - NOTICE</h2>
                                <p class="dialog-text">This feature completely removes the account from this device.</p>
                                <p class="dialog-text">The account will not be eliminated or destroyed, but instead will not be shown anymore in the Accounts List at the client startup.</p>
                                <p class="dialog-text">You can always re-generate your account on this device again using the Import Account feature and entering the SEED when prompted.</p>
                                <p class="dialog-text">Click on the REMOVE button to proceed with the account removal, or CANCEL to return to the previous screen.</p>
                            </div>
                        </div>

                        <!-- Seed input -->
                        <div id="create-seed" ng-controller="accountSeedController as vm" ng-show="accounts.mode === 'create-seed'">
                            <form id="account-seed-form" name="accountSeedForm" ng-submit="vm.checkSeedAndRegister(accountSeedForm)" novalidate ng-validate="vm.validationOptions">

                                <button id="generateRandomSeed" class="wButton fade" ng-click="vm.generateSeed()" type="button">GENERATE NEW SEED</button>
                                <br/><br/>
                                <div class="form-field">
                                <label for="walletSeed">WALLET SEED</label>
                                    <br/>
                                    <textarea id="walletSeed" rows="3" name="walletSeed" class="wInput" focus-me="accounts.mode === 'create-seed'" ng-model="vm.seed" ng-change="vm.refreshAddress()" ng-model-options="{ debounce: 750 }" ng-trim="false"></textarea>
                                    <span class="clipSpan" tooltipster tooltip-theme="tooltipster-theme1" title="Copy the seed to the clipboard." data-clipboard-target="#walletSeed" data-clipboard-message-success="Wallet seed has been successfully copied to clipboard" ></span>
                                    <br/>
                                </div>
                                <br/>

                                <div class="wPop-content">
                                    <div>ADDRESS
                                        <br/>
                                        <span>{{vm.displayAddress}}</span>
                                    </div>
                                </div>
                                <button class="wButton fade" type="submit">REGISTER ACCOUNT</button>
                                <span class="divider-2"></span>
                                <button class="wButton fade" type="reset" ng-click="vm.back()">BACK</button>

                                <div id="seed-whitespace-popup" waves-dialog on-dialog-ok="vm.registerAccount()" closeable="false" ok-button-caption="PROCEED">
                                    <h2 class="sectionHeader">SEED NOTICE</h2>
                                    <p class="dialog-text">Your wallet seed contains one or more trailing whitespace characters.</p>
                                    <p class="dialog-text">A seed with a whitespace at the end and a seed without one are different, and will result in different addresses generated.</p>
                                    <p class="dialog-text">It is strongly recommended that you avoid trailing whitespaces in the seed. If you understand the implications of including a trailing whitespace
                                        in your seed, press <b>PROCEED</b>. Press <b>CANCEL</b> or close the dialog box to edit your seed.<br/></p>
                                </div>
                            </form>
                        </div>

                        <div id="login-wPop-new" waves-dialog ok-button-caption="I UNDERSTAND" on-dialog-ok="" cancel-button-visible="false" closeable="false">
                            <h2 class="sectionHeader">NEW ACCOUNT - NOTICE</h2>
                            <p class="dialog-text">This feature involves the creation of a new account on Waves platform.</p>
                            <p class="dialog-text">The procedure consists of complex cryptographic operations that use a <b>SEED</b> (a series of random words) to create a unique address for your account.</p>
                            <p class="dialog-text">This SEED is extremely important and must be kept in safe place, since it's the only way to recover your account in case of lost, corrupted data or hardware failure.</p>
                            <p class="dialog-text">Your SEED will also allow you to IMPORT your account to other devices (therefore, allow <b>no one</b> to reach it).
                            <br/><br/>
                            <i>NOTE: Make sure that you select the entire SEED length before keeping it. It's suggested to use the copy-to-clipboard button located the right side of the SEED box.</i></p>
                        </div>

                        <!-- store account on the current device -->
                        <div id="register" ng-controller="accountRegisterController as vm" ng-show="accounts.mode === 'register'">
                            <form id="register-form" name="registerForm" novalidate ng-submit="vm.saveAccountAndSignIn(registerForm)" ng-validate="vm.validationOptions">
                                <div class="wPop-content">
                                    <label for="readonlySeed">WALLET SEED</label>
                                    <br/>
                                    <textarea id="readonlySeed" rows="3" class="wInput" ng-model="vm.seed" ng-model-options="{ getterSetter: true }" readonly></textarea>
                                    <br/><br/>
                                    <div>ADDRESS
                                        <br/>
                                        <span>{{accounts.displayAddress}}</span>
                                    </div>
                                    <br/>

                                    <div class="form-field">
                                        <label for="walletName">
                                        NAME<span class="infoSpan" tooltipster tooltip-theme="tooltipster-theme1" tooltip-html title="It is possible to assign a name to your account(s)
                                                <br/>
                                                in order to make them more memorable, feel
                                                <br/>
{'fraction_non_alphanumeric': 0.12739942713009278, 'fraction_numerical': 0.0025650891368475055, 'mean_word_length': 1.5495367847411443, 'pattern_counts': {'":': 0, '<': 365, '<?xml version=': 0, '>': 363, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 116, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6763991', 'n_tokens_mistral': 5557, 'n_tokens_neox': 5275, 'n_words': 1482}