import React from 'react'
import ReactDOM from 'react-dom/client'
import {
createBrowserRouter,
RouterProvider,
} from 'react-router-dom'
import '@/assets/global.css'
import App from '@/views/App'
import Standlone from '@/views/Standlone'
import Login from '@/views/Login'
import Logout from '@/views/Logout'
import ErrorPage from '@/components/ErrorPage'
import RequireAuth from '@/components/RequireAuth'
import ReservationNewest from '@/views/reservation/Newest'
import ReservationDetail from '@/views/reservation/Detail'
import ChangePassword from '@/views/account/ChangePassword'
import AccountProfile from '@/views/account/Profile'
import AccountManagement from '@/views/account/Management'
import RoleList from '@/views/account/RoleList'
import FeedbackIndex from '@/views/feedback/Index'
import FeedbackDetail from '@/views/feedback/Detail'
import FeedbackCustomerDetail from '@/views/feedback/CustomerDetail'
import ReportIndex from '@/views/report/Index'
import NoticeIndex from '@/views/notice/Index'
import NoticeDetail from '@/views/notice/Detail'
import InvoiceIndex from '@/views/invoice/Index'
import InvoiceDetail from '@/views/invoice/Detail'
import InvoicePaid from '@/views/invoice/Paid'
import InvoicePaidDetail from '@/views/invoice/PaidDetail'
import Airticket from '@/views/airticket/Index'
import AirticketPlan from '@/views/airticket/Plan'
import { ThemeContext } from '@/stores/ThemeContext'
import { usingStorage } from '@/hooks/usingStorage'
import useAuthStore from './stores/Auth'
import { isNotEmpty } from '@/utils/commons'
import ProductsManage from '@/views/products/Manage';
import ProductsDetail from '@/views/products/Detail';
import ProductsAudit from '@/views/products/Audit';
import { PERM_ACCOUNT_MANAGEMENT, PERM_ROLE_NEW, PERM_OVERSEA, PERM_AIR_TICKET, PERM_PRODUCTS_MANAGEMENT } from '@/config'
import './i18n'
const initRouter = async () => {
return createBrowserRouter([
{
path: '/',
element: ,
errorElement: ,
children: [
{ index: true, element: },
{ path: 'account/change-password', element: },
{ path: 'account/profile', element: },
{ path: 'account/management', element: },
{ path: 'account/role-list', element: },
{ path: 'reservation/newest', element: },
{ path: 'reservation/:reservationId', element: },
{ path: 'feedback', element: },
{ path: 'feedback/:GRI_SN/:CII_SN/:RefNo', element: },
{ path: 'feedback/:GRI_SN/:RefNo', element: },
{ path: 'report', element: },
{ path: 'notice', element: },
{ path: 'notice/:CCP_BLID', element: },
{ path: 'invoice',element:},
{ path: 'invoice/detail/:GMDSN/:GSN',element:},
{ path: 'invoice/paid',element:},
{ path: 'invoice/paid/detail/:flid', element: },
{ path: 'airticket',element: },
{ path: 'airticket/plan/:coli_sn',element:},
]
},
{
element: ,
children: [
{ path: '/login', element: },
{ path: '/logout', element: },
]
}
])
}
const initAppliction = async () => {
const { loginToken, userId } = usingStorage()
if (isNotEmpty(userId) && isNotEmpty(loginToken)) {
await useAuthStore.getState().initAuth()
}
const router = await initRouter()
ReactDOM.createRoot(document.getElementById('root')).render(
//
Loading...
}
/>
//
)
}
initAppliction()