UNPKG

full-stack-svelte-kit

Version:

This framework is built on top of `@sveltejs/kit`.

27 lines (21 loc) 1.02 kB
export default function routeHelper({filename, script}) { let fileName = filename.split('/'); const extension = fileName.pop(); const routesIndex = fileName.findIndex((value) => value === 'routes'); fileName.splice(routesIndex + 1, 0, 'generated') const endPointFileToWrite = fileName.join('/') + '/' + extension.replace('.svelte', script.attrs && script.attrs.lang && script.attrs.lang === 'ts' ? '.ts' : '.js'); let routesName = '/' + fileName.slice(routesIndex + 1).join('/') + '/' + extension.replace('.svelte', '').replace('index', ''); routesName.split('/').forEach((segment) => { const param = segment.match(/\[(.*?)\]/); if (param && param.length > 0) { routesName = routesName.replace(param[0], '${page.params["' + param[1] + '"]}'); } }); if (routesName.endsWith('/')) { routesName = routesName.slice(0, -1); } return { fileToWrite: endPointFileToWrite, routesName, } }