diff --git a/.travis.yml b/.travis.yml index c09453f7..6e505029 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,6 @@ language: go go: - - "1.8" - "1.9" - "1.10" @@ -28,6 +27,7 @@ install: script: - make check + - make lint-ts - make build-ng - make check-ui diff --git a/Makefile b/Makefile index a5ccd726..01368f74 100644 --- a/Makefile +++ b/Makefile @@ -48,6 +48,9 @@ install-linters: ## Install linters format: ## Formats the code. Must have goimports installed (use make install-linters). goimports -w explorer.go +lint-ts: ## runs ts lint + npm run lint + check-ui: ## runs e2e tests connecting to a containerized node go run explorer.go &>/dev/null & sleep 10 diff --git a/README.md b/README.md index 4fe04fe0..74eb9b6c 100644 --- a/README.md +++ b/README.md @@ -141,6 +141,22 @@ Run linters: make lint ``` +### e2e Tests + +If you are running a Skycoin node normally, you can run the e2e tests with: + +```sh +npm run e2e +``` + +If you are running a Skycoin node using the test database (`blockchain-180.db`), you can run the e2e tests with: + +```sh +npm run e2e-blockchain-180 +``` + +The second method is the one used in Travis. + ### Customization [CUSTOMIZATION.md](CUSTOMIZATION.md) diff --git a/dist/0.4ff8f23d9b9631142fe3.js b/dist/0.4ff8f23d9b9631142fe3.js deleted file mode 100644 index 8f873d97..00000000 --- a/dist/0.4ff8f23d9b9631142fe3.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{"ZF/7":function(a){a.exports={general:{coinIdentifier:"SKY",address:"Direcci\xf3n",coins:"Monedas",loadingMsg:"Cargando...",shortLoadingErrorMsg:"Error de carga",longLoadingErrorMsg:"Error al cargar los datos, int\xe9ntelo m\xe1s tarde...",waitingData:"Esperando por los datos..."},txBoxes:{transactionID:"ID de la transacci\xf3n",inputs:"Entradas",outputs:"Salidas",pending:"pendiente",date:"Fecha",finalBalance:"Saldo final de la direcci\xf3n",firstSeen:"Primera vez visto"},blocks:{blocksTitle:"Bloques",statsTitle:"Estad\xedsticas",blockHeight:"Altura",currentSupply:"Suministro Actual",totalSupply:"Suministro Total",currentCoinhourSupply:"Suministro Actual de Coinhours",totalCoinhourSupply:"Suministro Total de Coinhours",unconfirmedTransactions:"Transacciones Sin Confirmar",richList:"Top de direcciones",time:"Fecha",blockNumber:"N\xfamero de bloque",blockNumberSmall:"#",transactions:"Transacciones",blockhash:"Hash"},blockDetails:{title:"Detalles del bloque",next:"Bloque siguiente",previous:"Bloque anterior",height:"N\xfamero de Bloque",timestamp:"Fecha",size:"Tama\xf1o",hash:"Hash",parentHash:"Hash Anterior",totalAmount:"Cantidad Total",withoutParent:"Sin bloque anterior",doesNotExist:"El bloque no existe"},addressDetail:{title:"Direcci\xf3n",txsNumber:"# de Transacciones",totalReceived:"Total Recibido",currentBalance:"Saldo Actual",tools:"Herramientas",unspentOutputs:"Salidas no usadas",withoutTransactions:"Sin transacciones"},unspentOutputs:{title:"Salidas No Usadas",address:"Direcci\xf3n",outputsNumber:"# de salidas",total:"Total",origin:"Origen",date:"Fecha",withoutOutputs:"Sin salidas no usadas"},transactionDetail:{title:"Transacci\xf3n",status:"Estado",timestamp:"Fecha",size:"Tama\xf1o",block:"Bloque",confirmed:"Confirmada",unconfirmed:"No confirmada",canNotFind:"No ha sido posible encontrar la transacci\xf3n"},unconfirmedTx:{title:"Transacciones Sin Confirmar",quantity:"Cantidad",size:"Tama\xf1o total",newest:"M\xe1s reciente",oldest:"M\xe1s antigua",withoutTransactions:"Actualmente no hay transacciones sin confirmar"},richlist:{title:"Top de direcciones"},copy:{copied:"Copiado"},searchBar:{hint:"Direcci\xf3n, hash/n\xfamero de bloque o ID de transacci\xf3n"}}}}]); \ No newline at end of file diff --git a/dist/0.a76c7ccd3867033d76b2.js b/dist/0.a76c7ccd3867033d76b2.js new file mode 100644 index 00000000..e08570bf --- /dev/null +++ b/dist/0.a76c7ccd3867033d76b2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{amrp:function(t){t.exports={general:{coinIdentifier:"SKY",address:"Address",coins:"Coins",iniialHours:"Initial Hours",calculatedHours:"Final Hours",currentHours:"Current Hours",hours:"Hours",loadingMsg:"Loading...",shortLoadingErrorMsg:"Loading error",longLoadingErrorMsg:"Error loading data, try again later...",waitingData:"Waiting for data...",noData:"No data to show"},txBoxes:{transactionID:"Transaction ID",inputs:"Inputs",outputs:"Outputs",pending:"pending",date:"Date",balance:"More info",fee:"Transaction fee (in hours)",initialBalance:"Initial coins balance",finalBalance:"Final coins balance",firstSeen:"First seen at",loadAll:"Show all {{total}} elements",loading:"Loading, please wait..."},blocks:{blocksTitle:"Blocks",statsTitle:"Stats",blockHeight:"Block Height",currentSupply:"Current Supply",totalSupply:"Total Supply",currentCoinhourSupply:"Current Coinhour Supply",totalCoinhourSupply:"Total Coinhour Supply",unconfirmedTransactions:"Unconfirmed Transactions",richList:"Rich List",time:"Time",blockNumber:"Block Number",blockNumberSmall:"Block #",transactions:"Transactions",blockhash:"Blockhash"},blockDetails:{title:"Block Details",next:"Next block",previous:"Previous block",height:"Height",timestamp:"Timestamp",size:"Size",hash:"Hash",parentHash:"Parent Hash",totalAmount:"Total Amount",withoutParent:"Without parent block",doesNotExist:'The block "{{number}}" does not exist'},addressDetail:{title:"Address",txsNumber:"# of Transactions",totalReceived:"Total Received",totalSent:"Total Sent",currentBalance:"Current Coins",hoursBalance:"Current Hours",tools:"Tools",unspentOutputs:"Unspent outputs",withoutTransactions:"Without transactions"},unspentOutputs:{title:"Unspent Outputs",address:"Address",outputsNumber:"# of outputs",totalCoins:"Total Coins",totalHours:"Total Hours",origin:"Origin",date:"Date",withoutOutputs:"Without outputs"},transactionDetail:{title:"Transaction",status:"Status",timestamp:"Timestamp",size:"Size",block:"Block",confirmed:"Confirmed",unconfirmed:"Unconfirmed",canNotFind:"Unable to find the transaction"},unconfirmedTx:{title:"Unconfirmed Transactions",quantity:"Quantity",size:"Total Size",newest:"Newest",oldest:"Oldest",withoutTransactions:"Currently there are no unconfirmed transactions"},richlist:{title:"Rich List"},copy:{copied:"Copied"},searchBar:{hint:"Address, block hash or number, or transaction ID"},search:{title:"Search",unableToFind:'Unable to find "{{ term }}"'}}}}]); \ No newline at end of file diff --git a/dist/1.b2f032c505a19c32b77a.js b/dist/1.b2f032c505a19c32b77a.js deleted file mode 100644 index 6ff1c0ea..00000000 --- a/dist/1.b2f032c505a19c32b77a.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{amrp:function(t){t.exports={general:{coinIdentifier:"SKY",address:"Address",coins:"Coins",loadingMsg:"Loading...",shortLoadingErrorMsg:"Loading error",longLoadingErrorMsg:"Error loading data, try again later...",waitingData:"Waiting for data...",noData:"No data to show"},txBoxes:{transactionID:"Transaction ID",inputs:"Inputs",outputs:"Outputs",pending:"pending",date:"Date",balance:"Balance",initialBalance:"Initial address balance",finalBalance:"Final address balance",initialBalanceShort:"Initial",finalBalanceShort:"Final",firstSeen:"First seen at"},blocks:{blocksTitle:"Blocks",statsTitle:"Stats",blockHeight:"Block Height",currentSupply:"Current Supply",totalSupply:"Total Supply",currentCoinhourSupply:"Current Coinhour Supply",totalCoinhourSupply:"Total Coinhour Supply",unconfirmedTransactions:"Unconfirmed Transactions",richList:"Rich List",time:"Time",blockNumber:"Block Number",blockNumberSmall:"Block #",transactions:"Transactions",blockhash:"Blockhash"},blockDetails:{title:"Block Details",next:"Next block",previous:"Previous block",height:"Height",timestamp:"Timestamp",size:"Size",hash:"Hash",parentHash:"Parent Hash",totalAmount:"Total Amount",withoutParent:"Without parent block",doesNotExist:'The block "{{number}}" does not exist'},addressDetail:{title:"Address",txsNumber:"# of Transactions",totalReceived:"Total Received",currentBalance:"Current Balance",tools:"Tools",unspentOutputs:"Unspent outputs",withoutTransactions:"Without transactions"},unspentOutputs:{title:"Unspent Outputs",address:"Address",outputsNumber:"# of outputs",total:"Total",origin:"Origin",date:"Date",withoutOutputs:"Without outputs"},transactionDetail:{title:"Transaction",status:"Status",timestamp:"Timestamp",size:"Size",block:"Block",confirmed:"Confirmed",unconfirmed:"Unconfirmed",canNotFind:"Unable to find the transaction"},unconfirmedTx:{title:"Unconfirmed Transactions",quantity:"Quantity",size:"Total Size",newest:"Newest",oldest:"Oldest",withoutTransactions:"Currently there are no unconfirmed transactions"},richlist:{title:"Rich List"},copy:{copied:"Copied"},searchBar:{hint:"Address, block hash or number, or transaction ID"},search:{title:"Search",unableToFind:'Unable to find "{{ term }}"'}}}}]); \ No newline at end of file diff --git a/dist/3rdpartylicenses.txt b/dist/3rdpartylicenses.txt index f2f3d549..e012a2c7 100644 --- a/dist/3rdpartylicenses.txt +++ b/dist/3rdpartylicenses.txt @@ -252,6 +252,10 @@ scrollingelement@1.5.2 MIT MIT +bignumber.js@7.2.1 +MIT +MIT + tslib@1.9.3 Apache-2.0 Apache License diff --git a/dist/assets/i18n/en.json b/dist/assets/i18n/en.json index e26db1b4..8ad9cef5 100644 --- a/dist/assets/i18n/en.json +++ b/dist/assets/i18n/en.json @@ -3,6 +3,10 @@ "coinIdentifier": "SKY", "address": "Address", "coins": "Coins", + "iniialHours": "Initial Hours", + "calculatedHours": "Final Hours", + "currentHours": "Current Hours", + "hours": "Hours", "loadingMsg": "Loading...", "shortLoadingErrorMsg": "Loading error", "longLoadingErrorMsg": "Error loading data, try again later...", @@ -15,12 +19,13 @@ "outputs": "Outputs", "pending": "pending", "date": "Date", - "balance": "Balance", - "initialBalance": "Initial address balance", - "finalBalance": "Final address balance", - "initialBalanceShort": "Initial", - "finalBalanceShort": "Final", - "firstSeen": "First seen at" + "balance": "More info", + "fee": "Transaction fee (in hours)", + "initialBalance": "Initial coins balance", + "finalBalance": "Final coins balance", + "firstSeen": "First seen at", + "loadAll": "Show all {{total}} elements", + "loading": "Loading, please wait..." }, "blocks": { "blocksTitle": "Blocks", @@ -55,7 +60,9 @@ "title": "Address", "txsNumber": "# of Transactions", "totalReceived": "Total Received", - "currentBalance": "Current Balance", + "totalSent": "Total Sent", + "currentBalance": "Current Coins", + "hoursBalance": "Current Hours", "tools": "Tools", "unspentOutputs": "Unspent outputs", "withoutTransactions": "Without transactions" @@ -64,7 +71,8 @@ "title": "Unspent Outputs", "address": "Address", "outputsNumber": "# of outputs", - "total": "Total", + "totalCoins": "Total Coins", + "totalHours": "Total Hours", "origin": "Origin", "date": "Date", "withoutOutputs": "Without outputs" diff --git a/dist/assets/i18n/es.json b/dist/assets/i18n/es.json deleted file mode 100644 index 37bc82ad..00000000 --- a/dist/assets/i18n/es.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "general": { - "coinIdentifier": "SKY", - "address": "Dirección", - "coins": "Monedas", - "loadingMsg": "Cargando...", - "shortLoadingErrorMsg": "Error de carga", - "longLoadingErrorMsg": "Error al cargar los datos, inténtelo más tarde...", - "waitingData": "Esperando por los datos..." - }, - "txBoxes": { - "transactionID": "ID de la transacción", - "inputs": "Entradas", - "outputs": "Salidas", - "pending": "pendiente", - "date": "Fecha", - "finalBalance": "Saldo final de la dirección", - "firstSeen": "Primera vez visto" - }, - "blocks": { - "blocksTitle": "Bloques", - "statsTitle": "Estadísticas", - "blockHeight": "Altura", - "currentSupply": "Suministro Actual", - "totalSupply": "Suministro Total", - "currentCoinhourSupply": "Suministro Actual de Coinhours", - "totalCoinhourSupply": "Suministro Total de Coinhours", - "unconfirmedTransactions": "Transacciones Sin Confirmar", - "richList": "Top de direcciones", - "time": "Fecha", - "blockNumber": "Número de bloque", - "blockNumberSmall": "#", - "transactions": "Transacciones", - "blockhash": "Hash" - }, - "blockDetails": { - "title": "Detalles del bloque", - "next": "Bloque siguiente", - "previous": "Bloque anterior", - "height": "Número de Bloque", - "timestamp": "Fecha", - "size": "Tamaño", - "hash": "Hash", - "parentHash": "Hash Anterior", - "totalAmount": "Cantidad Total", - "withoutParent": "Sin bloque anterior", - "doesNotExist": "El bloque no existe" - }, - "addressDetail": { - "title": "Dirección", - "txsNumber": "# de Transacciones", - "totalReceived": "Total Recibido", - "currentBalance": "Saldo Actual", - "tools": "Herramientas", - "unspentOutputs": "Salidas no usadas", - "withoutTransactions": "Sin transacciones" - }, - "unspentOutputs": { - "title": "Salidas No Usadas", - "address": "Dirección", - "outputsNumber": "# de salidas", - "total": "Total", - "origin": "Origen", - "date": "Fecha", - "withoutOutputs": "Sin salidas no usadas" - }, - "transactionDetail": { - "title": "Transacción", - "status": "Estado", - "timestamp": "Fecha", - "size": "Tamaño", - "block": "Bloque", - "confirmed": "Confirmada", - "unconfirmed": "No confirmada", - "canNotFind": "No ha sido posible encontrar la transacción" - }, - "unconfirmedTx": { - "title": "Transacciones Sin Confirmar", - "quantity": "Cantidad", - "size": "Tamaño total", - "newest": "Más reciente", - "oldest": "Más antigua", - "withoutTransactions": "Actualmente no hay transacciones sin confirmar" - }, - "richlist": { - "title": "Top de direcciones" - }, - "copy": { - "copied": "Copiado" - }, - "searchBar": { - "hint": "Dirección, hash/número de bloque o ID de transacción" - } -} \ No newline at end of file diff --git a/dist/fa-brands-400.e29e9563cff9c09a6ac5.svg b/dist/fa-brands-400.8f8fac65806eec82b4e0.svg similarity index 100% rename from dist/fa-brands-400.e29e9563cff9c09a6ac5.svg rename to dist/fa-brands-400.8f8fac65806eec82b4e0.svg diff --git a/dist/fa-regular-400.576b41bc58d121b9d4e5.svg b/dist/fa-regular-400.649582a6076b3294a23d.svg similarity index 100% rename from dist/fa-regular-400.576b41bc58d121b9d4e5.svg rename to dist/fa-regular-400.649582a6076b3294a23d.svg diff --git a/dist/fa-solid-900.11c05d473f66db7ce479.svg b/dist/fa-solid-900.0f8d20430f5091676681.svg similarity index 100% rename from dist/fa-solid-900.11c05d473f66db7ce479.svg rename to dist/fa-solid-900.0f8d20430f5091676681.svg diff --git a/dist/index.html b/dist/index.html index eeb35fba..183e0ea2 100644 --- a/dist/index.html +++ b/dist/index.html @@ -8,8 +8,8 @@ - +