import type { App } from 'vue'
import { createRouter, createWebHashHistory, createWebHistory } from 'vue-router'
import { basicRoutes } from '@/router/basic-routes'
import { setupRouterGuards } from './guards'

export const router = createRouter({
    history:
        import.meta.env.VITE_USE_HASH === 'true'
            ? createWebHashHistory(import.meta.env.VITE_PUBLIC_PATH || '/')
            : createWebHistory(import.meta.env.VITE_PUBLIC_PATH || '/'),
    routes: basicRoutes,
    scrollBehavior: () => ({ left: 0, top: 0 })
})

export async function setupRouter(app: App) {
    app.use(router)
    setupRouterGuards(router)
    // do something...
    // createMenus(basicRoutes as any)
    await router.isReady()
}
