diff --git a/src/main.ts b/src/main.ts index 21b407c1..35b236cb 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,28 +1,17 @@ import { createApp } from "vue"; import { createPinia } from "pinia"; - import App from "./App.vue"; import router from "./router"; -import "@halo-dev/components/dist/style.css"; -import "@/styles/tailwind.css"; -import { Dropdown, Menu, Tooltip, VClosePopper, VTooltip } from "floating-vue"; -import "floating-vue/dist/style.css"; -// @ts-ignore -import VueGridLayout from "vue-grid-layout"; -import Widgets from "@/views/dashboard/widgets"; const app = createApp(App); +// setup +import "./setup/setupStyles"; +import { setupComponents } from "./setup/setupComponents"; + +setupComponents(app); + app.use(createPinia()); app.use(router); -app.use(VueGridLayout); -app.use(Widgets); - -app.directive("tooltip", VTooltip); -app.directive("close-popper", VClosePopper); - -app.component("FloatingDropdown", Dropdown); -app.component("FloatingTooltip", Tooltip); -app.component("FloatingMenu", Menu); app.mount("#app"); diff --git a/src/setup/setupComponents.ts b/src/setup/setupComponents.ts new file mode 100644 index 00000000..16d1bc37 --- /dev/null +++ b/src/setup/setupComponents.ts @@ -0,0 +1,17 @@ +import type { App } from "vue"; +import { Dropdown, Menu, Tooltip, VClosePopper, VTooltip } from "floating-vue"; +import "floating-vue/dist/style.css"; +// @ts-ignore +import VueGridLayout from "vue-grid-layout"; +import Widgets from "@/views/dashboard/widgets"; + +export function setupComponents(app: App) { + app.use(VueGridLayout); + app.use(Widgets); + + app.directive("tooltip", VTooltip); + app.directive("close-popper", VClosePopper); + app.component("FloatingDropdown", Dropdown); + app.component("FloatingTooltip", Tooltip); + app.component("FloatingMenu", Menu); +} diff --git a/src/setup/setupStyles.ts b/src/setup/setupStyles.ts new file mode 100644 index 00000000..f4fc0092 --- /dev/null +++ b/src/setup/setupStyles.ts @@ -0,0 +1,2 @@ +import "@halo-dev/components/dist/style.css"; +import "@/styles/tailwind.css";