import { createRouter, createWebHistory } from 'vue-router'
import LoginView from '../views/LoginView.vue'
import DashboardView from '../views/DashboardView.vue'
import DatabaseView from '../views/DatabaseView.vue'
import DataComparisonView from '../views/DataComparisonView.vue'
import SystemSettingsView from '../views/SystemSettingsView.vue'
import MarketTimeSeriesView from '../views/MarketTimeSeriesView.vue'
import FactorHistoryView from '../views/FactorHistoryView.vue'
import WaterfallExecutionView from '../views/WaterfallExecutionView.vue'
import ShadowLedgerView from '../views/ShadowLedgerView.vue'
import EtfNavAnalysisView from '../views/EtfNavAnalysisView.vue'
import SnapshotAdminView from '../views/SnapshotAdminView.vue'
import UserManagementView from '../views/UserManagementView.vue'

const router = createRouter({
  history: createWebHistory(),
  routes: [
    { path: '/', redirect: '/login' },
    { path: '/login', component: LoginView },
    { path: '/dashboard', component: DashboardView },
    { path: '/timeseries', component: MarketTimeSeriesView },
    { path: '/factors', component: FactorHistoryView },
    { path: '/waterfall', component: WaterfallExecutionView },
    { path: '/shadow', component: ShadowLedgerView },
    { path: '/comparison', component: DataComparisonView },
    { path: '/etf', component: EtfNavAnalysisView },
    { path: '/settings', component: SystemSettingsView },
    { path: '/database', component: DatabaseView },
    { path: '/snapshots', component: SnapshotAdminView },
    { path: '/users', component: UserManagementView }
  ]
})

export default router
