99 lines
2.9 KiB
JavaScript
99 lines
2.9 KiB
JavaScript
// import routes from 'src/router/routes';
|
|
// import { ref } from 'vue';
|
|
// import axios from 'axios';
|
|
|
|
// const favorites = ref([]);
|
|
//const modules = ref([]);
|
|
|
|
// const mainRoute = routes.find((route) => route.path === '/');
|
|
// const moduleRoutes = (mainRoute && mainRoute.children) || [];
|
|
//
|
|
// for (const route of moduleRoutes) {
|
|
// const module = {
|
|
// stateName: route.name,
|
|
// name: route.name.toLowerCase(),
|
|
// roles: [],
|
|
// };
|
|
//
|
|
// if (route.meta) {
|
|
// Object.assign(module, route.meta);
|
|
// }
|
|
//
|
|
// if (route.children && route.children.length) {
|
|
// const [moduleMain] = route.children;
|
|
// const routes = moduleMain.children;
|
|
//
|
|
// module.children = routes.map((route) => {
|
|
// const submodule = {
|
|
// stateName: route.name,
|
|
// name: route.name,
|
|
// };
|
|
//
|
|
// Object.assign(submodule, route.meta);
|
|
//
|
|
// return submodule;
|
|
// });
|
|
// }
|
|
// modules.value.push(module);
|
|
// }
|
|
|
|
export function useNavigation() {
|
|
const modules = [
|
|
'customer',
|
|
'claim',
|
|
'ticket'
|
|
];
|
|
|
|
// const salixModules = {
|
|
// customer: 'Clients',
|
|
// claim: 'Claims',
|
|
// entry: 'Entries',
|
|
// invoiceIn: 'Invoices In',
|
|
// invoiceOut: 'Invoices Out',
|
|
// item: 'Items',
|
|
// monitor: 'Monitors',
|
|
// order: 'Orders',
|
|
// route: 'Routes',
|
|
// supplier: 'Suppliers',
|
|
// ticket: 'Tickets',
|
|
// travel: 'Travels',
|
|
// user: 'Users',
|
|
// worker: 'Workers',
|
|
// zone: 'Zones',
|
|
// };
|
|
|
|
// async function fetchFavorites() {
|
|
// const response = await axios.get('StarredModules/getStarredModules');
|
|
//
|
|
// const filteredModules = modules.value.filter((module) => {
|
|
// return response.data.find((element) => element.moduleFk == salixModules[module.name]);
|
|
// });
|
|
//
|
|
// return (favorites.value = filteredModules);
|
|
// }
|
|
//
|
|
// async function toggleFavorite(moduleName, event) {
|
|
// if (event.defaultPrevented) return;
|
|
// event.preventDefault();
|
|
// event.stopPropagation();
|
|
//
|
|
// const params = { moduleName: salixModules[moduleName] };
|
|
// const query = 'StarredModules/toggleStarredModule';
|
|
// await axios.post(query, params);
|
|
//
|
|
// updateFavorites(moduleName);
|
|
// }
|
|
//
|
|
// function updateFavorites(name) {
|
|
// if (!favorites.value.find((module) => module.name == name)) {
|
|
// const newStarreModule = modules.value.find((module) => module.name == name);
|
|
// favorites.value.push(newStarreModule);
|
|
// } else {
|
|
// const moduleToRemove = favorites.value.find((module) => module.name == name);
|
|
// favorites.value.splice(favorites.value.indexOf(moduleToRemove), 1);
|
|
// }
|
|
// }
|
|
|
|
return { modules};
|
|
}
|