+
+
![logo]()
+
{{ $t('global.app.title') }}
+
+
+ {{ currentNotificationContent }}
+
+
+
+
diff --git a/src/MobileApp.vue b/src/MobileApp.vue
index d959366f..eed463ce 100644
--- a/src/MobileApp.vue
+++ b/src/MobileApp.vue
@@ -10,11 +10,13 @@ import { f7ready } from 'framework7-vue';
import routes from './router/mobile.js';
import { mapStores } from 'pinia';
+import { useRootStore } from '@/stores/index.js';
import { useSettingsStore } from '@/stores/setting.js';
import { useUserStore } from '@/stores/user.js';
import { useTokensStore } from '@/stores/token.js';
import { useExchangeRatesStore } from '@/stores/exchangeRates.js';
+import assetConstants from '@/consts/asset.js';
import { isProduction } from '@/lib/version.js';
import { getTheme, isEnableAnimate } from '@/lib/settings.js';
import { loadMapAssets } from '@/lib/map/index.js';
@@ -35,6 +37,7 @@ export default {
return {
isProduction: isProduction(),
devCookiePath: isProduction() ? '' : '/dev/cookies',
+ notification: null,
f7params: {
name: 'ezBookkeeping',
theme: 'ios',
@@ -94,7 +97,37 @@ export default {
}
},
computed: {
- ...mapStores(useSettingsStore, useUserStore, useTokensStore, useExchangeRatesStore),
+ ...mapStores(useRootStore, useSettingsStore, useUserStore, useTokensStore, useExchangeRatesStore),
+ currentNotificationContent() {
+ return this.rootStore.currentNotification;
+ }
+ },
+ watch: {
+ currentNotificationContent: function (newValue) {
+ const self = this;
+
+ if (self.notification) {
+ self.notification.close();
+ self.notification.destroy();
+ self.notification = null;
+ }
+
+ if (newValue) {
+ f7ready((f7) => {
+ self.notification = f7.notification.create({
+ icon: `