refactor: 迁移 composables 到 common 目录
This commit is contained in:
parent
a61ec9c71b
commit
77cfb43df6
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useGreyAndColorWeakness } from "@/composables/useGreyAndColorWeakness"
|
import { useGreyAndColorWeakness } from "@@/composables/useGreyAndColorWeakness"
|
||||||
import { useTheme } from "@/composables/useTheme"
|
import { useTheme } from "@@/composables/useTheme"
|
||||||
import { ElNotification } from "element-plus"
|
import { ElNotification } from "element-plus"
|
||||||
import zhCn from "element-plus/es/locale/lang/zh-cn" // Element Plus 中文包
|
import zhCn from "element-plus/es/locale/lang/zh-cn" // Element Plus 中文包
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useDevice } from "@/composables/useDevice"
|
import { useDevice } from "@@/composables/useDevice"
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
total: number
|
total: number
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { ElScrollbar } from "element-plus"
|
import type { ElScrollbar } from "element-plus"
|
||||||
import type { RouteRecordName, RouteRecordRaw } from "vue-router"
|
import type { RouteRecordName, RouteRecordRaw } from "vue-router"
|
||||||
import { useDevice } from "@/composables/useDevice"
|
|
||||||
import { usePermissionStore } from "@/pinia/stores/permission"
|
import { usePermissionStore } from "@/pinia/stores/permission"
|
||||||
import { isExternal } from "@/utils/validate"
|
import { isExternal } from "@/utils/validate"
|
||||||
|
import { useDevice } from "@@/composables/useDevice"
|
||||||
import { ElMessage } from "element-plus"
|
import { ElMessage } from "element-plus"
|
||||||
import { cloneDeep, debounce } from "lodash-es"
|
import { cloneDeep, debounce } from "lodash-es"
|
||||||
import { computed, ref, shallowRef } from "vue"
|
import { computed, ref, shallowRef } from "vue"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { ThemeName } from "@/composables/useTheme"
|
import type { ThemeName } from "@@/composables/useTheme"
|
||||||
import { useTheme } from "@/composables/useTheme"
|
import { useTheme } from "@@/composables/useTheme"
|
||||||
import { MagicStick } from "@element-plus/icons-vue"
|
import { MagicStick } from "@element-plus/icons-vue"
|
||||||
|
|
||||||
const { themeList, activeThemeName, setTheme } = useTheme()
|
const { themeList, activeThemeName, setTheme } = useTheme()
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { RouteLocationMatched } from "vue-router"
|
import type { RouteLocationMatched } from "vue-router"
|
||||||
import { useRouteListener } from "@/composables/useRouteListener"
|
import { useRouteListener } from "@@/composables/useRouteListener"
|
||||||
import { compile } from "path-to-regexp"
|
import { compile } from "path-to-regexp"
|
||||||
import { ref } from "vue"
|
import { ref } from "vue"
|
||||||
import { useRoute, useRouter } from "vue-router"
|
import { useRoute, useRouter } from "vue-router"
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import logo from "@@/assets/images/layouts/logo.png?url"
|
import logo from "@@/assets/images/layouts/logo.png?url"
|
||||||
import logoText1 from "@@/assets/images/layouts/logo-text-1.png?url"
|
import logoText1 from "@@/assets/images/layouts/logo-text-1.png?url"
|
||||||
import logoText2 from "@@/assets/images/layouts/logo-text-2.png?url"
|
import logoText2 from "@@/assets/images/layouts/logo-text-2.png?url"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
collapse?: boolean
|
collapse?: boolean
|
||||||
|
@ -1,6 +1,4 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useDevice } from "@/composables/useDevice"
|
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import { useAppStore } from "@/pinia/stores/app"
|
import { useAppStore } from "@/pinia/stores/app"
|
||||||
import { useSettingsStore } from "@/pinia/stores/settings"
|
import { useSettingsStore } from "@/pinia/stores/settings"
|
||||||
import { useUserStore } from "@/pinia/stores/user"
|
import { useUserStore } from "@/pinia/stores/user"
|
||||||
@ -8,6 +6,8 @@ import Notify from "@@/components/Notify/index.vue"
|
|||||||
import Screenfull from "@@/components/Screenfull/index.vue"
|
import Screenfull from "@@/components/Screenfull/index.vue"
|
||||||
import SearchMenu from "@@/components/SearchMenu/index.vue"
|
import SearchMenu from "@@/components/SearchMenu/index.vue"
|
||||||
import ThemeSwitch from "@@/components/ThemeSwitch/index.vue"
|
import ThemeSwitch from "@@/components/ThemeSwitch/index.vue"
|
||||||
|
import { useDevice } from "@@/composables/useDevice"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
import { UserFilled } from "@element-plus/icons-vue"
|
import { UserFilled } from "@element-plus/icons-vue"
|
||||||
import { storeToRefs } from "pinia"
|
import { storeToRefs } from "pinia"
|
||||||
import { useRouter } from "vue-router"
|
import { useRouter } from "vue-router"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import { LayoutModeEnum } from "@/constants/app-key"
|
import { LayoutModeEnum } from "@/constants/app-key"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
|
|
||||||
const { isLeft, isTop, isLeftTop, setLayoutMode } = useLayoutMode()
|
const { isLeft, isTop, isLeftTop, setLayoutMode } = useLayoutMode()
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import { useSettingsStore } from "@/pinia/stores/settings"
|
import { useSettingsStore } from "@/pinia/stores/settings"
|
||||||
import { removeLayoutsConfig } from "@/utils/cache/local-storage"
|
import { removeLayoutsConfig } from "@/utils/cache/local-storage"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
import { Refresh } from "@element-plus/icons-vue"
|
import { Refresh } from "@element-plus/icons-vue"
|
||||||
import { storeToRefs } from "pinia"
|
import { storeToRefs } from "pinia"
|
||||||
import { watchEffect } from "vue"
|
import { watchEffect } from "vue"
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useDevice } from "@/composables/useDevice"
|
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import { useAppStore } from "@/pinia/stores/app"
|
import { useAppStore } from "@/pinia/stores/app"
|
||||||
import { usePermissionStore } from "@/pinia/stores/permission"
|
import { usePermissionStore } from "@/pinia/stores/permission"
|
||||||
import { useSettingsStore } from "@/pinia/stores/settings"
|
import { useSettingsStore } from "@/pinia/stores/settings"
|
||||||
import { getCssVar } from "@/utils/css"
|
import { getCssVar } from "@/utils/css"
|
||||||
|
import { useDevice } from "@@/composables/useDevice"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
import { computed } from "vue"
|
import { computed } from "vue"
|
||||||
import { useRoute } from "vue-router"
|
import { useRoute } from "vue-router"
|
||||||
import { Logo } from "../index"
|
import { Logo } from "../index"
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { ElScrollbar } from "element-plus"
|
import type { ElScrollbar } from "element-plus"
|
||||||
import type { RouterLink } from "vue-router"
|
import type { RouterLink } from "vue-router"
|
||||||
import { useRouteListener } from "@/composables/useRouteListener"
|
|
||||||
import { useSettingsStore } from "@/pinia/stores/settings"
|
import { useSettingsStore } from "@/pinia/stores/settings"
|
||||||
import Screenfull from "@@/components/Screenfull/index.vue"
|
import Screenfull from "@@/components/Screenfull/index.vue"
|
||||||
|
import { useRouteListener } from "@@/composables/useRouteListener"
|
||||||
import { ArrowLeft, ArrowRight } from "@element-plus/icons-vue"
|
import { ArrowLeft, ArrowRight } from "@element-plus/icons-vue"
|
||||||
import { nextTick, ref } from "vue"
|
import { nextTick, ref } from "vue"
|
||||||
import { useRoute } from "vue-router"
|
import { useRoute } from "vue-router"
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { TagView } from "@/pinia/stores/tags-view"
|
import type { TagView } from "@/pinia/stores/tags-view"
|
||||||
import type { RouteLocationNormalizedLoaded, RouteRecordRaw, RouterLink } from "vue-router"
|
import type { RouteLocationNormalizedLoaded, RouteRecordRaw, RouterLink } from "vue-router"
|
||||||
import { useRouteListener } from "@/composables/useRouteListener"
|
|
||||||
import { usePermissionStore } from "@/pinia/stores/permission"
|
import { usePermissionStore } from "@/pinia/stores/permission"
|
||||||
import { useTagsViewStore } from "@/pinia/stores/tags-view"
|
import { useTagsViewStore } from "@/pinia/stores/tags-view"
|
||||||
|
import { useRouteListener } from "@@/composables/useRouteListener"
|
||||||
import { Close } from "@element-plus/icons-vue"
|
import { Close } from "@element-plus/icons-vue"
|
||||||
import path from "path-browserify"
|
import path from "path-browserify"
|
||||||
import { ref, watch } from "vue"
|
import { ref, watch } from "vue"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { useRouteListener } from "@/composables/useRouteListener"
|
|
||||||
import { DeviceEnum } from "@/constants/app-key"
|
import { DeviceEnum } from "@/constants/app-key"
|
||||||
import { useAppStore } from "@/pinia/stores/app"
|
import { useAppStore } from "@/pinia/stores/app"
|
||||||
|
import { useRouteListener } from "@@/composables/useRouteListener"
|
||||||
import { onBeforeMount, onBeforeUnmount, onMounted } from "vue"
|
import { onBeforeMount, onBeforeUnmount, onMounted } from "vue"
|
||||||
|
|
||||||
/** 参考 Bootstrap 的响应式设计将最大移动端宽度设置为 992 */
|
/** 参考 Bootstrap 的响应式设计将最大移动端宽度设置为 992 */
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useDevice } from "@/composables/useDevice"
|
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import { useWatermark } from "@/composables/useWatermark"
|
|
||||||
import { useSettingsStore } from "@/pinia/stores/settings"
|
import { useSettingsStore } from "@/pinia/stores/settings"
|
||||||
import { getCssVar, setCssVar } from "@/utils/css"
|
import { getCssVar, setCssVar } from "@/utils/css"
|
||||||
|
import { useDevice } from "@@/composables/useDevice"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
|
import { useWatermark } from "@@/composables/useWatermark"
|
||||||
import { storeToRefs } from "pinia"
|
import { storeToRefs } from "pinia"
|
||||||
import { watchEffect } from "vue"
|
import { watchEffect } from "vue"
|
||||||
import { RightPanel, Settings } from "./components"
|
import { RightPanel, Settings } from "./components"
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useDevice } from "@/composables/useDevice"
|
|
||||||
import { useLayoutMode } from "@/composables/useLayoutMode"
|
|
||||||
import { useAppStore } from "@/pinia/stores/app"
|
import { useAppStore } from "@/pinia/stores/app"
|
||||||
import { useSettingsStore } from "@/pinia/stores/settings"
|
import { useSettingsStore } from "@/pinia/stores/settings"
|
||||||
|
import { useDevice } from "@@/composables/useDevice"
|
||||||
|
import { useLayoutMode } from "@@/composables/useLayoutMode"
|
||||||
import { storeToRefs } from "pinia"
|
import { storeToRefs } from "pinia"
|
||||||
import { computed } from "vue"
|
import { computed } from "vue"
|
||||||
import { AppMain, NavigationBar, Sidebar, TagsView } from "../components"
|
import { AppMain, NavigationBar, Sidebar, TagsView } from "../components"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useFetchSelect } from "@/composables/useFetchSelect"
|
|
||||||
import { getSelectDataApi } from "@/http/apis/composable-demo/use-fetch-select"
|
import { getSelectDataApi } from "@/http/apis/composable-demo/use-fetch-select"
|
||||||
|
import { useFetchSelect } from "@@/composables/useFetchSelect"
|
||||||
|
|
||||||
const { loading, options, value } = useFetchSelect({
|
const { loading, options, value } = useFetchSelect({
|
||||||
api: getSelectDataApi
|
api: getSelectDataApi
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useFullscreenLoading } from "@/composables/useFullscreenLoading"
|
|
||||||
import { getErrorApi, getSuccessApi } from "@/http/apis/composable-demo/use-fullscreen-loading"
|
import { getErrorApi, getSuccessApi } from "@/http/apis/composable-demo/use-fullscreen-loading"
|
||||||
|
import { useFullscreenLoading } from "@@/composables/useFullscreenLoading"
|
||||||
import { ElMessage } from "element-plus"
|
import { ElMessage } from "element-plus"
|
||||||
|
|
||||||
const svg = `
|
const svg = `
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useWatermark } from "@/composables/useWatermark"
|
import { useWatermark } from "@@/composables/useWatermark"
|
||||||
import { ref } from "vue"
|
import { ref } from "vue"
|
||||||
|
|
||||||
const localRef = ref<HTMLElement | null>(null)
|
const localRef = ref<HTMLElement | null>(null)
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { CreateOrUpdateTableRequestData, TableData } from "@/http/apis/table/type"
|
import type { CreateOrUpdateTableRequestData, TableData } from "@/http/apis/table/type"
|
||||||
import type { FormInstance, FormRules } from "element-plus"
|
import type { FormInstance, FormRules } from "element-plus"
|
||||||
import { usePagination } from "@/composables/usePagination"
|
|
||||||
import { createTableDataApi, deleteTableDataApi, getTableDataApi, updateTableDataApi } from "@/http/apis/table"
|
import { createTableDataApi, deleteTableDataApi, getTableDataApi, updateTableDataApi } from "@/http/apis/table"
|
||||||
|
import { usePagination } from "@@/composables/usePagination"
|
||||||
import { CirclePlus, Delete, Download, Refresh, RefreshRight, Search } from "@element-plus/icons-vue"
|
import { CirclePlus, Delete, Download, Refresh, RefreshRight, Search } from "@element-plus/icons-vue"
|
||||||
import { ElMessage, ElMessageBox } from "element-plus"
|
import { ElMessage, ElMessageBox } from "element-plus"
|
||||||
import { cloneDeep } from "lodash-es"
|
import { cloneDeep } from "lodash-es"
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
import type { Router } from "vue-router"
|
import type { Router } from "vue-router"
|
||||||
import { setRouteChange } from "@/composables/useRouteListener"
|
|
||||||
import { useTitle } from "@/composables/useTitle"
|
|
||||||
import { usePermissionStore } from "@/pinia/stores/permission"
|
import { usePermissionStore } from "@/pinia/stores/permission"
|
||||||
import { useUserStore } from "@/pinia/stores/user"
|
import { useUserStore } from "@/pinia/stores/user"
|
||||||
import { routerConfig } from "@/router/config"
|
import { routerConfig } from "@/router/config"
|
||||||
import { isWhiteList } from "@/router/whitelist"
|
import { isWhiteList } from "@/router/whitelist"
|
||||||
import { getToken } from "@/utils/cache/cookies"
|
import { getToken } from "@/utils/cache/cookies"
|
||||||
|
import { setRouteChange } from "@@/composables/useRouteListener"
|
||||||
|
import { useTitle } from "@@/composables/useTitle"
|
||||||
import { ElMessage } from "element-plus"
|
import { ElMessage } from "element-plus"
|
||||||
import NProgress from "nprogress"
|
import NProgress from "nprogress"
|
||||||
import "nprogress/nprogress.css"
|
import "nprogress/nprogress.css"
|
||||||
|
2
src/utils/cache/local-storage.ts
vendored
2
src/utils/cache/local-storage.ts
vendored
@ -1,9 +1,9 @@
|
|||||||
// 统一处理 localStorage
|
// 统一处理 localStorage
|
||||||
|
|
||||||
import type { ThemeName } from "@/composables/useTheme"
|
|
||||||
import type { SidebarClosed, SidebarOpened } from "@/constants/app-key"
|
import type { SidebarClosed, SidebarOpened } from "@/constants/app-key"
|
||||||
import type { LayoutsConfig } from "@/layouts/config"
|
import type { LayoutsConfig } from "@/layouts/config"
|
||||||
import type { TagView } from "@/pinia/stores/tags-view"
|
import type { TagView } from "@/pinia/stores/tags-view"
|
||||||
|
import type { ThemeName } from "@@/composables/useTheme"
|
||||||
import { CacheKey } from "@/constants/cache-key"
|
import { CacheKey } from "@/constants/cache-key"
|
||||||
|
|
||||||
// #region 系统布局配置
|
// #region 系统布局配置
|
||||||
|
Loading…
x
Reference in New Issue
Block a user