4
1
mirror of https://github.com/Qortal/qortal-ui.git synced 2025-02-11 17:55:51 +00:00

move exchange rate

This commit is contained in:
AlphaX-Projects 2022-09-10 17:43:39 +02:00
parent c19ea6af4e
commit b4b8074fa1
19 changed files with 69 additions and 121 deletions

View File

@ -36,7 +36,7 @@
"electron-log": "4.4.8" "electron-log": "4.4.8"
}, },
"devDependencies": { "devDependencies": {
"electron": "20.1.0", "electron": "17.4.11",
"electron-builder": "23.3.3", "electron-builder": "23.3.3",
"electron-notarize": "1.2.1", "electron-notarize": "1.2.1",
"electron-packager": "16.0.0", "electron-packager": "16.0.0",

View File

@ -298,7 +298,8 @@
"tchange29":"ABBRECHEN", "tchange29":"ABBRECHEN",
"tchange30":"Guthaben konnte nicht abgerufen werden. Versuchen Sie es nochmal!", "tchange30":"Guthaben konnte nicht abgerufen werden. Versuchen Sie es nochmal!",
"tchange31":"VERKAUFT", "tchange31":"VERKAUFT",
"tchange32":"GEKAUFT" "tchange32":"GEKAUFT",
"tchange33":"Tauschrate"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Belohnungsanteile", "rchange1":"Belohnungsanteile",

View File

@ -298,7 +298,8 @@
"tchange29":"CANCELAR", "tchange29":"CANCELAR",
"tchange30":"Fallo en la obtención del saldo. Inténtelo de nuevo!", "tchange30":"Fallo en la obtención del saldo. Inténtelo de nuevo!",
"tchange31":"VENDIDO", "tchange31":"VENDIDO",
"tchange32":"COMPRADO" "tchange32":"COMPRADO",
"tchange33":"Tipo de cambio"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Rewardshares", "rchange1":"Rewardshares",

View File

@ -298,7 +298,8 @@
"tchange29":"ANNULER", "tchange29":"ANNULER",
"tchange30":"Échec de la récupération du solde. Réessayez!", "tchange30":"Échec de la récupération du solde. Réessayez!",
"tchange31":"VENDU", "tchange31":"VENDU",
"tchange32":"ACHETE" "tchange32":"ACHETE",
"tchange33":"Taux de change"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Récompenses", "rchange1":"Récompenses",

View File

@ -299,7 +299,8 @@
"tchange29":"रद्द करें", "tchange29":"रद्द करें",
"tchange30":"शेष को लाने में विफल फिर से प्रयास करें!", "tchange30":"शेष को लाने में विफल फिर से प्रयास करें!",
"tchange31":"बेचा", "tchange31":"बेचा",
"tchange32":"खरीद लिया" "tchange32":"खरीद लिया",
"tchange33":"विनिमय दर"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"रिवॉर्डशेयर", "rchange1":"रिवॉर्डशेयर",

View File

@ -298,7 +298,8 @@
"tchange29":"OTKAŽI", "tchange29":"OTKAŽI",
"tchange30":"Neuspješno dohvatiti stanje. Pokušajte ponovno!", "tchange30":"Neuspješno dohvatiti stanje. Pokušajte ponovno!",
"tchange31":"PRODANO", "tchange31":"PRODANO",
"tchange32":"KUPLJENO" "tchange32":"KUPLJENO",
"tchange33":"Tečaj"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Nagradni udio (Rewardshares)", "rchange1":"Nagradni udio (Rewardshares)",

View File

@ -298,7 +298,8 @@
"tchange29":"ÉRVÉNYTELENÍT", "tchange29":"ÉRVÉNYTELENÍT",
"tchange30":"Nem sikerült lekérni az egyenleget. Próbáld újra!", "tchange30":"Nem sikerült lekérni az egyenleget. Próbáld újra!",
"tchange31":"ELADOTT", "tchange31":"ELADOTT",
"tchange32":"VÁSÁROLT" "tchange32":"VÁSÁROLT",
"tchange33":"Árfolyam"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Jutalommegosztások", "rchange1":"Jutalommegosztások",

View File

@ -298,7 +298,8 @@
"tchange29":"CANCELLA", "tchange29":"CANCELLA",
"tchange30":"Impossibile recuperare il saldo. Riprova!", "tchange30":"Impossibile recuperare il saldo. Riprova!",
"tchange31":"VENDUTO", "tchange31":"VENDUTO",
"tchange32":"ACQUISTATO" "tchange32":"ACQUISTATO",
"tchange33":"Tasso di cambio"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Quote di ricompensa", "rchange1":"Quote di ricompensa",

View File

@ -298,7 +298,8 @@
"tchange29":"취소하다", "tchange29":"취소하다",
"tchange30":"밸런스를 가져오지 못했습니다. 다시 시도하십시오.!", "tchange30":"밸런스를 가져오지 못했습니다. 다시 시도하십시오.!",
"tchange31":"판매된", "tchange31":"판매된",
"tchange32":"구매된" "tchange32":"구매된",
"tchange33":"환율"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"보상 공유", "rchange1":"보상 공유",

View File

@ -298,7 +298,8 @@
"tchange29":"AVBRYT", "tchange29":"AVBRYT",
"tchange30":"Kunne ikke hente saldoen. Prøv igjen!", "tchange30":"Kunne ikke hente saldoen. Prøv igjen!",
"tchange31":"SOLGT", "tchange31":"SOLGT",
"tchange32":"KJØPT" "tchange32":"KJØPT",
"tchange33":"Vekslingskurs"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Belønningsdel", "rchange1":"Belønningsdel",

View File

@ -298,7 +298,8 @@
"tchange29":"ANULUJ", "tchange29":"ANULUJ",
"tchange30":"Nie udało się pobrać salda. Spróbuj ponownie!", "tchange30":"Nie udało się pobrać salda. Spróbuj ponownie!",
"tchange31":"SPRZEDANY", "tchange31":"SPRZEDANY",
"tchange32":"KUPIONY" "tchange32":"KUPIONY",
"tchange33":"Kurs wymiany"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Podział nagród", "rchange1":"Podział nagród",

View File

@ -298,7 +298,8 @@
"tchange29":"CANCELAR", "tchange29":"CANCELAR",
"tchange30":"Falha buscando Saldo. Tente novamente!", "tchange30":"Falha buscando Saldo. Tente novamente!",
"tchange31":"VENDIDO", "tchange31":"VENDIDO",
"tchange32":"COMPRADO" "tchange32":"COMPRADO",
"tchange33":"Taxa de câmbio"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Ações de recompensa", "rchange1":"Ações de recompensa",

View File

@ -298,7 +298,8 @@
"tchange29":"ANULARE", "tchange29":"ANULARE",
"tchange30":"Nu s-a reusit actualizarea soldului. Mai incearca odata!", "tchange30":"Nu s-a reusit actualizarea soldului. Mai incearca odata!",
"tchange31":"VANDUT", "tchange31":"VANDUT",
"tchange32":"CUMPARAT" "tchange32":"CUMPARAT",
"tchange33":"Rata de schimb"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Cote de recompensa", "rchange1":"Cote de recompensa",

View File

@ -298,7 +298,8 @@
"tchange29":"OTKAZIVANJE", "tchange29":"OTKAZIVANJE",
"tchange30":"Neuspešna provera salda. Pokušajte ponovo!", "tchange30":"Neuspešna provera salda. Pokušajte ponovo!",
"tchange31":"PRODATO", "tchange31":"PRODATO",
"tchange32":"KUPLJENO" "tchange32":"KUPLJENO",
"tchange33":"Kurs"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Udeo nagrade", "rchange1":"Udeo nagrade",

View File

@ -298,7 +298,8 @@
"tchange29":"ОТМЕНА", "tchange29":"ОТМЕНА",
"tchange30":"Не удалось получить баланс. Повторите попытку!", "tchange30":"Не удалось получить баланс. Повторите попытку!",
"tchange31":"ПРОДАНО", "tchange31":"ПРОДАНО",
"tchange32":"КУПИЛ" "tchange32":"КУПИЛ",
"tchange33":"Обменный курс"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Вознаграждения", "rchange1":"Вознаграждения",

View File

@ -298,7 +298,8 @@
"tchange29":"CANCEL", "tchange29":"CANCEL",
"tchange30":"Failed to Fetch Balance. Try again!", "tchange30":"Failed to Fetch Balance. Try again!",
"tchange31":"SOLD", "tchange31":"SOLD",
"tchange32":"BOUGHT" "tchange32":"BOUGHT",
"tchange33":"Exchange Rate"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"Rewardshares", "rchange1":"Rewardshares",

View File

@ -298,7 +298,8 @@
"tchange29":"取消交易", "tchange29":"取消交易",
"tchange30":"加载余额失败。请重新尝试!", "tchange30":"加载余额失败。请重新尝试!",
"tchange31":"已卖出", "tchange31":"已卖出",
"tchange32":"已买入" "tchange32":"已买入",
"tchange33":"汇率"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"铸币密钥", "rchange1":"铸币密钥",

View File

@ -298,7 +298,8 @@
"tchange29":"取消交易", "tchange29":"取消交易",
"tchange30":"加載餘額失敗。請重新嘗試!", "tchange30":"加載餘額失敗。請重新嘗試!",
"tchange31":"已賣出", "tchange31":"已賣出",
"tchange32":"已買入" "tchange32":"已買入",
"tchange33":"匯率"
}, },
"rewardsharepage":{ "rewardsharepage":{
"rchange1":"鑄幣密鑰", "rchange1":"鑄幣密鑰",

View File

@ -85,20 +85,17 @@ class TradePortal extends LitElement {
--_lumo-grid-border-color: var(--border); --_lumo-grid-border-color: var(--border);
--_lumo-grid-secondary-border-color: var(--border2); --_lumo-grid-secondary-border-color: var(--border2);
} }
paper-spinner-lite { paper-spinner-lite {
height: 30px; height: 30px;
width: 30px; width: 30px;
--paper-spinner-color: var(--mdc-theme-primary); --paper-spinner-color: var(--mdc-theme-primary);
--paper-spinner-stroke-width: 3px; --paper-spinner-stroke-width: 3px;
} }
mwc-tab-bar { mwc-tab-bar {
--mdc-text-transform: none; --mdc-text-transform: none;
--mdc-tab-color-default: var(--black); --mdc-tab-color-default: var(--black);
--mdc-tab-text-label-color-default: var(--black); --mdc-tab-text-label-color-default: var(--black);
} }
#tabs-1 { #tabs-1 {
--mdc-tab-height: 42px; --mdc-tab-height: 42px;
border-left: 1px solid var(--tradeborder); border-left: 1px solid var(--tradeborder);
@ -106,49 +103,39 @@ class TradePortal extends LitElement {
border-right: 1px solid var(--tradeborder); border-right: 1px solid var(--tradeborder);
color: var(--black); color: var(--black);
} }
#tab-buy[active] { #tab-buy[active] {
--mdc-theme-primary: rgba(55, 160, 51, 0.9); --mdc-theme-primary: rgba(55, 160, 51, 0.9);
} }
#tabs-1-content { #tabs-1-content {
height: 100%; height: 100%;
padding-bottom: 10px; padding-bottom: 10px;
} }
#tabs-1-content > div { #tabs-1-content > div {
height: 100%; height: 100%;
border: 1px solid var(--tradeborder); border: 1px solid var(--tradeborder);
} }
#tabs-1-content .card { #tabs-1-content .card {
border: none; border: none;
} }
#tabs-1-content .btn-clear { #tabs-1-content .btn-clear {
--mdc-icon-button-size: 32px; --mdc-icon-button-size: 32px;
color: var(--black); color: var(--black);
} }
#tab-sell[active] { #tab-sell[active] {
--mdc-theme-primary: rgb(255, 89, 89); --mdc-theme-primary: rgb(255, 89, 89);
} }
#trade-portal-page { #trade-portal-page {
background: var(--white); background: var(--white);
padding: 12px 24px; padding: 12px 24px;
} }
.divCard { .divCard {
border: 1px solid var(--black); border: 1px solid var(--black);
padding: 1em; padding: 1em;
box-shadow: 0 0.3px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 1px -1px rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0.3px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 1px -1px rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.2);
} }
h2 { h2 {
margin: 0; margin: 0;
} }
h2, h2,
h3, h3,
h4, h4,
@ -156,7 +143,6 @@ class TradePortal extends LitElement {
color: var(--black); color: var(--black);
font-weight: 400; font-weight: 400;
} }
header { header {
display: flex; display: flex;
flex: 0 1 auto; flex: 0 1 auto;
@ -171,17 +157,14 @@ class TradePortal extends LitElement {
border-right: 1px solid var(--tradeborder); border-right: 1px solid var(--tradeborder);
min-height: 40px; min-height: 40px;
} }
p { p {
margin-bottom: 12px; margin-bottom: 12px;
} }
#trade-portal { #trade-portal {
max-width: 100vw; max-width: 100vw;
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
} }
.box { .box {
margin: 0; margin: 0;
padding: 0; padding: 0;
@ -189,38 +172,29 @@ class TradePortal extends LitElement {
flex-flow: column; flex-flow: column;
height: 100%; height: 100%;
} }
#first-trade-section { #first-trade-section {
margin-bottom: 10px; margin-bottom: 10px;
} }
#first-trade-section > div { #first-trade-section > div {
} }
#second-trade-section { #second-trade-section {
margin-bottom: 10px; margin-bottom: 10px;
} }
#second-trade-section > div { #second-trade-section > div {
} }
#third-trade-section { #third-trade-section {
margin-bottom: 10px; margin-bottom: 10px;
} }
#third-trade-section > div { #third-trade-section > div {
} }
.trade-chart { .trade-chart {
background-color: var(--white); background-color: var(--white);
border: 2px #ddd solid; border: 2px #ddd solid;
text-align: center; text-align: center;
} }
.open-trades { .open-trades {
text-align: center; text-align: center;
} }
.no-last-seen { .no-last-seen {
background: rgb(255, 89, 89); background: rgb(255, 89, 89);
padding: 9px 1.3px; padding: 9px 1.3px;
@ -228,11 +202,9 @@ class TradePortal extends LitElement {
width: 1rem; width: 1rem;
margin: 0 auto; margin: 0 auto;
} }
.open-market-container { .open-market-container {
text-align: center; text-align: center;
} }
.card { .card {
padding: 1em; padding: 1em;
border: 1px var(--tradeborder) solid; border: 1px var(--tradeborder) solid;
@ -242,23 +214,19 @@ class TradePortal extends LitElement {
justify-content: space-evenly; justify-content: space-evenly;
min-height: inherit; min-height: inherit;
} }
.cancel { .cancel {
--mdc-theme-primary: rgb(255, 89, 89); --mdc-theme-primary: rgb(255, 89, 89);
} }
.border-wrapper { .border-wrapper {
border: 1px var(--tradeborder) solid; border: 1px var(--tradeborder) solid;
overflow: hidden; overflow: hidden;
} }
.amt-text { .amt-text {
color: var(--tradehave); color: var(--tradehave);
font-size: 15px; font-size: 15px;
margin-top: 5px; margin-top: 5px;
margin-bottom: 12px; margin-bottom: 12px;
} }
.exchange { .exchange {
color: var(--black); color: var(--black);
font-size: 18px; font-size: 18px;
@ -266,31 +234,26 @@ class TradePortal extends LitElement {
margin-top: 5px; margin-top: 5px;
margin-bottom: 10px; margin-bottom: 10px;
} }
.clear-button { .clear-button {
display: inline; display: inline;
float: right; float: right;
margin-bottom: 5px; margin-bottom: 5px;
} }
.exhcnage-text { .exhcnage-text {
display: inline; display: inline;
float: left; float: left;
margin-bottom: 5px; margin-bottom: 5px;
} }
.balance-text { .balance-text {
display: inline; display: inline;
float: right; float: right;
margin-bottom: 5px; margin-bottom: 5px;
} }
.fee-text { .fee-text {
display: inline; display: inline;
float: left; float: left;
margin-bottom: 5px; margin-bottom: 5px;
} }
.tab-text { .tab-text {
color: var(--tradehave); color: var(--tradehave);
font-size: 12px; font-size: 12px;
@ -298,58 +261,46 @@ class TradePortal extends LitElement {
margin-top: 2px; margin-top: 2px;
margin-bottom: -12px; margin-bottom: -12px;
} }
.historic-trades { .historic-trades {
text-align: center; text-align: center;
} }
.my-open-orders { .my-open-orders {
text-align: center; text-align: center;
} }
.my-historic-trades { .my-historic-trades {
text-align: center; text-align: center;
} }
.buttons { .buttons {
width: auto !important; width: auto !important;
} }
.buy-button { .buy-button {
--mdc-theme-primary: rgba(55, 160, 51, 0.9); --mdc-theme-primary: rgba(55, 160, 51, 0.9);
} }
.sell-button { .sell-button {
--mdc-theme-primary: rgb(255, 89, 89); --mdc-theme-primary: rgb(255, 89, 89);
} }
.full-width { .full-width {
background-color: var(--white); background-color: var(--white);
border: 2px #ddd solid; border: 2px #ddd solid;
height: 100px; height: 100px;
text-align: center; text-align: center;
} }
vaading-grid { vaading-grid {
font-size: .8em; font-size: .8em;
} }
vaadin-grid-column { vaadin-grid-column {
flex-grow: 1; flex-grow: 1;
} }
.loadingContainer { .loadingContainer {
height: 100%; height: 100%;
width: 100%; width: 100%;
} }
.loading, .loading,
.loading:after { .loading:after {
border-radius: 50%; border-radius: 50%;
width: 5em; width: 5em;
height: 5em; height: 5em;
} }
.loading { .loading {
margin: 10px auto; margin: 10px auto;
border-width: .6em; border-width: .6em;
@ -361,16 +312,13 @@ class TradePortal extends LitElement {
transform: translateZ(0px); transform: translateZ(0px);
animation: 1.1s linear 0s infinite normal none running loadingAnimation; animation: 1.1s linear 0s infinite normal none running loadingAnimation;
} }
mwc-select#coinSelectionMenu { mwc-select#coinSelectionMenu {
font-size: 24px; font-size: 24px;
width:220px; width:220px;
} }
mwc-select#coinSelectionMenu mwc-list-item { mwc-select#coinSelectionMenu mwc-list-item {
line-height: 30px; line-height: 30px;
} }
.coinName::before { .coinName::before {
content: ""; content: "";
display: inline-block; display: inline-block;
@ -382,37 +330,29 @@ class TradePortal extends LitElement {
left: 10px; left: 10px;
top: 10px; top: 10px;
} }
.btc.coinName:before { .btc.coinName:before {
background-image: url('/img/qortbtc.png'); background-image: url('/img/qortbtc.png');
} }
.ltc.coinName:before { .ltc.coinName:before {
background-image: url('/img/qortltc.png'); background-image: url('/img/qortltc.png');
} }
.doge.coinName:before { .doge.coinName:before {
background-image: url('/img/qortdoge.png'); background-image: url('/img/qortdoge.png');
} }
.dgb.coinName:before { .dgb.coinName:before {
background-image: url('/img/qortdgb.png'); background-image: url('/img/qortdgb.png');
} }
.rvn.coinName:before { .rvn.coinName:before {
background-image: url('/img/qortrvn.png'); background-image: url('/img/qortrvn.png');
} }
.arrr.coinName:before { .arrr.coinName:before {
background-image: url('/img/qortarrr.png'); background-image: url('/img/qortarrr.png');
} }
.coinName { .coinName {
display: inline-block; display: inline-block;
height: 26px; height: 26px;
padding-left: 45px; padding-left: 45px;
} }
@-webkit-keyframes loadingAnimation { @-webkit-keyframes loadingAnimation {
0% { 0% {
-webkit-transform: rotate(0deg); -webkit-transform: rotate(0deg);
@ -423,7 +363,6 @@ class TradePortal extends LitElement {
transform: rotate(360deg); transform: rotate(360deg);
} }
} }
@keyframes loadingAnimation { @keyframes loadingAnimation {
0% { 0% {
-webkit-transform: rotate(0deg); -webkit-transform: rotate(0deg);
@ -439,7 +378,6 @@ class TradePortal extends LitElement {
* { * {
} }
#trade-portal {} #trade-portal {}
#first-trade-section { #first-trade-section {
display: grid; display: grid;
grid-template-columns:1fr 1fr 2fr; grid-template-columns:1fr 1fr 2fr;
@ -450,7 +388,6 @@ class TradePortal extends LitElement {
align-items: stretch; align-items: stretch;
margin-bottom: 10px; margin-bottom: 10px;
} }
#second-trade-section { #second-trade-section {
display: grid; display: grid;
grid-template-columns: 2fr 1fr; grid-template-columns: 2fr 1fr;
@ -461,7 +398,6 @@ class TradePortal extends LitElement {
align-items: stretch; align-items: stretch;
margin-bottom: 10px; margin-bottom: 10px;
} }
} }
` `
} }
@ -733,7 +669,7 @@ class TradePortal extends LitElement {
</div> </div>
</div> </div>
</div> </div>
` `
} }
openMarketTemplate() { openMarketTemplate() {
@ -747,10 +683,9 @@ class TradePortal extends LitElement {
<z id="tabs-1-content"> <z id="tabs-1-content">
<div id="tab-buy-content"> <div id="tab-buy-content">
<div class="card"> <div class="card">
<span class="exchange"> <div style="margin-left: auto">
<span class="clear-button"><mwc-icon-button class="btn-clear" title="${translate("tradepage.tchange15")}" icon="clear_all" @click="${() => this.clearBuyForm()}"></mwc-icon-button></span> <mwc-icon-button class="btn-clear" title="${translate("tradepage.tchange15")}" icon="clear_all" @click="${() => this.clearBuyForm()}"></mwc-icon-button>
<span class="exhcnage-text">1 ${this.listedCoins.get(this.selectedCoin).coinCode} = ${this.exchangeRateForeign()} QORT</span> </div>
</span>
<span class="tab-text">${translate("tradepage.tchange8")} (QORT)*</span> <span class="tab-text">${translate("tradepage.tchange8")} (QORT)*</span>
<p> <p>
<mwc-textfield <mwc-textfield
@ -818,10 +753,9 @@ class TradePortal extends LitElement {
</div> </div>
<div id="tab-sell-content"> <div id="tab-sell-content">
<div class="card"> <div class="card">
<span class="exchange"> <div style="margin-left: auto">
<span class="clear-button"><mwc-icon-button class="btn-clear" title="${translate("tradepage.tchange15")}" icon="clear_all" @click="${() => this.clearSellForm()}"></mwc-icon-button></span> <mwc-icon-button class="btn-clear" title="${translate("tradepage.tchange15")}" icon="clear_all" @click="${() => this.clearSellForm()}"></mwc-icon-button>
<span class="exhcnage-text">1 QORT = ${this.exchangeRateQort()} ${this.listedCoins.get(this.selectedCoin).coinCode}</span> </div>
</span>
<span class="tab-text">${translate("tradepage.tchange8")} (QORT)*</span> <span class="tab-text">${translate("tradepage.tchange8")} (QORT)*</span>
<p> <p>
<mwc-textfield <mwc-textfield
@ -882,7 +816,7 @@ class TradePortal extends LitElement {
</div> </div>
</div> </div>
</div> </div>
` `
} }
myOpenOrdersTemplate() { myOpenOrdersTemplate() {
@ -948,7 +882,7 @@ class TradePortal extends LitElement {
</div> </div>
</div> </div>
</div> </div>
` `
} }
myHistoricTradesTemplate() { myHistoricTradesTemplate() {
@ -1008,7 +942,7 @@ class TradePortal extends LitElement {
</div> </div>
</div> </div>
</div> </div>
` `
} }
render() { render() {
@ -1022,7 +956,7 @@ class TradePortal extends LitElement {
<mwc-list-item value="DOGECOIN"><span class="coinName doge" style="color: var(--black);">QORT / DOGE</span></mwc-list-item> <mwc-list-item value="DOGECOIN"><span class="coinName doge" style="color: var(--black);">QORT / DOGE</span></mwc-list-item>
<mwc-list-item value="DIGIBYTE"><span class="coinName dgb" style="color: var(--black);">QORT / DGB</span></mwc-list-item> <mwc-list-item value="DIGIBYTE"><span class="coinName dgb" style="color: var(--black);">QORT / DGB</span></mwc-list-item>
<mwc-list-item value="RAVENCOIN"><span class="coinName rvn" style="color: var(--black);">QORT / RVN</span></mwc-list-item> <mwc-list-item value="RAVENCOIN"><span class="coinName rvn" style="color: var(--black);">QORT / RVN</span></mwc-list-item>
<mwc-list-item value="PIRATECHAIN"><span class="coinName arrr" style="color: var(--black);">QORT / ARRR</span></mwc-list-item> <mwc-list-item value="PIRATECHAIN"><span class="coinName arrr" style="color: var(--black);">QORT / ARRR</span></mwc-list-item>
</mwc-select> </mwc-select>
</div> </div>
<div id="trade-portal"> <div id="trade-portal">
@ -1037,11 +971,15 @@ class TradePortal extends LitElement {
</div> </div>
</div> </div>
</div> </div>
<div style="text-align: center;">
<h2 style="color: var(--black);">${translate("tradepage.tchange33")}</h2>
<h3 style="color: var(--black);">1 <span style="color: #03a9f4;">QORT</span> = ${this.exchangeRateQort()} ${this.listedCoins.get(this.selectedCoin).coinCode}</h3>
</div>
<!-- Manage Stuck Orders Dialog --> <!-- Manage Stuck Orders Dialog -->
<mwc-dialog id="manageStuckOrdersDialog" scrimClickAction="${this.cancelStuckOfferBtnDisable ? '' : 'close'}"> <mwc-dialog id="manageStuckOrdersDialog" scrimClickAction="${this.cancelStuckOfferBtnDisable ? '' : 'close'}">
<div style="text-align: center;"> <div style="text-align: center;">
<h1>${translate("tradepage.tchange7")}</h1> <h1>${translate("tradepage.tchange7")}</h1>
<hr /> <hr>
</div> </div>
<div> <div>
<vaadin-grid style="width: 500px" theme="compact column-borders row-stripes wrap-cell-content" id="stuckOrdersGrid" aria-label="My Offering Orders" .items="${this.listedCoins.get(this.selectedCoin).myOfferingOrders}"> <vaadin-grid style="width: 500px" theme="compact column-borders row-stripes wrap-cell-content" id="stuckOrdersGrid" aria-label="My Offering Orders" .items="${this.listedCoins.get(this.selectedCoin).myOfferingOrders}">
@ -1053,7 +991,7 @@ class TradePortal extends LitElement {
</div> </div>
<mwc-button slot="primaryAction" dialogAction="cancel" class="cancel">${translate("general.close")}</mwc-button> <mwc-button slot="primaryAction" dialogAction="cancel" class="cancel">${translate("general.close")}</mwc-button>
</mwc-dialog> </mwc-dialog>
` `
} }
firstUpdated() { firstUpdated() {
@ -1302,15 +1240,14 @@ class TradePortal extends LitElement {
url: _url, url: _url,
method: 'POST', method: 'POST',
body: _body, body: _body,
}).then((res) => {
if (isNaN(Number(res))) {
let snack1string = get("tradepage.tchange30")
parentEpml.request('showSnackBar', `${snack1string}`)
} else {
this.listedCoins.get(this.selectedCoin).balance = (Number(res) / 1e8).toFixed(8)
}
}) })
.then((res) => {
if (isNaN(Number(res))) {
let snack1string = get("tradepage.tchange30")
parentEpml.request('showSnackBar', `${snack1string}`)
} else {
this.listedCoins.get(this.selectedCoin).balance = (Number(res) / 1e8).toFixed(8)
}
})
} }
async fetchWalletAddress(coin) { async fetchWalletAddress(coin) {
@ -1889,7 +1826,7 @@ class TradePortal extends LitElement {
// Fill Historic Trades and Filter Stuck Trades // Fill Historic Trades and Filter Stuck Trades
if (this.listedCoins.get(this.selectedCoin).tradeOffersSocketCounter === 1) { if (this.listedCoins.get(this.selectedCoin).tradeOffersSocketCounter === 1) {
setTimeout(() => this.filterStuckTrades(tradeStates), 50) setTimeout(() => this.filterStuckTrades(tradeStates), 250)
} }
} }
@ -1973,7 +1910,7 @@ class TradePortal extends LitElement {
const startOfferPresenceMapping = async () => { const startOfferPresenceMapping = async () => {
if (presenceTxns !== null) { if (presenceTxns !== null) {
await asyncForEach(presenceTxns, async (presence) => { await asyncForEach(presenceTxns, async (presence) => {
await waitFor(50) await waitFor(250)
let offerIndex = offeringTrades.findIndex((offeringTrade) => offeringTrade.qortalCreatorTradeAddress === presence.address) let offerIndex = offeringTrades.findIndex((offeringTrade) => offeringTrade.qortalCreatorTradeAddress === presence.address)
offerIndex !== -1 ? (offeringTrades[offerIndex].lastSeen = presence.timestamp) : null offerIndex !== -1 ? (offeringTrades[offerIndex].lastSeen = presence.timestamp) : null
}) })
@ -1981,7 +1918,7 @@ class TradePortal extends LitElement {
if (tradePresenceTxns !== null) { if (tradePresenceTxns !== null) {
await asyncForEach(tradePresenceTxns, async (tradePresence) => { await asyncForEach(tradePresenceTxns, async (tradePresence) => {
await waitFor(50) await waitFor(250)
let offerIndex = offeringTrades.findIndex((offeringTrade) => offeringTrade.qortalCreatorTradeAddress === tradePresence.tradeAddress) let offerIndex = offeringTrades.findIndex((offeringTrade) => offeringTrade.qortalCreatorTradeAddress === tradePresence.tradeAddress)
offerIndex !== -1 ? (offeringTrades[offerIndex].tradePresenceExpiry = tradePresence.timestamp) : null offerIndex !== -1 ? (offeringTrades[offerIndex].tradePresenceExpiry = tradePresence.timestamp) : null
}) })
@ -2001,7 +1938,7 @@ class TradePortal extends LitElement {
const socket = new WebSocket(socketLink) const socket = new WebSocket(socketLink)
// Open Connection // Open Connection
socket.onopen = () => { socket.onopen = () => {
setTimeout(pingSocket, 50) setTimeout(pingSocket, 250)
tradeOffersSocketCounter += 1 tradeOffersSocketCounter += 1
} }
// Message Event // Message Event
@ -2038,7 +1975,7 @@ class TradePortal extends LitElement {
const socket = new WebSocket(socketLink) const socket = new WebSocket(socketLink)
// Open Connection // Open Connection
socket.onopen = () => { socket.onopen = () => {
setTimeout(pingSocket, 50) setTimeout(pingSocket, 250)
} }
// Message Event // Message Event
socket.onmessage = (e) => { socket.onmessage = (e) => {
@ -2072,7 +2009,7 @@ class TradePortal extends LitElement {
const socket = new WebSocket(socketLink) const socket = new WebSocket(socketLink)
// Open Connection // Open Connection
socket.onopen = () => { socket.onopen = () => {
setTimeout(pingSocket, 50) setTimeout(pingSocket, 250)
} }
// Message Event // Message Event
socket.onmessage = (e) => { socket.onmessage = (e) => {
@ -2103,7 +2040,7 @@ class TradePortal extends LitElement {
const socket = new WebSocket(socketLink) const socket = new WebSocket(socketLink)
// Open Connection // Open Connection
socket.onopen = () => { socket.onopen = () => {
setTimeout(pingSocket, 50) setTimeout(pingSocket, 250)
} }
// Message Event // Message Event
socket.onmessage = (e) => { socket.onmessage = (e) => {
@ -2628,18 +2565,12 @@ class TradePortal extends LitElement {
const modifiers = [ const modifiers = [
{ searchValue: 'NODEURL', replaceValue: nodeUrl }, { searchValue: 'NODEURL', replaceValue: nodeUrl },
{ searchValue: 'FOREIGN_BLOCKCHAIN', replaceValue: this.selectedCoin, }, { searchValue: 'FOREIGN_BLOCKCHAIN', replaceValue: this.selectedCoin },
] ]
workers.get(this.selectedCoin).tradesConnectedWorker = this.inlineWorker(this.initSocket, modifiers) workers.get(this.selectedCoin).tradesConnectedWorker = this.inlineWorker(this.initSocket, modifiers)
workers.get(this.selectedCoin).tradesConnectedWorker.addEventListener( workers.get(this.selectedCoin).tradesConnectedWorker.addEventListener('message', function (event) { handleMessage(event.data) }, { passive: true })
'message',
function (event) {
handleMessage(event.data)
},
{ passive: true }
)
workers.get(this.selectedCoin).tradesConnectedWorker.postMessage({ type: "set_coin", content: this.selectedCoin }) workers.get(this.selectedCoin).tradesConnectedWorker.postMessage({ type: "set_coin", content: this.selectedCoin })
} }
@ -2758,4 +2689,4 @@ class TradePortal extends LitElement {
} }
} }
window.customElements.define('trade-portal', TradePortal) window.customElements.define('trade-portal', TradePortal)