Skip to content

Commit

Permalink
examples(#61): provide a simple example for issue #61
Browse files Browse the repository at this point in the history
  • Loading branch information
Dschungelabenteuer committed Nov 24, 2024
1 parent dfad781 commit 3e6d946
Show file tree
Hide file tree
Showing 12 changed files with 127 additions and 0 deletions.
5 changes: 5 additions & 0 deletions examples/issue-61/eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import vuePreset from '@yungezeit/eslint-vue';

export default [
...vuePreset,
];
13 changes: 13 additions & 0 deletions examples/issue-61/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>vite-plugin-entry-shaking example</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
24 changes: 24 additions & 0 deletions examples/issue-61/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"name": "vite-plugin-entry-shaking-example-issue-61",
"type": "module",
"version": "0.0.0",
"private": true,
"scripts": {
"dev": "vite",
"build": "vue-tsc && vite build",
"preview": "vite preview"
},
"dependencies": {
"vue": "^3.5.12"
},
"devDependencies": {
"@types/node": "^22.8.4",
"@vitejs/plugin-vue": "^5.1.4",
"@yungezeit/eslint-vue": "^0.0.12",
"sass": "^1.80.5",
"typescript": "^5.6.3",
"vite": "^5.4.10",
"vite-plugin-entry-shaking": "workspace:*",
"vue-tsc": "^2.1.8"
}
}
6 changes: 6 additions & 0 deletions examples/issue-61/src/App.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<script setup lang="ts">
</script>

<template>
<div>Example</div>
</template>
9 changes: 9 additions & 0 deletions examples/issue-61/src/main.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { createApp } from 'vue';
import App from './App.vue';

import { util1 } from './utils/index';

console.info(util1);

const app = createApp(App);
app.mount('#app');
2 changes: 2 additions & 0 deletions examples/issue-61/src/utils/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export { default as util1 } from './util1';
export { default as util2 } from './util2';
4 changes: 4 additions & 0 deletions examples/issue-61/src/utils/util1.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
function util1() {
/* .... */
}
export default util1;
4 changes: 4 additions & 0 deletions examples/issue-61/src/utils/util2.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
function util2() {
/* .... */
}
export default util2;
1 change: 1 addition & 0 deletions examples/issue-61/src/vite-env.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/// <reference types="vite/client" />
25 changes: 25 additions & 0 deletions examples/issue-61/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"module": "ESNext",
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"skipLibCheck": true,

/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "preserve",

/* Linting */
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true
},
"include": ["src/**/*.ts", "src/**/*.vue"],
"references": [{ "path": "./tsconfig.node.json" }]
}
11 changes: 11 additions & 0 deletions examples/issue-61/tsconfig.node.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"compilerOptions": {
"composite": true,
"skipLibCheck": true,
"strictNullChecks": true,
"module": "ESNext",
"moduleResolution": "bundler",
"allowSyntheticDefaultImports": true
},
"include": ["vite.config.ts"]
}
23 changes: 23 additions & 0 deletions examples/issue-61/vite.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import { defineConfig } from 'vite';
import { dirname } from 'path';
import { fileURLToPath } from 'url';
import vue from '@vitejs/plugin-vue';
import EntryShakingPlugin from 'vite-plugin-entry-shaking';

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

export default defineConfig(() => ({
plugins: [
EntryShakingPlugin({
targets: [
{
//
glob: 'src/utils/index.ts',
},
],
debug: true,
}),
vue(),
],
}));

0 comments on commit 3e6d946

Please sign in to comment.