mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-02-11 17:55:51 +00:00
Minor fixes
- Removed start minting button from sidebar - Added disable sync indicator popup under settings - Fixed colors - Added translations
This commit is contained in:
parent
046c3832ad
commit
7669b1caf0
@ -70,7 +70,7 @@ html {
|
||||
--login-border-50pct: rgba(0, 167, 245, 0.5);
|
||||
--login-border-10pct: rgba(0, 167, 245, 0.1);
|
||||
--login-button: rgb(3, 169, 244);
|
||||
--accent-color: #03a9f4;
|
||||
--general-color-blue: #03a9f4;
|
||||
--qchat-name: #03a9f4;
|
||||
--qchat-my-name: #05be0e;
|
||||
}
|
||||
@ -147,7 +147,7 @@ html[theme="dark"] {
|
||||
--login-border-50pct: rgba(0, 167, 245, 0.5);
|
||||
--login-border-10pct: rgba(0, 167, 245, 0.1);
|
||||
--login-button: rgb(3, 169, 244);
|
||||
--accent-color: #03a9f4;
|
||||
--general-color-blue: #03a9f4;
|
||||
--qchat-name: #03a9f4;
|
||||
--qchat-my-name: #05be0e;
|
||||
}
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR-Wallet nicht initialisiert!",
|
||||
"arrr2": "Bitte gehen Sie zur Registerkarte „Wallet“ und initialisieren Sie zuerst Ihre arrr-Wallet.",
|
||||
"arrr3": "Core-Update erforderlich!",
|
||||
"arrr4": "Um den privaten Schlüssel Ihrer arrr-Wallet zu speichern, benötigen Sie zuerst ein Core-Update!"
|
||||
"arrr4": "Um den privaten Schlüssel Ihrer arrr-Wallet zu speichern, benötigen Sie zuerst ein Core-Update!",
|
||||
"sync_indicator": "Synchronisierungsanzeige-Popup deaktivieren"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Blockhöhe",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "¡Cartera ARRR no inicializada!",
|
||||
"arrr2": "Por favor, vaya a la pestaña de billetera e inicialice su billetera arrr primero.",
|
||||
"arrr3": "¡Necesita actualización principal!",
|
||||
"arrr4": "¡Para guardar la clave privada de tu billetera arrr, primero necesitas una actualización básica!"
|
||||
"arrr4": "¡Para guardar la clave privada de tu billetera arrr, primero necesitas una actualización básica!",
|
||||
"sync_indicator": "Desactivar la ventana emergente del indicador de sincronización"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Altura del Bloque",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR rahakott pole initsialiseeritud!",
|
||||
"arrr2": "Minge rahakoti vahekaardile ja lähtestage esmalt oma arrr rahakott.",
|
||||
"arrr3": "Vaja põhivärskendust!",
|
||||
"arrr4": "Oma arrr rahakoti privaatvõtme salvestamiseks vajate esmalt põhivärskendust!"
|
||||
"arrr4": "Oma arrr rahakoti privaatvõtme salvestamiseks vajate esmalt põhivärskendust!",
|
||||
"sync_indicator": "Keela sünkroonimisindikaatori hüpikaken"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Ploki kõrgus",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR-lompakkoa ei ole alustettu!",
|
||||
"arrr2": "Siirry lompakko-välilehdelle ja nollaa ensin ARRR-lompakkosi.",
|
||||
"arrr3": "Tarvitaan iso päivitys!",
|
||||
"arrr4": "Jotta voit tallentaa ARRR-lompakkosi yksityisen avaimesi, tarvitset ensin pääpäivityksen!"
|
||||
"arrr4": "Jotta voit tallentaa ARRR-lompakkosi yksityisen avaimesi, tarvitset ensin pääpäivityksen!",
|
||||
"sync_indicator": "Poista synkronoinnin ilmaisimen ponnahdusikkuna"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Lohkon korkeus",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Portefeuille ARRR non initialisé !",
|
||||
"arrr2": "Veuillez aller dans l'onglet Portefeuille et initialiser d'abord votre portefeuille arrr.",
|
||||
"arrr3": "Besoin d'une mise à jour principale !",
|
||||
"arrr4": "Pour sauvegarder la clé privée de votre portefeuille arrr, vous avez d'abord besoin d'une mise à jour principale !"
|
||||
"arrr4": "Pour sauvegarder la clé privée de votre portefeuille arrr, vous avez d'abord besoin d'une mise à jour principale !",
|
||||
"sync_indicator": "Désactiver la fenêtre contextuelle de l'indicateur de synchronisation"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Hauteur de bloc",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR वॉलेट प्रारंभ नहीं हुआ!",
|
||||
"arrr2": "कृपया वॉलेट टैब पर जाएं और पहले अपना Arrr वॉलेट प्रारंभ करें।",
|
||||
"arrr3": "मुख्य अद्यतन की आवश्यकता है!",
|
||||
"arrr4": "अपने Arrr वॉलेट की निजी कुंजी को सहेजने के लिए आपको पहले एक कोर अपडेट की आवश्यकता है!"
|
||||
"arrr4": "अपने Arrr वॉलेट की निजी कुंजी को सहेजने के लिए आपको पहले एक कोर अपडेट की आवश्यकता है!",
|
||||
"sync_indicator": "सिंक संकेतक पॉपअप अक्षम करें"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "ब्लॉक ऊँचाई",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Novčanik ARRR nije inicijaliziran!",
|
||||
"arrr2": "Idite na karticu novčanika i prvo inicijalizirajte svoj arrr novčanik.",
|
||||
"arrr3": "Potrebno je ažuriranje jezgre!",
|
||||
"arrr4": "Da biste spremili privatni ključ vašeg arrr novčanika, prvo trebate ažurirati jezgru!"
|
||||
"arrr4": "Da biste spremili privatni ključ vašeg arrr novčanika, prvo trebate ažurirati jezgru!",
|
||||
"sync_indicator": "Onemogući skočni prozor indikatora sinkronizacije"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Visina bloka",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR Wallet nincs inicializálva!",
|
||||
"arrr2": "Kérjük, lépjen a Wallet fülre, és először inicializálja arrr pénztárcáját.",
|
||||
"arrr3": "Alapfrissítésre van szükség!",
|
||||
"arrr4": "Az arrr pénztárca privát kulcsának mentéséhez először egy alapvető frissítésre van szükség!"
|
||||
"arrr4": "Az arrr pénztárca privát kulcsának mentéséhez először egy alapvető frissítésre van szükség!",
|
||||
"sync_indicator": "Szinkronizálásjelző előugró ablak letiltása"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Blokk Magassága",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Portafoglio ARRR non inizializzato!",
|
||||
"arrr2": "Vai alla scheda Portafoglio e inizializza prima il tuo portafoglio arrr.",
|
||||
"arrr3": "È necessario l'aggiornamento del core!",
|
||||
"arrr4": "Per salvare la chiave privata del tuo portafoglio arrr devi prima aggiornare il core!"
|
||||
"arrr4": "Per salvare la chiave privata del tuo portafoglio arrr devi prima aggiornare il core!",
|
||||
"sync_indicator": "Disabilita il popup dell'indicatore di sincronizzazione"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Altezza blocco",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR ウォレットが初期化されていません!",
|
||||
"arrr2": "ウォレットタブに移動して、まずarrrウォレットを初期化してください。",
|
||||
"arrr3": "コアのアップデートが必要です!",
|
||||
"arrr4": "arrr ウォレットの秘密キーを保存するには、まずコアのアップデートが必要です!"
|
||||
"arrr4": "arrr ウォレットの秘密キーを保存するには、まずコアのアップデートが必要です!",
|
||||
"sync_indicator": "同期インジケーターのポップアップを無効にする"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "ブロック高",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR 지갑이 초기화되지 않았습니다!",
|
||||
"arrr2": "지갑 탭으로 이동하여 먼저 arrr 지갑을 초기화하세요.",
|
||||
"arrr3": "핵심 업데이트가 필요합니다!",
|
||||
"arrr4": "arrr 지갑의 개인 키를 저장하려면 먼저 핵심 업데이트가 필요합니다!"
|
||||
"arrr4": "arrr 지갑의 개인 키를 저장하려면 먼저 핵심 업데이트가 필요합니다!",
|
||||
"sync_indicator": "동기화 표시 팝업 비활성화"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "블록 높이",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR portefeuille is niet geïnitialiseerd!",
|
||||
"arrr2": "Ga naar de portefeuille-tab en initialiseer eerst jouw ARRR portefeuille.",
|
||||
"arrr3": "De 'core' heeft een update nodig!",
|
||||
"arrr4": "Om de privé-sleutel van jouw ARRR portefeuille te kunnen bewaren, moet je voor de 'core' eerst een update installeren!"
|
||||
"arrr4": "Om de privé-sleutel van jouw ARRR portefeuille te kunnen bewaren, moet je voor de 'core' eerst een update installeren!",
|
||||
"sync_indicator": "Synchronisatie-indicator pop-up uitschakelen"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Blokhoogte",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR-lommebok ikke initialisert !",
|
||||
"arrr2": "Vennligst gå til lommebok-fanen og initialiser arrr-lommeboken først.",
|
||||
"arrr3": "Trenger kjerneoppdatering!",
|
||||
"arrr4": "For å lagre den private nøkkelen til arrr-lommeboken din trenger du en kjerneoppdatering først!"
|
||||
"arrr4": "For å lagre den private nøkkelen til arrr-lommeboken din trenger du en kjerneoppdatering først!",
|
||||
"sync_indicator": "Deaktiver popup for synkroniseringsindikator"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Blokkhøyde",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Portfel ARRR nie został zainicjowany!",
|
||||
"arrr2": "Przejdź do zakładki portfela i najpierw zainicjalizuj swój portfel arrr.",
|
||||
"arrr3": "Potrzebujesz aktualizacji rdzenia!",
|
||||
"arrr4": "Aby zapisać klucz prywatny swojego portfela arrr, potrzebujesz najpierw aktualizacji rdzenia!"
|
||||
"arrr4": "Aby zapisać klucz prywatny swojego portfela arrr, potrzebujesz najpierw aktualizacji rdzenia!",
|
||||
"sync_indicator": "Wyłącz wyskakujące okienko wskaźnika synchronizacji"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Wysokość bloku",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Carteira ARRR não inicializada!",
|
||||
"arrr2": "Por favor, vá para a aba carteira e inicialize sua carteira arrr primeiro.",
|
||||
"arrr3": "Precisa de atualização principal!",
|
||||
"arrr4": "Para salvar a chave privada da sua carteira arrr você precisa primeiro de uma atualização principal!"
|
||||
"arrr4": "Para salvar a chave privada da sua carteira arrr você precisa primeiro de uma atualização principal!",
|
||||
"sync_indicator": "Desativar pop-up do indicador de sincronização"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Altura do Bloco",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Portoletul ARRR nu este inițializat !",
|
||||
"arrr2": "Vă rugăm să accesați fila Portofel și să inițializați mai întâi portofelul arrr.",
|
||||
"arrr3": "Am nevoie de actualizare de bază !",
|
||||
"arrr4": "Pentru a salva cheia privată a portofelului dvs. arrr, aveți nevoie mai întâi de o actualizare de bază !"
|
||||
"arrr4": "Pentru a salva cheia privată a portofelului dvs. arrr, aveți nevoie mai întâi de o actualizare de bază !",
|
||||
"sync_indicator": "Dezactivați fereastra pop-up indicator de sincronizare"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Dimensiunea blocului",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR novčanik nije inicijalizovan!",
|
||||
"arrr2": "Molim vas idite na karticu Novčanik i prvo inicijalizujte svoj arrr novčanik.",
|
||||
"arrr3": "Potrebno je ažuriranje jezgra!",
|
||||
"arrr4": "Da biste sačuvali privatni ključ vašeg arrr novčanika, prvo vam je potrebno ažuriranje jezgra!"
|
||||
"arrr4": "Da biste sačuvali privatni ključ vašeg arrr novčanika, prvo vam je potrebno ažuriranje jezgra!",
|
||||
"sync_indicator": "Onemogući iskačući prozor indikatora sinhronizacije"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Visina Bloka",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "Кошелек ARRR не инициализирован!",
|
||||
"arrr2": "Пожалуйста, перейдите на вкладку кошелька и сначала инициализируйте свой кошелек arrr.",
|
||||
"arrr3": "Требуется обновление ядра!",
|
||||
"arrr4": "Чтобы сохранить закрытый ключ вашего кошелька arrr, вам сначала необходимо обновить ядро!"
|
||||
"arrr4": "Чтобы сохранить закрытый ключ вашего кошелька arrr, вам сначала необходимо обновить ядро!",
|
||||
"sync_indicator": "Отключить всплывающее окно индикатора синхронизации"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Высота блока",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR Wallet Not Initialized !",
|
||||
"arrr2": "Please go to wallet tab and initialize your arrr wallet first.",
|
||||
"arrr3": "Need Core Update !",
|
||||
"arrr4": "To save the private key of your arrr wallet you need a core update first !"
|
||||
"arrr4": "To save the private key of your arrr wallet you need a core update first !",
|
||||
"sync_indicator": "Disable sync indicator popup"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "Block Height",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR 钱包未初始化!",
|
||||
"arrr2": "请先进入钱包选项卡并初始化您的arrr钱包。",
|
||||
"arrr3": "需要核心更新!",
|
||||
"arrr4": "要保存你的 arr 钱包的私钥,你需要先进行核心更新!"
|
||||
"arrr4": "要保存你的 arr 钱包的私钥,你需要先进行核心更新!",
|
||||
"sync_indicator": "禁用同步指示器弹出窗口"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "区块高度",
|
||||
|
@ -213,7 +213,8 @@
|
||||
"arrr1": "ARRR 錢包未初始化!",
|
||||
"arrr2": "請先進入錢包標籤並初始化您的arrr錢包。",
|
||||
"arrr3": "需要核心更新!",
|
||||
"arrr4": "要儲存你的 arr 錢包的私鑰,你需要先進行核心更新!"
|
||||
"arrr4": "要儲存你的 arr 錢包的私鑰,你需要先進行核心更新!",
|
||||
"sync_indicator": "停用同步指示器彈出視窗"
|
||||
},
|
||||
"appinfo": {
|
||||
"blockheight": "區塊高度",
|
||||
|
@ -35,7 +35,6 @@ import './search-modal.js'
|
||||
import './user-info-view/user-info-view.js'
|
||||
import '../functional-components/side-menu.js'
|
||||
import '../functional-components/side-menu-item.js'
|
||||
import './start-minting.js'
|
||||
import './notification-view/notification-bell.js'
|
||||
import './notification-view/notification-bell-general.js'
|
||||
import './friends-view/friends-side-panel-parent.js'
|
||||
@ -147,7 +146,8 @@ class AppView extends connect(store)(LitElement) {
|
||||
lockSet: { type: String },
|
||||
myLockScreenPass: { type: String },
|
||||
myLockScreenSet: { type: String },
|
||||
helperMessage: { type: String }
|
||||
helperMessage: { type: String },
|
||||
showSyncMessages: { type: Boolean }
|
||||
}
|
||||
}
|
||||
|
||||
@ -548,7 +548,6 @@ class AppView extends connect(store)(LitElement) {
|
||||
|
||||
getTourElements(){
|
||||
let els = {}
|
||||
console.log('this.shadowRoot.querySelector("core-sync-status")', this.shadowRoot.querySelector("core-sync-status"))
|
||||
const el1 = this.shadowRoot.querySelector("core-sync-status").shadowRoot.getElementById("core-sync-status-id")
|
||||
const el2 = this.shadowRoot.querySelector("show-plugin").shadowRoot.getElementById("showPluginId")
|
||||
const el3 = this.shadowRoot.querySelector("beginner-checklist").shadowRoot.getElementById("popover-notification")
|
||||
@ -625,7 +624,7 @@ class AppView extends connect(store)(LitElement) {
|
||||
</app-header>
|
||||
<show-plugin></show-plugin>
|
||||
<tour-component .getElements=${this.getTourElements}></tour-component>
|
||||
<sync-indicator ></sync-indicator>
|
||||
${!this.showSyncMessages ? html`<sync-indicator></sync-indicator>` : html``}
|
||||
</app-header-layout>
|
||||
</app-drawer-layout>
|
||||
<user-info-view></user-info-view>
|
||||
@ -698,6 +697,8 @@ class AppView extends connect(store)(LitElement) {
|
||||
|
||||
this.helperMessage = this.renderHelperPass()
|
||||
|
||||
this.showSyncMessages = store.getState().app.showSyncIndicator
|
||||
|
||||
this.salt = ''
|
||||
this.salt = Base58.encode(store.getState().app.wallet._addresses[0].keyPair.privateKey)
|
||||
|
||||
@ -2117,10 +2118,6 @@ class AppView extends connect(store)(LitElement) {
|
||||
|
||||
${this.renderNodeManagement()}
|
||||
</side-menu-item>
|
||||
|
||||
<div>
|
||||
<start-minting></start-minting>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
}
|
||||
@ -2806,6 +2803,7 @@ class AppView extends connect(store)(LitElement) {
|
||||
this.config = state.config
|
||||
this.urls = state.app.registeredUrls
|
||||
this.addressInfo = state.app.accountInfo.addressInfo
|
||||
this.showSyncMessages = state.app.showSyncIndicator
|
||||
|
||||
if (sideurl === "minting") {
|
||||
this.shadowRoot.getElementById('qminter').setAttribute('selected', 'selected')
|
||||
|
@ -1,9 +1,10 @@
|
||||
import { LitElement, html, css } from 'lit';
|
||||
import { store } from '../../store';
|
||||
import { connect } from 'pwa-helpers';
|
||||
import '@material/mwc-icon';
|
||||
import { translate } from '../../../translate';
|
||||
import { parentEpml } from '../show-plugin';
|
||||
import { LitElement, html, css } from 'lit'
|
||||
import { store } from '../../store'
|
||||
import { connect } from 'pwa-helpers'
|
||||
import { translate } from '../../../translate'
|
||||
import { parentEpml } from '../show-plugin'
|
||||
|
||||
import '@material/mwc-icon'
|
||||
|
||||
class SyncIndicator extends connect(store)(LitElement) {
|
||||
static get properties() {
|
||||
@ -11,20 +12,20 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
isBehind: { type: Boolean },
|
||||
blocksBehind: { type: Number },
|
||||
isSynchronizing: { type: Boolean },
|
||||
hasCoreRunning: { type: Boolean },
|
||||
};
|
||||
hasCoreRunning: { type: Boolean }
|
||||
}
|
||||
}
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
this.isBehind = null;
|
||||
this.blocksBehind = 0;
|
||||
this.nodeUrl = this.getNodeUrl();
|
||||
this.myNode = this.getMyNode();
|
||||
this.interval = null;
|
||||
this.hasCoreRunning = true;
|
||||
this.seenWelcomeSync = false;
|
||||
this.numberOfTries = 0;
|
||||
super()
|
||||
this.isBehind = null
|
||||
this.blocksBehind = 0
|
||||
this.nodeUrl = this.getNodeUrl()
|
||||
this.myNode = this.getMyNode()
|
||||
this.interval = null
|
||||
this.hasCoreRunning = true
|
||||
this.seenWelcomeSync = false
|
||||
this.numberOfTries = 0
|
||||
this.hasOpened = false
|
||||
}
|
||||
|
||||
@ -34,13 +35,15 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
--mdc-theme-text-primary-on-background: var(--black);
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
:host {
|
||||
box-sizing: border-box;
|
||||
position: fixed;
|
||||
bottom: 25px;
|
||||
bottom: 50px;
|
||||
right: 25px;
|
||||
z-index: 50000;
|
||||
}
|
||||
|
||||
.parent {
|
||||
width: 360px;
|
||||
padding: 10px;
|
||||
@ -52,11 +55,13 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
user-select: none;
|
||||
background: var(--white);
|
||||
}
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
gap: 10px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.column {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@ -78,34 +83,36 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
cursor: pointer;
|
||||
background-color: #03a8f475;
|
||||
}
|
||||
`;
|
||||
`
|
||||
}
|
||||
|
||||
async firstUpdated() {
|
||||
this.address = store.getState().app.selectedAddress.address
|
||||
|
||||
const seenWelcomeSync = JSON.parse(
|
||||
localStorage.getItem(`welcome-sync-${this.address}`) || 'false'
|
||||
);
|
||||
this.seenWelcomeSync = seenWelcomeSync;
|
||||
)
|
||||
|
||||
this.seenWelcomeSync = seenWelcomeSync
|
||||
}
|
||||
|
||||
getNodeUrl() {
|
||||
const myNode =
|
||||
window.parent.reduxStore.getState().app.nodeConfig.knownNodes[
|
||||
window.parent.reduxStore.getState().app.nodeConfig.node
|
||||
];
|
||||
]
|
||||
|
||||
const nodeUrl =
|
||||
myNode.protocol + '://' + myNode.domain + ':' + myNode.port;
|
||||
return nodeUrl;
|
||||
const nodeUrl = myNode.protocol + '://' + myNode.domain + ':' + myNode.port
|
||||
return nodeUrl
|
||||
}
|
||||
|
||||
getMyNode() {
|
||||
const myNode =
|
||||
window.parent.reduxStore.getState().app.nodeConfig.knownNodes[
|
||||
window.parent.reduxStore.getState().app.nodeConfig.node
|
||||
];
|
||||
]
|
||||
|
||||
return myNode;
|
||||
return myNode
|
||||
}
|
||||
|
||||
async getDaySummary() {
|
||||
@ -113,25 +120,25 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
this.fetchingSummary = true
|
||||
|
||||
|
||||
const endpointLastBlock = `${this.nodeUrl}/blocks/last`;
|
||||
const resLastBlock = await fetch(endpointLastBlock);
|
||||
const dataLastBlock = await resLastBlock.json();
|
||||
const timestampNow = Date.now();
|
||||
const currentBlockTimestamp = dataLastBlock.timestamp;
|
||||
const endpointLastBlock = `${this.nodeUrl}/blocks/last`
|
||||
const resLastBlock = await fetch(endpointLastBlock)
|
||||
const dataLastBlock = await resLastBlock.json()
|
||||
const timestampNow = Date.now()
|
||||
const currentBlockTimestamp = dataLastBlock.timestamp
|
||||
if (currentBlockTimestamp < timestampNow) {
|
||||
const diff = timestampNow - currentBlockTimestamp;
|
||||
const inSeconds = diff / 1000; // millisecs to secs
|
||||
const inBlocks = inSeconds / 70;
|
||||
this.blocksBehind = parseInt(inBlocks);
|
||||
const diff = timestampNow - currentBlockTimestamp
|
||||
const inSeconds = diff / 1000 // millisecs to secs
|
||||
const inBlocks = inSeconds / 70
|
||||
this.blocksBehind = parseInt(inBlocks)
|
||||
if (inBlocks >= 100) {
|
||||
this.isBehind = true;
|
||||
this.isBehind = true
|
||||
} else {
|
||||
this.isBehind = false;
|
||||
this.blocksBehind = 0;
|
||||
this.isBehind = false
|
||||
this.blocksBehind = 0
|
||||
}
|
||||
} else {
|
||||
this.blocksBehind = 0;
|
||||
this.isBehind = false;
|
||||
this.blocksBehind = 0
|
||||
this.isBehind = false
|
||||
}
|
||||
} catch (error) {} finally {
|
||||
this.fetchingSummary = false
|
||||
@ -144,11 +151,11 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
this.interval = setInterval(() => {
|
||||
if(this.fetchingSummary) return
|
||||
if (this.isBehind === false) {
|
||||
this.isBehind = null;
|
||||
clearInterval(this.interval);
|
||||
this.isBehind = null
|
||||
clearInterval(this.interval)
|
||||
}
|
||||
this.getDaySummary();
|
||||
}, 20000);
|
||||
this.getDaySummary()
|
||||
}, 20000)
|
||||
} catch (error) {}
|
||||
}
|
||||
|
||||
@ -161,30 +168,30 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
bubbles: true,
|
||||
composed: true,
|
||||
})
|
||||
);
|
||||
)
|
||||
}
|
||||
if (
|
||||
state.app.nodeStatus &&
|
||||
Object.keys(state.app.nodeStatus).length === 0
|
||||
) {
|
||||
if (this.numberOfTries > 5) {
|
||||
this.hasCoreRunning = false;
|
||||
this.hasCoreRunning = false
|
||||
} else {
|
||||
this.numberOfTries = this.numberOfTries + 1;
|
||||
this.numberOfTries = this.numberOfTries + 1
|
||||
}
|
||||
} else if(state.app.nodeStatus && state.app.nodeStatus.syncPercent === 100 && state.app.nodeStatus.syncPercent !== this.syncPercentage){
|
||||
this.syncPercentage = state.app.nodeStatus.syncPercent;
|
||||
this.isSynchronizing = false;
|
||||
this.syncPercentage = state.app.nodeStatus.syncPercent
|
||||
this.isSynchronizing = false
|
||||
|
||||
} else if (
|
||||
state.app.nodeStatus
|
||||
) {
|
||||
this.hasCoreRunning = true
|
||||
this.numberOfTries = 0
|
||||
this.syncPercentage = state.app.nodeStatus.syncPercent;
|
||||
this.syncPercentage = state.app.nodeStatus.syncPercent
|
||||
|
||||
if (state.app.nodeStatus.syncPercent !== 100) {
|
||||
this.isSynchronizing = true;
|
||||
this.isSynchronizing = true
|
||||
}
|
||||
|
||||
if (
|
||||
@ -193,20 +200,20 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
state.app.nodeStatus.isSynchronizing &&
|
||||
state.app.nodeStatus.syncPercent !== 100
|
||||
) {
|
||||
this.checkHowManyBlocksBehind();
|
||||
this.checkHowManyBlocksBehind()
|
||||
}
|
||||
} else {
|
||||
this.hasCoreRunning = true;
|
||||
this.hasCoreRunning = true
|
||||
}
|
||||
}
|
||||
|
||||
async bootstrap(){
|
||||
try {
|
||||
const endpoint = `${this.nodeUrl}/admin/bootstrap/?apiKey=${this.myNode.apiKey}`;
|
||||
const res = await fetch(endpoint);
|
||||
const data = await res.json();
|
||||
if(data === true){
|
||||
parentEpml.request('showSnackBar', get('tour.tour22'));
|
||||
const endpoint = `${this.nodeUrl}/admin/bootstrap/?apiKey=${this.myNode.apiKey}`
|
||||
const res = await fetch(endpoint)
|
||||
const data = await res.json()
|
||||
if (data === true) {
|
||||
parentEpml.request('showSnackBar', get('tour.tour22'))
|
||||
}
|
||||
} catch (error) {
|
||||
|
||||
@ -274,7 +281,8 @@ class SyncIndicator extends connect(store)(LitElement) {
|
||||
</div>
|
||||
`
|
||||
: "" }
|
||||
`;
|
||||
`
|
||||
}
|
||||
}
|
||||
customElements.define('sync-indicator', SyncIndicator);
|
||||
|
||||
customElements.define('sync-indicator', SyncIndicator)
|
||||
|
@ -22,10 +22,12 @@ import {
|
||||
allowQAPPAutoAuth,
|
||||
allowQAPPAutoFriendsList,
|
||||
allowQAPPAutoLists,
|
||||
allowShowSyncIndicator,
|
||||
removeAutoLoadImageChat,
|
||||
removeQAPPAutoAuth,
|
||||
removeQAPPAutoFriendsList,
|
||||
removeQAPPAutoLists,
|
||||
removeShowSyncIndicator,
|
||||
setNewNotification,
|
||||
setNewTab,
|
||||
setSideEffectAction,
|
||||
@ -47,7 +49,9 @@ window.reduxAction = {
|
||||
setNewNotification: setNewNotification,
|
||||
setSideEffectAction: setSideEffectAction,
|
||||
allowQAPPAutoFriendsList: allowQAPPAutoFriendsList,
|
||||
removeQAPPAutoFriendsList: removeQAPPAutoFriendsList
|
||||
removeQAPPAutoFriendsList: removeQAPPAutoFriendsList,
|
||||
allowShowSyncIndicator: allowShowSyncIndicator,
|
||||
removeShowSyncIndicator: removeShowSyncIndicator
|
||||
}
|
||||
|
||||
const animationDuration = 0.7 // Seconds
|
||||
|
@ -13,68 +13,56 @@ class WelcomePage extends LitElement {
|
||||
backDisabled: { type: Boolean, notify: true },
|
||||
backText: { type: String, notify: true },
|
||||
hideNav: { type: Boolean, notify: true },
|
||||
welcomeMessage: { type: String },
|
||||
theme: { type: String, reflect: true }
|
||||
}
|
||||
}
|
||||
|
||||
static get styles() {
|
||||
return [
|
||||
css`
|
||||
return css`
|
||||
* {
|
||||
--mdc-theme-primary: var(--login-button);
|
||||
--mdc-theme-secondary: var(--mdc-theme-primary);
|
||||
--mdc-button-outline-color: var(--accent-color);
|
||||
--mdc-button-outline-color: var(--general-color-blue);
|
||||
}
|
||||
|
||||
mwc-button {
|
||||
.button-outline {
|
||||
margin: 6px;
|
||||
width: 90%;
|
||||
max-width:90vw;
|
||||
margin: 4px;
|
||||
border-top: 0;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
.welcome-page {
|
||||
padding: 12px 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
`
|
||||
]
|
||||
}
|
||||
|
||||
constructor() {
|
||||
super()
|
||||
this.hideNav = true
|
||||
this.nextText = ''
|
||||
const welcomeMessage = 'Welcome to Qortal';
|
||||
this.welcomeMessage = welcomeMessage
|
||||
this.welcomeMessage = 'Welcome to Qortal'
|
||||
this.theme = localStorage.getItem('qortalTheme') ? localStorage.getItem('qortalTheme') : 'light'
|
||||
}
|
||||
|
||||
firstUpdated() {
|
||||
// ...
|
||||
}
|
||||
firstUpdated() {}
|
||||
|
||||
render() {
|
||||
return html`
|
||||
<style>
|
||||
#mobile-logo {}
|
||||
@media only screen and (min-width: ${getComputedStyle(document.body).getPropertyValue('--layout-breakpoint-tablet')}) {
|
||||
#mobile-logo {
|
||||
display:hidden;
|
||||
visibility:none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<div class='welcome-page' style="overflow:hidden;">
|
||||
<div id="mobile-logo"></div>
|
||||
<mwc-button @click=${() => this.navigate('login')} outlined style="border-top:0; border-bottom:0;">${translate("login.login")}</mwc-button>
|
||||
<mwc-button @click=${() => this.navigate('create-account')} outlined style="border-top:0; border-bottom:0;">${translate("login.createaccount")}</mwc-button>
|
||||
<div class="welcome-page">
|
||||
<mwc-button class="button-outline" @click=${() => this.navigate('login')} outlined>${translate("login.login")}</mwc-button>
|
||||
<mwc-button class="button-outline" @click=${() => this.navigate('create-account')} outlined>${translate("login.createaccount")}</mwc-button>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
|
||||
back() { }
|
||||
back() {}
|
||||
|
||||
next() { }
|
||||
next() {}
|
||||
|
||||
navigate(page) {
|
||||
this.dispatchEvent(new CustomEvent('navigate', {
|
||||
|
@ -1,20 +1,20 @@
|
||||
import {css, html, LitElement} from 'lit'
|
||||
import {connect} from 'pwa-helpers'
|
||||
import {store} from '../../store.js'
|
||||
import {allowShowSyncIndicator, removeShowSyncIndicator} from '../../redux/app/app-actions.js'
|
||||
import {doSetQChatNotificationConfig} from '../../redux/user/user-actions.js'
|
||||
import {translate} from '../../../translate/index.js'
|
||||
import isElectron from 'is-electron'
|
||||
|
||||
import '@material/mwc-checkbox'
|
||||
|
||||
|
||||
class NotificationsView extends connect(store)(LitElement) {
|
||||
static get properties() {
|
||||
return {
|
||||
notificationConfig: { type: Object },
|
||||
q_chatConfig: { type: Object },
|
||||
theme: { type: String, reflect: true },
|
||||
appNotificationList: {type: Array}
|
||||
appNotificationList: { type: Array }
|
||||
}
|
||||
}
|
||||
|
||||
@ -26,8 +26,8 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
this.appNotificationList = [] // Fetch the list of apps from local storage
|
||||
}
|
||||
|
||||
firstUpdated(){
|
||||
this.appNotificationList = this.getAppsFromStorage();
|
||||
firstUpdated() {
|
||||
this.appNotificationList = this.getAppsFromStorage()
|
||||
}
|
||||
|
||||
static get styles() {
|
||||
@ -54,6 +54,16 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
}
|
||||
}
|
||||
|
||||
.checkbox-row {
|
||||
position: relative;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
font-family: Montserrat, sans-serif;
|
||||
font-weight: 600;
|
||||
color: var(--black);
|
||||
}
|
||||
|
||||
.content-box {
|
||||
border: 1px solid #a1a1a1;
|
||||
padding: 10px 25px;
|
||||
@ -137,7 +147,9 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
<label
|
||||
for="qChatPlaySound"
|
||||
@click=${() => this.shadowRoot.getElementById('qChatPlaySound').click()}
|
||||
>${translate("settings.playsound")}</label>
|
||||
>
|
||||
${translate("settings.playsound")}
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div style="line-height: 3rem;">
|
||||
@ -145,20 +157,27 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
<label
|
||||
for="qChatShowNotification"
|
||||
@click=${() => this.shadowRoot.getElementById('qChatShowNotification').click()}
|
||||
>${translate("settings.shownotifications")}</label>
|
||||
>
|
||||
${translate("settings.shownotifications")}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content-box">
|
||||
<h4>${translate("settings.qappNotification1")}</h4>
|
||||
${this.appNotificationList.map((app)=> html`
|
||||
${this.appNotificationList.map((app) => html`
|
||||
<div style="display: flex; justify-content: space-between; margin-top: 10px;">
|
||||
${app}
|
||||
<button class="remove-button" @click=${() => this.removeApp(app)}>Remove</button>
|
||||
</div>
|
||||
`)}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="checkbox-row">
|
||||
<label for="syncIndicator" id="syncIndicatorLabel" style="color: var(--black);">
|
||||
${translate("settings.sync_indicator")}
|
||||
</label>
|
||||
<mwc-checkbox style="margin-right: -15px;" id="syncIndicator" @click=${(e) => this.checkForSyncMessages(e)} ?checked=${store.getState().app.showSyncIndicator}></mwc-checkbox>
|
||||
</div>
|
||||
${this.renderSetCoreButton()}
|
||||
</div>
|
||||
`
|
||||
@ -167,10 +186,10 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
getAppsFromStorage() {
|
||||
// Your method to fetch the list of apps from local storage
|
||||
// Example:
|
||||
const address= store.getState().app.selectedAddress.address
|
||||
const id = `appNotificationList-${address}`;
|
||||
const data = localStorage.getItem(id);
|
||||
return data ? Object.keys(JSON.parse(data)) : [];
|
||||
const address = store.getState().app.selectedAddress.address
|
||||
const id = `appNotificationList-${address}`
|
||||
const data = localStorage.getItem(id)
|
||||
return data ? Object.keys(JSON.parse(data)) : []
|
||||
}
|
||||
|
||||
removeApp(appName) {
|
||||
@ -205,6 +224,14 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
window.electronAPI.setStartCore()
|
||||
}
|
||||
|
||||
checkForSyncMessages(e) {
|
||||
if (e.target.checked) {
|
||||
store.dispatch(removeShowSyncIndicator(false))
|
||||
} else {
|
||||
store.dispatch(allowShowSyncIndicator(true))
|
||||
}
|
||||
}
|
||||
|
||||
stateChanged(state) {
|
||||
this.notificationConfig = state.user.notifications
|
||||
this.q_chatConfig = this.notificationConfig.q_chat
|
||||
@ -226,8 +253,6 @@ class NotificationsView extends connect(store)(LitElement) {
|
||||
store.dispatch(doSetQChatNotificationConfig(data))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
window.customElements.define('notifications-view', NotificationsView)
|
||||
|
@ -168,9 +168,10 @@ class SecurityView extends connect(store)(LitElement) {
|
||||
class="add-dev-button"
|
||||
title="${translate('tabmenu.tm18')}"
|
||||
@click=${this.openDevDialog}
|
||||
>${translate('tabmenu.tm38')}</button>
|
||||
>
|
||||
${translate('tabmenu.tm38')}
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
`
|
||||
}
|
||||
|
@ -25,7 +25,6 @@ registerTranslateConfig({
|
||||
loader: lang => fetch(`/language/${lang}.json`).then(res => res.json())
|
||||
})
|
||||
|
||||
|
||||
export const parentEpml = new Epml({ type: 'WINDOW', source: window.parent })
|
||||
|
||||
class ShowPlugin extends connect(store)(LitElement) {
|
||||
@ -43,7 +42,7 @@ class ShowPlugin extends connect(store)(LitElement) {
|
||||
chatLastSeen: { type: Array },
|
||||
chatHeads: { type: Array },
|
||||
proxyPort: { type: Number },
|
||||
isOpenDevDialog: {type: Boolean}
|
||||
isOpenDevDialog: { type: Boolean }
|
||||
}
|
||||
}
|
||||
|
||||
@ -211,7 +210,7 @@ class ShowPlugin extends connect(store)(LitElement) {
|
||||
font-weight: bold;
|
||||
background: none;
|
||||
border: none;
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
font-size: 2em;
|
||||
cursor: pointer;
|
||||
transition: color 0.3s;
|
||||
@ -229,7 +228,7 @@ class ShowPlugin extends connect(store)(LitElement) {
|
||||
max-height: 28px;
|
||||
padding: 5px 5px;
|
||||
font-size: 14px;
|
||||
background-color: var(--accent-color);
|
||||
background-color: var(--general-color-blue);
|
||||
color: white;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 3px;
|
||||
@ -248,7 +247,7 @@ class ShowPlugin extends connect(store)(LitElement) {
|
||||
.iconActive {
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
--mdc-icon-size: 24px;
|
||||
}
|
||||
|
||||
@ -260,7 +259,7 @@ class ShowPlugin extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
.tab:hover .iconInactive {
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
}
|
||||
|
||||
.count {
|
||||
@ -1078,7 +1077,7 @@ class NavBar extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
.resetIcon:hover {
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
@ -1092,7 +1091,7 @@ class NavBar extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
.searchIcon:hover {
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
@ -1106,7 +1105,7 @@ class NavBar extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
.importIcon:hover {
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
@ -1120,7 +1119,7 @@ class NavBar extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
.exportIcon:hover {
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
@ -1141,7 +1140,7 @@ class NavBar extends connect(store)(LitElement) {
|
||||
paper-dialog button {
|
||||
padding: 5px 10px;
|
||||
font-size: 18px;
|
||||
background-color: var(--accent-color);
|
||||
background-color: var(--general-color-blue);
|
||||
color: white;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 5px;
|
||||
@ -1175,7 +1174,7 @@ class NavBar extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
vaadin-text-field[focused]::part(input-field) {
|
||||
border-color: var(--accent-color);
|
||||
border-color: var(--general-color-blue);
|
||||
}
|
||||
`
|
||||
|
||||
|
@ -70,7 +70,7 @@ class SettingsPage extends connect(store)(LitElement) {
|
||||
display: inline-block;
|
||||
width: 150px;
|
||||
font-weight: 600;
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
@ -87,7 +87,7 @@ class SettingsPage extends connect(store)(LitElement) {
|
||||
}
|
||||
|
||||
.buttonBlue {
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
}
|
||||
|
||||
.floatleft {
|
||||
|
@ -22,7 +22,9 @@ import {
|
||||
UPDATE_NODE_STATUS,
|
||||
SET_PROFILE_DATA,
|
||||
ALLOW_QAPP_FRIENDS_LIST,
|
||||
REMOVE_QAPP_FRIENDS_LIST
|
||||
REMOVE_QAPP_FRIENDS_LIST,
|
||||
ALLOW_SHOW_SYNC_INDICATOR,
|
||||
REMOVE_SHOW_SYNC_INDICATOR
|
||||
} from '../app-action-types.js'
|
||||
|
||||
export const doUpdateBlockInfo = (blockObj) => {
|
||||
@ -164,18 +166,21 @@ export const setNewTab = (payload) => {
|
||||
payload
|
||||
}
|
||||
}
|
||||
|
||||
export const setNewNotification = (payload) => {
|
||||
return {
|
||||
type: SET_NEW_NOTIFICATION,
|
||||
payload
|
||||
}
|
||||
}
|
||||
export const setIsOpenDevDialog = (payload)=> {
|
||||
|
||||
export const setIsOpenDevDialog = (payload) => {
|
||||
return {
|
||||
type: IS_OPEN_DEV_DIALOG,
|
||||
payload
|
||||
}
|
||||
}
|
||||
|
||||
export const addTabInfo = (payload) => {
|
||||
return {
|
||||
type: ADD_TAB_INFO,
|
||||
@ -196,16 +201,31 @@ export const setSideEffectAction = (payload)=> {
|
||||
payload
|
||||
}
|
||||
}
|
||||
export const setProfileData = (payload)=> {
|
||||
|
||||
export const setProfileData = (payload) => {
|
||||
return {
|
||||
type: SET_PROFILE_DATA,
|
||||
payload
|
||||
}
|
||||
}
|
||||
|
||||
export const setCoinBalances = (payload)=> {
|
||||
export const setCoinBalances = (payload) => {
|
||||
return {
|
||||
type: SET_COIN_BALANCES,
|
||||
payload
|
||||
}
|
||||
}
|
||||
|
||||
export const allowShowSyncIndicator = (payload) => {
|
||||
return {
|
||||
type: ALLOW_SHOW_SYNC_INDICATOR,
|
||||
payload
|
||||
}
|
||||
}
|
||||
|
||||
export const removeShowSyncIndicator = (payload) => {
|
||||
return {
|
||||
type: REMOVE_SHOW_SYNC_INDICATOR,
|
||||
payload
|
||||
}
|
||||
}
|
||||
|
@ -34,6 +34,8 @@ export const IS_OPEN_DEV_DIALOG = 'IS_OPEN_DEV_DIALOG'
|
||||
export const SET_NEW_NOTIFICATION = 'SET_NEW_NOTIFICATION'
|
||||
export const SET_SIDE_EFFECT= 'SET_SIDE_EFFECT'
|
||||
export const SET_PROFILE_DATA = 'SET_PROFILE_DATA'
|
||||
export const SET_COIN_BALANCES= 'SET_COIN_BALANCES'
|
||||
export const ALLOW_QAPP_FRIENDS_LIST= 'ALLOW_QAPP_FRIENDS_LIST'
|
||||
export const REMOVE_QAPP_FRIENDS_LIST= 'REMOVE_QAPP_FRIENDS_LIST'
|
||||
export const SET_COIN_BALANCES = 'SET_COIN_BALANCES'
|
||||
export const ALLOW_QAPP_FRIENDS_LIST = 'ALLOW_QAPP_FRIENDS_LIST'
|
||||
export const REMOVE_QAPP_FRIENDS_LIST = 'REMOVE_QAPP_FRIENDS_LIST'
|
||||
export const ALLOW_SHOW_SYNC_INDICATOR = 'ALLOW_SHOW_SYNC_INDICATOR'
|
||||
export const REMOVE_SHOW_SYNC_INDICATOR = 'REMOVE_SHOW_SYNC_INDICATOR'
|
||||
|
@ -38,7 +38,9 @@ import {
|
||||
UPDATE_NODE_STATUS,
|
||||
SET_PROFILE_DATA,
|
||||
ALLOW_QAPP_FRIENDS_LIST,
|
||||
REMOVE_QAPP_FRIENDS_LIST
|
||||
REMOVE_QAPP_FRIENDS_LIST,
|
||||
ALLOW_SHOW_SYNC_INDICATOR,
|
||||
REMOVE_SHOW_SYNC_INDICATOR
|
||||
} from './app-action-types.js'
|
||||
import {initWorkersReducer} from './reducers/init-workers.js'
|
||||
import {loginReducer} from './reducers/login-reducer.js'
|
||||
@ -49,8 +51,6 @@ const chatLastSeen = localForage.createInstance({
|
||||
name: "chat-last-seen",
|
||||
});
|
||||
|
||||
|
||||
|
||||
const INITIAL_STATE = {
|
||||
loggedIn: false,
|
||||
drawerOpen: false,
|
||||
@ -88,6 +88,7 @@ const INITIAL_STATE = {
|
||||
qAPPAutoAuth: loadStateFromLocalStorage('qAPPAutoAuth') || false,
|
||||
qAPPAutoLists: loadStateFromLocalStorage('qAPPAutoLists') || false,
|
||||
qAPPFriendsList: loadStateFromLocalStorage('qAPPFriendsList') || false,
|
||||
showSyncIndicator: loadStateFromLocalStorage('showSyncIndicator') || false,
|
||||
chatLastSeen: [],
|
||||
newTab: null,
|
||||
tabInfo: {},
|
||||
@ -228,6 +229,7 @@ export default (state = INITIAL_STATE, action) => {
|
||||
qAPPAutoAuth: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case ALLOW_QAPP_AUTO_LISTS: {
|
||||
saveStateToLocalStorage("qAPPAutoLists", true)
|
||||
return {
|
||||
@ -266,6 +268,7 @@ export default (state = INITIAL_STATE, action) => {
|
||||
chatLastSeen: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case ADD_CHAT_LAST_SEEN: {
|
||||
const chatId = action.payload.key
|
||||
const timestamp = action.payload.timestamp
|
||||
@ -299,12 +302,14 @@ export default (state = INITIAL_STATE, action) => {
|
||||
newTab: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case IS_OPEN_DEV_DIALOG: {
|
||||
return {
|
||||
...state,
|
||||
isOpenDevDialog: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case ADD_TAB_INFO: {
|
||||
const newTabInfo = action.payload
|
||||
if (state.tabInfo[newTabInfo.id] && state.tabInfo[newTabInfo.id].name && newTabInfo.name === state.tabInfo[newTabInfo.id].name) break
|
||||
@ -319,6 +324,7 @@ export default (state = INITIAL_STATE, action) => {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
case SET_TAB_NOTIFICATIONS: {
|
||||
const count = action.payload.count
|
||||
const name = action.payload.name
|
||||
@ -346,18 +352,21 @@ export default (state = INITIAL_STATE, action) => {
|
||||
newNotification: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case SET_SIDE_EFFECT: {
|
||||
return {
|
||||
...state,
|
||||
sideEffectAction: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case SET_PROFILE_DATA: {
|
||||
return {
|
||||
...state,
|
||||
profileData: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case SET_COIN_BALANCES: {
|
||||
const copyBalances = {...state.coinBalances}
|
||||
copyBalances[action.payload.type] = {
|
||||
@ -370,6 +379,22 @@ export default (state = INITIAL_STATE, action) => {
|
||||
}
|
||||
}
|
||||
|
||||
case ALLOW_SHOW_SYNC_INDICATOR: {
|
||||
saveStateToLocalStorage("showSyncIndicator", true)
|
||||
return {
|
||||
...state,
|
||||
showSyncIndicator: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
case REMOVE_SHOW_SYNC_INDICATOR: {
|
||||
saveStateToLocalStorage("showSyncIndicator", false)
|
||||
return {
|
||||
...state,
|
||||
showSyncIndicator: action.payload
|
||||
}
|
||||
}
|
||||
|
||||
default:
|
||||
return state
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ export const chatStyles = css`
|
||||
|
||||
.forwarded-text {
|
||||
user-select: none;
|
||||
color: var(--accent-color);
|
||||
color: var(--general-color-blue);
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user