leds-spark-lib
Version:
Biblioteca de geração de código
40 lines (36 loc) • 1.15 kB
JavaScript
import fs from "fs";
import { expandToString } from "../../../../util/template-string.js";
import path from "path";
export function generate(project_abstraction, target_folder) {
fs.writeFileSync(path.join(target_folder, 'index.ts'), generateIndex(project_abstraction, target_folder));
}
function generateIndex(project_abstraction, target_folder) {
const classList = [];
for (const pkg of project_abstraction.getCoresPackages()) {
for (const clazz of pkg.getPackageLevelClasses()) {
classList.push(clazz);
}
}
return expandToString `
import { type RouteRecordRaw } from 'vue-router'
import { useAuthStore } from '@/stores/auth'
import Login from '@/views/Login.vue'
export const routes: RouteRecordRaw[] = [
{
name: 'login',
path: '/',
// impedindo que o usuario navege para a pagina de login
// se estiver logado
beforeEnter: () => {
const auth = useAuthStore()
if (auth.estaLogado()) {
return { name: '${classList[0].getName().toLowerCase()}-home' }
}
return true
},
component: Login
}
]
`;
}
//# sourceMappingURL=generate.js.map