From 0bddc5746edcbe62721c8d53004c2e699fde30d1 Mon Sep 17 00:00:00 2001 From: safavimohadeseh78 Date: Sun, 5 Jul 2026 15:24:00 +0200 Subject: [PATCH] Fix PWA registration, font loading, and Safari slider interactions. Configure module service worker registration, remove duplicate SW hook, correct IRANSans Black font path, and improve touch slider handling in trade and wallet forms. Co-authored-by: Cursor --- components.d.ts | 5 +++- src/App.vue | 2 -- src/assets/css/ant.less | 15 +++++++++++ src/assets/css/fonts.less | 4 +-- src/components/bg_main.vue | 6 ++--- src/views/base/copper&silver/index.vue | 27 ++++++++++++------- src/views/base/gold/index.vue | 27 ++++++++++++------- .../base/wallet/desktop/DesktopWalletView.vue | 25 ++++++++++------- .../base/wallet/mobile/MobileWalletView.vue | 25 ++++++++++------- vite.config.ts | 8 +++--- 10 files changed, 94 insertions(+), 50 deletions(-) diff --git a/components.d.ts b/components.d.ts index f316cdf..751269f 100644 --- a/components.d.ts +++ b/components.d.ts @@ -8,7 +8,6 @@ export {} declare module 'vue' { export interface GlobalComponents { AButton: typeof import('ant-design-vue/es')['Button'] - ACheckbox: typeof import('ant-design-vue/es')['Checkbox'] ADivider: typeof import('ant-design-vue/es')['Divider'] AForm: typeof import('ant-design-vue/es')['Form'] AFormItem: typeof import('ant-design-vue/es')['FormItem'] @@ -16,14 +15,17 @@ declare module 'vue' { AInputPassword: typeof import('ant-design-vue/es')['InputPassword'] AModal: typeof import('ant-design-vue/es')['Modal'] AppCreditLink: typeof import('./src/components/AppCreditLink.vue')['default'] + ARadio: typeof import('ant-design-vue/es')['Radio'] ARadioButton: typeof import('ant-design-vue/es')['RadioButton'] ARadioGroup: typeof import('ant-design-vue/es')['RadioGroup'] ASelect: typeof import('ant-design-vue/es')['Select'] ASelectOption: typeof import('ant-design-vue/es')['SelectOption'] ASlider: typeof import('ant-design-vue/es')['Slider'] ASpin: typeof import('ant-design-vue/es')['Spin'] + ASwitch: typeof import('ant-design-vue/es')['Switch'] ATag: typeof import('ant-design-vue/es')['Tag'] ATextarea: typeof import('ant-design-vue/es')['Textarea'] + ATooltip: typeof import('ant-design-vue/es')['Tooltip'] BaseDatePicker: typeof import('./src/components/BasicPacks/BaseDatePicker/src/BaseDatePicker.vue')['default'] Basic: typeof import('./src/components/BasicPacks/BaseDatePicker/src/datePick/demo/basic.vue')['default'] BasicActionSheet: typeof import('./src/components/BasicPacks/BasicActionSheet.vue')['default'] @@ -68,5 +70,6 @@ declare module 'vue' { TransactionSkeleton: typeof import('./src/components/TransactionSkeleton.vue')['default'] VanActionSheet: typeof import('vant/es')['ActionSheet'] VanDialog: typeof import('vant/es')['Dialog'] + VanField: typeof import('vant/es')['Field'] } } diff --git a/src/App.vue b/src/App.vue index d60c43d..e915b60 100644 --- a/src/App.vue +++ b/src/App.vue @@ -92,7 +92,6 @@ diff --git a/src/views/base/copper&silver/index.vue b/src/views/base/copper&silver/index.vue index 484f24b..58dafe6 100644 --- a/src/views/base/copper&silver/index.vue +++ b/src/views/base/copper&silver/index.vue @@ -69,14 +69,21 @@ - +
+ +
- +
+ +
@@ -608,7 +615,7 @@ onMounted(async () => { const form = ref({ goldCash: undefined, goldValue: undefined, - percentWallet: undefined + percentWallet: 0, }) const allowedAsciiCodeFloat = [46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57] const allowedAsciiCodeInt = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57] @@ -811,7 +818,7 @@ async function ok() { form.value = { goldValue: undefined, goldCash: undefined, - percentWallet: undefined + percentWallet: 0, } inputLock.value = null message.success('سفارش شما با موفقیت انجام شد') diff --git a/src/views/base/wallet/desktop/DesktopWalletView.vue b/src/views/base/wallet/desktop/DesktopWalletView.vue index f3e101a..fc1c5dc 100644 --- a/src/views/base/wallet/desktop/DesktopWalletView.vue +++ b/src/views/base/wallet/desktop/DesktopWalletView.vue @@ -62,15 +62,22 @@ {{ formatCashWalletBalanceText(usePriceWithoutType(walletStore?.walletInfo?.cash ?? 0)) }}

- +
+ +
diff --git a/src/views/base/wallet/mobile/MobileWalletView.vue b/src/views/base/wallet/mobile/MobileWalletView.vue index f93a358..0c78e47 100644 --- a/src/views/base/wallet/mobile/MobileWalletView.vue +++ b/src/views/base/wallet/mobile/MobileWalletView.vue @@ -66,15 +66,22 @@ {{ formatCashWalletBalanceText(usePriceWithoutType(walletStore?.walletInfo?.cash ?? 0)) }}
- +
+ +
diff --git a/vite.config.ts b/vite.config.ts index b81ca52..9e84b7c 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -18,21 +18,21 @@ export default defineConfig({ vue(), vueJsx(), VitePWA({ - //registerType: 'autoUpdate', + registerType: 'autoUpdate', devOptions: { - enabled: true + enabled: true, + type: 'module', }, workbox: { cleanupOutdatedCaches: true, clientsClaim: true, skipWaiting: true }, - mode: 'development', + strategies: 'injectManifest', base: '/', srcDir: 'src', filename: 'sw.ts', includeAssets: ['/favicon.png'], - strategies: 'injectManifest', manifest: { name: ``, short_name: ``,