Nuxt/packages/bridge/src/auto-imports.ts
Daniel Roe 5d58ef48af
feat(nitro, nuxt3): allow handling otherwise unhandled runtime errors (#3464)
Co-authored-by: pooya parsa <pyapar@gmail.com>
2022-03-11 09:22:16 +01:00

30 lines
965 B
TypeScript

import { installModule, useNuxt } from '@nuxt/kit'
import * as CompositionApi from '@vue/composition-api'
import type { Preset } from 'unimport'
import autoImports from '../../nuxt3/src/auto-imports/module'
import { vuePreset, commonPresets, appPreset } from '../../nuxt3/src/auto-imports/presets'
const UnsupportedImports = new Set(['useAsyncData', 'useFetch', 'useError', 'throwError', 'clearError'])
const CapiHelpers = new Set(Object.keys(CompositionApi))
export function setupAutoImports () {
const nuxt = useNuxt()
const bridgePresets: Preset[] = [
...commonPresets,
{
from: '#app',
imports: [
...appPreset.imports.filter(i => !UnsupportedImports.has(i as string)),
'useNuxt2Meta'
]
},
{
from: '@vue/composition-api',
imports: vuePreset.imports.filter(i => CapiHelpers.has(i as string))
}
]
nuxt.hook('modules:done', () => installModule(autoImports, { presets: bridgePresets }))
}