Revert "perf(frontend): code-split heavy components to improve LCP"
Some checks are pending
Release 3X-UI / build (386) (push) Waiting to run
Release 3X-UI / build (amd64) (push) Waiting to run
Release 3X-UI / build (arm64) (push) Waiting to run
Release 3X-UI / build (armv5) (push) Waiting to run
Release 3X-UI / build (armv6) (push) Waiting to run
Release 3X-UI / build (armv7) (push) Waiting to run
Release 3X-UI / build (s390x) (push) Waiting to run
Release 3X-UI / Build for Windows (push) Waiting to run

This reverts commit 444b05cac9.
This commit is contained in:
MHSanaei 2026-05-10 17:45:05 +02:00
parent 94a7dbfe3c
commit 6efc4b0665
No known key found for this signature in database
GPG key ID: 7E4060F2FBE5AB7A
3 changed files with 20 additions and 14 deletions

View file

@ -1,9 +1,17 @@
<script setup>
import { computed, defineAsyncComponent } from 'vue';
import { computed } from 'vue';
import dayjs from 'dayjs';
import PersianDatePicker from 'vue3-persian-datetime-picker';
import { useDatepicker } from '@/composables/useDatepicker.js';
const PersianDatePicker = defineAsyncComponent(() => import('vue3-persian-datetime-picker'));
// Drop-in replacement for <a-date-picker> that swaps to a real Jalali
// calendar (vue3-persian-datetime-picker, backed by moment-jalaali)
// when the panel's "Calendar Type" setting is `jalalian`.
//
// The v-model contract matches AD-Vue: the parent works with a dayjs
// object (or null). For the persian picker we serialize to/from the
// `YYYY-MM-DD HH:mm:ss` string it expects so callers don't need to
// know which renderer is active.
const props = defineProps({
value: { type: [Object, null], default: null },

View file

@ -1,5 +1,5 @@
<script setup>
import { computed, defineAsyncComponent, onMounted, ref } from 'vue';
import { computed, onMounted, ref } from 'vue';
import { useI18n } from 'vue-i18n';
import { Modal, message } from 'ant-design-vue';
import {
@ -18,17 +18,16 @@ import AppSidebar from '@/components/AppSidebar.vue';
import CustomStatistic from '@/components/CustomStatistic.vue';
import { useNodeList } from '@/composables/useNodeList.js';
import InboundList from './InboundList.vue';
import InboundFormModal from './InboundFormModal.vue';
import ClientFormModal from './ClientFormModal.vue';
import ClientBulkModal from './ClientBulkModal.vue';
import InboundInfoModal from './InboundInfoModal.vue';
import QrCodeModal from './QrCodeModal.vue';
import TextModal from '@/components/TextModal.vue';
import PromptModal from '@/components/PromptModal.vue';
import { useInbounds } from './useInbounds.js';
import { useWebSocket } from '@/composables/useWebSocket.js';
const InboundFormModal = defineAsyncComponent(() => import('./InboundFormModal.vue'));
const ClientFormModal = defineAsyncComponent(() => import('./ClientFormModal.vue'));
const ClientBulkModal = defineAsyncComponent(() => import('./ClientBulkModal.vue'));
const InboundInfoModal = defineAsyncComponent(() => import('./InboundInfoModal.vue'));
const QrCodeModal = defineAsyncComponent(() => import('./QrCodeModal.vue'));
const TextModal = defineAsyncComponent(() => import('@/components/TextModal.vue'));
const PromptModal = defineAsyncComponent(() => import('@/components/PromptModal.vue'));
const { t } = useI18n();
const {

View file

@ -1,5 +1,5 @@
<script setup>
import { computed, defineAsyncComponent, onBeforeUnmount, onMounted, reactive, ref } from 'vue';
import { computed, onBeforeUnmount, onMounted, reactive, ref } from 'vue';
import { useI18n } from 'vue-i18n';
import { UserOutlined, LockOutlined, KeyOutlined, SettingOutlined } from '@ant-design/icons-vue';
@ -9,8 +9,7 @@ import {
currentTheme,
theme as themeState,
} from '@/composables/useTheme.js';
const ThemeSwitchLogin = defineAsyncComponent(() => import('@/components/ThemeSwitchLogin.vue'));
import ThemeSwitchLogin from '@/components/ThemeSwitchLogin.vue';
const { t } = useI18n();