Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/danielroe/unsight.dev. Detect duplicate GitHub issues, areas of concern and more across related rep unsight.dev
ai clustering github machine-learning
Something went wrong. Try again.
1.7 kB · 63 lines
TypeScript
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364import process from 'node:process'import { consola } from 'consola'import { addServerPlugin, createResolver, defineNuxtModule, updateRuntimeConfig } from 'nuxt/kit'
export interface ModuleOptions { /** * Enable UI-only mode for local development * * **When ui-only mode is enabled, other local development features can't be used** * * @default false */ uiOnly: boolean
/** * Preset repos for local development * * Repositories to index at startup when running in local development mode * * @default [] */ presetRepos: string[]}
export default defineNuxtModule<ModuleOptions>({ meta: { name: 'local-dev', configKey: 'localDev', }, defaults: () => ({ uiOnly: process.argv.includes('--ui-only'), presetRepos: ('DEV_REPOS_TO_INDEX' in process.env && process.env.DEV_REPOS_TO_INDEX) ? process.env.DEV_REPOS_TO_INDEX.split(',').filter(Boolean) : ['nuxt/module-builder', 'nuxt/cli'], }), setup(options, nuxt) { if (!nuxt.options.dev && !nuxt.options._prepare) { return }
// ensure types are correct even if we don't add the server plugin updateRuntimeConfig({ localDev: { presetRepos: options.presetRepos }, })
if (options.uiOnly) { consola.info('Enabling UI-only mode for local development') updateRuntimeConfig({ public: { remote: 'https://unsight.dev', }, })
return }
const resolver = createResolver(import.meta.url)
if (options.presetRepos.length && !process.argv.includes('--remote')) { addServerPlugin(resolver.resolve('./runtime/server/plugins/preset-repo')) } },})