import type { Options as VueOptions } from '@vitejs/plugin-vue'; import vue from '@vitejs/plugin-vue'; import type { Options as VueJsxOptions } from '@vitejs/plugin-vue-jsx'; import type { AstroIntegration, AstroRenderer } from 'astro'; import type { UserConfig } from 'vite'; interface Options extends VueOptions { jsx?: boolean | VueJsxOptions; appEntrypoint?: string; } function getRenderer(): AstroRenderer { return { name: '@astrojs/vue', clientEntrypoint: '@astrojs/vue/client.js', serverEntrypoint: '@astrojs/vue/server.js', }; } function getJsxRenderer(): AstroRenderer { return { name: '@astrojs/vue (jsx)', clientEntrypoint: '@astrojs/vue/client.js', serverEntrypoint: '@astrojs/vue/server.js', jsxImportSource: 'vue', jsxTransformOptions: async () => { const jsxPlugin = (await import('@vue/babel-plugin-jsx')).default; return { plugins: [jsxPlugin], }; }, }; } function virtualAppEntrypoint(options?: Options) { const virtualModuleId = 'virtual:@astrojs/vue/app'; const resolvedVirtualModuleId = '\0' + virtualModuleId; return { name: '@astrojs/vue/virtual-app', resolveId(id: string) { if (id == virtualModuleId) { return resolvedVirtualModuleId; } }, load(id: string) { if (id === resolvedVirtualModuleId) { if (options?.appEntrypoint) { return `export { default as setup } from "${options.appEntrypoint}";`; } return `export const setup = () => {};`; } }, }; } async function getViteConfiguration(options?: Options): Promise { const config: UserConfig = { optimizeDeps: { include: ['@astrojs/vue/client.js', 'vue'], exclude: ['@astrojs/vue/server.js', 'virtual:@astrojs/vue/app'], }, plugins: [vue(options), virtualAppEntrypoint(options)], ssr: { external: ['@vue/server-renderer'], noExternal: ['vuetify', 'vueperslides', 'primevue'], }, }; if (options?.jsx) { const vueJsx = (await import('@vitejs/plugin-vue-jsx')).default; const jsxOptions = typeof options.jsx === 'object' ? options.jsx : undefined; config.plugins?.push(vueJsx(jsxOptions)); } return config; } export default function (options?: Options): AstroIntegration { return { name: '@astrojs/vue', hooks: { 'astro:config:setup': async ({ addRenderer, updateConfig }) => { addRenderer(getRenderer()); if (options?.jsx) { addRenderer(getJsxRenderer()); } updateConfig({ vite: await getViteConfiguration(options) }); }, }, }; } ub'>Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/net/PATENTS (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2018-05-21plugin/template: Support NODATA responses (#1816)Gravatar Tobias Schmidt 2-2/+10
2018-05-19Fix `make check` dependency error (#1818)Gravatar Yong Tang 1-0/+2
2018-05-18plugin/forward: close connection manager in proxy finalizer (#1768)Gravatar Ruslan Drozhdzh 1-0/+5
2018-05-18add dup endpoint name test (#1811)Gravatar Chris O'Haver 1-6/+30
2018-05-18reload: don't fail test on addr in use (#1804)Gravatar Miek Gieben 1-1/+9
2018-05-17Fix typo in erratic.go (#1812)Gravatar Anton Antonov 1-1/+1
2018-05-17Update kubernetes/client-go to v7.0.0 (#1808)Gravatar Yong Tang 730-43138/+17318
2018-05-16golinter fix (#1807)Gravatar Yong Tang 1-2/+2
2018-05-16Vendor update with github.com/ugorji/go and github.com/apache/thrift pinning ...Gravatar Yong Tang 10682-4047998/+37388
2018-05-16Dep ensure (#1803)Gravatar Miek Gieben 10377-54910/+4225825
2018-05-16Probe simplification (#1784)Gravatar Ruslan Drozhdzh 1-49/+42
2018-05-15plugin/tls: make CA parameter optional (#1800)Gravatar Ruslan Drozhdzh 2-3/+5
2018-05-11plugin/reload: mention auto in reload (#1793)Gravatar Chris O'Haver 1-0/+3
2018-05-11plugin/proxy: fix except example (#1796)Gravatar Chris O'Haver 1-1/+1
2018-05-11Try to clarify rewrite docs (#1795)Gravatar Chris O'Haver 1-13/+19
2018-05-10Up miekg/dns to 1.0.6 (#1792)Gravatar Miek Gieben 1-1/+1