vite-transform-globby-import
vite-transform-globby-import copied to clipboard
List of some issues and Feature Requests
Hi, as disccused in https://github.com/visualfanatic/vite-plugin-svg/issues/5#issuecomment-738979533 this library has some issues.
- Doesn't work in Windows.
- Relative path handling doesn't work properly. I'm trying to import 'globby!./components/*.svg' like that in src folder. But it tries to import from root folder.
- Partially works with
components0
andcomponents1
missing in setup return
Input
<script setup lang='ts'>
import { VueComponent as components } from 'globby!./components/*.svg'
</script>
Output
import {defineComponent as _defineComponent} from "/@modules/vue.js";
import { VueComponent as components0 } from "/~/components/SvgComponent.svg?import"
import { VueComponent as components1 } from "/~/components/SvgComponent2.svg?import"
const components = { components0,components1 };
const __script = _defineComponent({
expose: [],
setup(__props) {
return {components};
}
});
//....
Expected
import {defineComponent as _defineComponent} from "/@modules/vue.js";
import {VueComponent as components0} from "/~/components/SvgComponent.svg?import";
import {VueComponent as components1} from "/~/components/SvgComponent2.svg?import";
const __script = _defineComponent({
expose: [],
setup(__props) {
const components = {components0, components1};
return {components, components0, components1};
}
});
//....
Also having this features would be nice.
- Use filename as a variable name.
- Dynamic import support.
My config:
import globbyTransfromfrom from 'vite-transform-globby-import'
import svg from 'vite-plugin-svg'
const alias = {
'/~/': path.resolve(__dirname, 'src'),
}
const config: UserConfig = {
alias,
transforms: [globbyTransfrom({ alias })],
plugins: [
svg(),
],
}