create-soybean 0.7.9 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
- import{readdirSync as p,existsSync as v,rmSync as R,statSync as F,copyFileSync as L,mkdirSync as $,readFileSync as O,writeFileSync as V}from"node:fs";import o from"node:path";import{fileURLToPath as B}from"node:url";import{green as E,blue as J,cyan as h,lightBlue as G,reset as u,red as I}from"kolorist";import U from"minimist";import q from"prompts";import{consola as f}from"consola";function k(e){return e?.trim()?.replace(/\/+$/g,"")}function A(e){const t=p(e);return t.length===0||t.length===1&&t[0]===".git"}function N(e){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(e)}function H(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}function K(e){if(!v(e))return;const t=p(e);for(const c of t)if(c!==".git"){const r=o.resolve(e,c);R(r,{recursive:!0,force:!0})}}function M(e,t){$(t,{recursive:!0});const c=p(e);for(const r of c){const i=o.resolve(e,r),s=o.resolve(t,r);b(i,s)}}function b(e,t){F(e).isDirectory()?M(e,t):L(e,t)}const P=[{type:"vue",name:"Vue 3",color:E},{type:"ts-lib",name:"TypeScript library",color:J},{type:"react",name:"React",color:h},{type:"react-native",name:"React Native",color:h},{type:"solid",name:"Solid",color:G}],_=P.map(e=>e.type),Q={_gitignore:".gitignore",_eslintrc:".eslintrc",_npmrc:".npmrc"},S="create-soybean-project";async function W(){const e=process.cwd(),t=U(process.argv.slice(2),{string:["_"]}),c=k(t._[0]),r=t.template||t.t;let i=c||S;function s(){return i==="."?o.basename(o.resolve()):i}let y=null;try{y=await q([{type:c?null:"text",name:"projectName",message:u("Project name:"),initial:S,onState:n=>{i=k(n.value)||S}},{type:()=>!v(i)||A(i)?null:"confirm",name:"overwrite",message:()=>`${i==="."?"Current directory":`Target directory "${i}"`} is not empty. Remove existing files and continue?`},{type:(n,{overwrite:a})=>{if(a===!1)throw new Error(`${I("\u2716")} Operation cancelled`);return null},name:"overwriteChecker"},{type:()=>N(s())?null:"text",name:"packageName",message:u("Package name:"),initial:()=>H(s()),validate:n=>N(n)||"Invalid package.json name"},{type:r&&_.includes(r)?null:"select",name:"template",message:typeof r=="string"&&!_.includes(r)?u(`"${r}" isn't a valid template. Please choose from below: `):u("Select a template:"),initial:0,choices:P.map(({type:n,name:a,color:m})=>({title:m(a),value:n}))}])}catch(n){f.error(n)}if(!y)return;const{template:z,overwrite:D,packageName:T}=y,l=o.join(e,i);D?K(l):v(l)||$(l,{recursive:!0});const x=z||r;f.info(`
3
- Scaffolding project in ${l}...`);const g=o.resolve(B(import.meta.url),"../..",`template-${x}`),j=(n,a)=>{const m=o.join(l,Q[n]??n);a?V(m,a):b(o.join(g,n),m)},C=p(g);for(const n of C.filter(a=>a!=="package.json"))j(n);const w=JSON.parse(O(o.join(g,"package.json"),"utf-8"));w.name=T||s(),j("package.json",`${JSON.stringify(w,null,2)}
4
- `);const d=o.relative(e,l);f.info(`
2
+ import $ from"node:process";import{readdirSync as p,existsSync as v,rmSync as F,statSync as O,copyFileSync as V,mkdirSync as h,readFileSync as B,writeFileSync as E}from"node:fs";import o from"node:path";import{fileURLToPath as I}from"node:url";import{green as J,blue as L,cyan as k,lightBlue as G,reset as f,red as H}from"kolorist";import U from"minimist";import q from"prompts";import{consola as u}from"consola";function _(e){return e?.trim()?.replace(/\/+$/g,"")}function A(e){const t=p(e);return t.length===0||t.length===1&&t[0]===".git"}function N(e){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(e)}function K(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}function M(e){if(!v(e))return;const t=p(e);for(const c of t)if(c!==".git"){const n=o.resolve(e,c);F(n,{recursive:!0,force:!0})}}function Q(e,t){h(t,{recursive:!0});const c=p(e);for(const n of c){const i=o.resolve(e,n),s=o.resolve(t,n);b(i,s)}}function b(e,t){O(e).isDirectory()?Q(e,t):V(e,t)}const P=[{type:"vue",name:"Vue 3",color:J},{type:"ts-lib",name:"TypeScript library",color:L},{type:"react",name:"React",color:k},{type:"react-native",name:"React Native",color:k},{type:"solid",name:"Solid",color:G}],z=P.map(e=>e.type),W={_editorconfig:".editorconfig",_gitignore:".gitignore",_npmrc:".npmrc",_prettierrc:".prettierrc"},S="create-soybean-project";async function X(){const e=$.cwd(),t=U($.argv.slice(2),{string:["_"]}),c=_(t._[0]),n=t.template||t.t;let i=c||S;function s(){return i==="."?o.basename(o.resolve()):i}let g=null;try{g=await q([{type:c?null:"text",name:"projectName",message:f("Project name:"),initial:S,onState:r=>{i=_(r.value)||S}},{type:()=>!v(i)||A(i)?null:"confirm",name:"overwrite",message:()=>`${i==="."?"Current directory":`Target directory "${i}"`} is not empty. Remove existing files and continue?`},{type:(r,{overwrite:a})=>{if(a===!1)throw new Error(`${H("\u2716")} Operation cancelled`);return null},name:"overwriteChecker"},{type:()=>N(s())?null:"text",name:"packageName",message:f("Package name:"),initial:()=>K(s()),validate:r=>N(r)||"Invalid package.json name"},{type:n&&z.includes(n)?null:"select",name:"template",message:typeof n=="string"&&!z.includes(n)?f(`"${n}" isn't a valid template. Please choose from below: `):f("Select a template:"),initial:0,choices:P.map(({type:r,name:a,color:m})=>({title:m(a),value:r}))}])}catch(r){u.error(r)}if(!g)return;const{template:D,overwrite:T,packageName:x}=g,l=o.join(e,i);T?M(l):v(l)||h(l,{recursive:!0});const C=D||n;u.info(`
3
+ Scaffolding project in ${l}...`);const y=o.resolve(I(import.meta.url),"../..",`template-${C}`),w=(r,a)=>{const m=o.join(l,W[r]??r);a?E(m,a):b(o.join(y,r),m)},R=p(y);for(const r of R.filter(a=>a!=="package.json"))w(r);const j=JSON.parse(B(o.join(y,"package.json"),"utf-8"));j.name=x||s(),w("package.json",`${JSON.stringify(j,null,2)}
4
+ `);const d=o.relative(e,l);u.info(`
5
5
  Done. Now run:
6
- `),l!==e&&f.info(` cd ${d.includes(" ")?`"${d}"`:d}`)}W();
6
+ `),l!==e&&u.info(` cd ${d.includes(" ")?`"${d}"`:d}`)}X();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-soybean",
3
- "version": "0.7.9",
3
+ "version": "0.8.1",
4
4
  "description": "SoybeanJS's command line to create different project templates",
5
5
  "author": {
6
6
  "name": "Soybean",
@@ -17,8 +17,8 @@
17
17
  },
18
18
  "files": [
19
19
  "dist",
20
- "template-vue",
21
- "template-ts-lib"
20
+ "template-ts-lib",
21
+ "template-vue"
22
22
  ],
23
23
  "dependencies": {
24
24
  "consola": "3.2.3",
@@ -28,13 +28,14 @@
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/minimist": "1.2.5",
31
- "@types/prompts": "2.4.8",
32
- "typescript": "5.2.2",
31
+ "@types/prompts": "2.4.9",
32
+ "typescript": "5.3.3",
33
33
  "unbuild": "2.0.0"
34
34
  },
35
35
  "scripts": {
36
- "build": "pnpm typecheck && unbuild",
37
- "typecheck": "tsc --noEmit",
36
+ "build": "pnpm typecheck && pnpm build-only",
37
+ "build-only": "unbuild",
38
+ "typecheck": "tsc --noEmit --skipLibCheck",
38
39
  "publish-pkg": "pnpm publish --access public --no-git-checks"
39
40
  }
40
41
  }
@@ -1,22 +1,10 @@
1
1
  {
2
- "cSpell.words": ["consola", "kolorist"],
3
2
  "editor.codeActionsOnSave": {
4
- "source.fixAll.eslint": true
3
+ "source.fixAll.eslint": "explicit",
4
+ "source.organizeImports": "never"
5
5
  },
6
- "editor.fontLigatures": true,
6
+ "eslint.experimental.useFlatConfig": true,
7
7
  "editor.formatOnSave": false,
8
- "editor.quickSuggestions": {
9
- "strings": true
10
- },
11
- "editor.tabSize": 2,
12
- "eslint.validate": ["json"],
13
- "files.associations": {
14
- "*.env.*": "dotenv",
15
- "*.svg": "html"
16
- },
17
- "files.eol": "\n",
18
- "[html][css][less][scss][sass][markdown][yaml][yml][jsonc]": {
19
- "editor.defaultFormatter": "esbenp.prettier-vscode",
20
- "editor.formatOnSave": true
21
- }
8
+ "eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact", "json", "jsonc", "json5"],
9
+ "prettier.enable": false
22
10
  }
@@ -0,0 +1,11 @@
1
+ # Editor configuration, see http://editorconfig.org
2
+
3
+ root = true
4
+
5
+ [*]
6
+ charset = utf-8
7
+ indent_style = space
8
+ indent_size = 2
9
+ end_of_line = lf
10
+ trim_trailing_whitespace = true
11
+ insert_final_newline = true
@@ -0,0 +1,21 @@
1
+ "*.js" eol=lf
2
+ "*.ts" eol=lf
3
+ "*.jsx" eol=lf
4
+ "*.tsx" eol=lf
5
+ "*.cjs" eol=lf
6
+ "*.cts" eol=lf
7
+ "*.mjs" eol=lf
8
+ "*.mts" eol=lf
9
+ "*.html" eol=lf
10
+ "*.css" eol=lf
11
+ "*.vue" eol=lf
12
+ "*.json" eol=lf
13
+ "*.less" eol=lf
14
+ "*.scss" eol=lf
15
+ "*.sass" eol=lf
16
+ "*.styl" eol=lf
17
+ "*.svelte" eol=lf
18
+ "*.md" eol=lf
19
+ "*.yml" eol=lf
20
+ "*.astro" eol=lf
21
+ "*.mdx" eol=lf
File without changes
@@ -1,6 +1,9 @@
1
1
  import { defineBuildConfig } from 'unbuild';
2
2
 
3
3
  export default defineBuildConfig({
4
+ alias: {
5
+ '@': './src'
6
+ },
4
7
  entries: ['src/index'],
5
8
  clean: true,
6
9
  declaration: true,
@@ -0,0 +1,3 @@
1
+ import { defineConfig } from '@soybeanjs/eslint-config';
2
+
3
+ export default defineConfig();
@@ -1,30 +1,29 @@
1
1
  {
2
2
  "name": "ts-lib-starter",
3
- "version": "0.7.9",
3
+ "type": "module",
4
+ "version": "0.8.1",
4
5
  "private": true,
5
6
  "exports": {
6
7
  ".": {
8
+ "types": "./dist/index.d.ts",
7
9
  "import": "./dist/index.mjs",
8
- "require": "./dist/index.cjs",
9
- "types": "./dist/index.d.ts"
10
+ "require": "./dist/index.cjs"
10
11
  }
11
12
  },
12
13
  "main": "dist/index.cjs",
13
14
  "module": "dist/index.mjs",
14
15
  "types": "dist/index.d.ts",
15
- "files": [
16
- "dist"
17
- ],
16
+ "files": ["dist"],
18
17
  "scripts": {
19
- "build": "pnpm typecheck && unbuild",
20
- "typecheck": "tsc --noEmit",
18
+ "build": "run-s typecheck build-only",
19
+ "build-only": "unbuild",
20
+ "typecheck": "tsc --noEmit --skipLibCheck",
21
21
  "lint": "eslint . --fix",
22
- "format": "soy prettier-write",
23
22
  "commit": "soy git-commit",
24
23
  "cleanup": "soy cleanup",
25
24
  "update-pkg": "soy ncu",
26
25
  "publish-pkg": "pnpm publish --access public",
27
- "release": "soy release && pnpm build && pnpm publish-pkg"
26
+ "release": "run-s \"soy release\" build publish-pkg"
28
27
  },
29
28
  "dependencies": {
30
29
  "cli-progress": "3.12.0",
@@ -35,13 +34,16 @@
35
34
  "ofetch": "1.3.3"
36
35
  },
37
36
  "devDependencies": {
38
- "@soybeanjs/cli": "0.7.9",
37
+ "@soybeanjs/cli": "0.8.0",
38
+ "@soybeanjs/eslint-config": "1.0.5",
39
39
  "@types/cli-progress": "3.11.5",
40
- "@types/node": "20.9.0",
41
- "eslint": "8.53.0",
42
- "eslint-config-soybeanjs": "0.5.8",
43
- "tsx": "4.1.2",
44
- "typescript": "5.2.2",
40
+ "@types/node": "20.10.4",
41
+ "eslint": "8.55.0",
42
+ "lint-staged": "15.2.0",
43
+ "npm-run-all": "4.1.5",
44
+ "simple-git-hooks": "2.9.0",
45
+ "tsx": "4.6.2",
46
+ "typescript": "5.3.3",
45
47
  "unbuild": "2.0.0"
46
48
  }
47
49
  }
@@ -1,3 +1,3 @@
1
1
  export function fn() {
2
- return 'fn';
2
+ return 1;
3
3
  }
@@ -1,23 +1,24 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "baseUrl": ".",
4
- "module": "ESNext",
5
3
  "target": "ESNext",
6
- "lib": ["DOM", "ESNext"],
7
- "strict": true,
8
- "esModuleInterop": true,
9
- "allowSyntheticDefaultImports": true,
10
4
  "jsx": "preserve",
5
+ "lib": ["DOM", "ESNext"],
6
+ "baseUrl": ".",
7
+ "module": "ESNext",
11
8
  "moduleResolution": "node",
12
- "resolveJsonModule": true,
13
- "noUnusedLocals": true,
14
- "strictNullChecks": true,
15
- "skipLibCheck": true,
16
- "forceConsistentCasingInFileNames": true,
17
- "types": ["node"],
18
9
  "paths": {
19
10
  "@/*": ["./src/*"]
20
- }
11
+ },
12
+ "resolveJsonModule": true,
13
+ "types": ["node"],
14
+ "strict": true,
15
+ "strictNullChecks": true,
16
+ "noUnusedLocals": true,
17
+ "outDir": "./dist",
18
+ "allowSyntheticDefaultImports": true,
19
+ "esModuleInterop": true,
20
+ "forceConsistentCasingInFileNames": true
21
21
  },
22
+ "include": ["src/**/*"],
22
23
  "exclude": ["node_modules", "dist"]
23
24
  }
@@ -1,22 +1,23 @@
1
1
  {
2
- "cSpell.words": ["consola", "kolorist"],
3
2
  "editor.codeActionsOnSave": {
4
- "source.fixAll.eslint": true
3
+ "source.fixAll.eslint": "explicit",
4
+ "source.organizeImports": "never"
5
5
  },
6
- "editor.fontLigatures": true,
7
6
  "editor.formatOnSave": false,
8
- "editor.quickSuggestions": {
9
- "strings": true
10
- },
11
- "editor.tabSize": 2,
12
- "eslint.validate": ["json"],
13
- "files.associations": {
14
- "*.env.*": "dotenv",
15
- "*.svg": "html"
16
- },
17
- "files.eol": "\n",
18
- "[html][css][less][scss][sass][markdown][yaml][yml][jsonc]": {
19
- "editor.defaultFormatter": "esbenp.prettier-vscode",
20
- "editor.formatOnSave": true
21
- }
7
+ "eslint.experimental.useFlatConfig": true,
8
+ "eslint.validate": [
9
+ "javascript",
10
+ "javascriptreact",
11
+ "typescript",
12
+ "typescriptreact",
13
+ "vue",
14
+ "html",
15
+ "css",
16
+ "json",
17
+ "jsonc",
18
+ "yaml",
19
+ "toml",
20
+ "markdown"
21
+ ],
22
+ "prettier.enable": false
22
23
  }
@@ -13,8 +13,8 @@ TypeScript cannot handle type information for `.vue` imports by default, so we r
13
13
  If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:
14
14
 
15
15
  1. Disable the built-in TypeScript Extension
16
- 1) Run `Extensions: Show Built-in Extensions` from VSCode's command palette
17
- 2) Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
16
+ 1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette
17
+ 2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
18
18
  2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.
19
19
 
20
20
  ## Customize configuration
@@ -0,0 +1,11 @@
1
+ # Editor configuration, see http://editorconfig.org
2
+
3
+ root = true
4
+
5
+ [*]
6
+ charset = utf-8
7
+ indent_style = space
8
+ indent_size = 2
9
+ end_of_line = lf
10
+ trim_trailing_whitespace = true
11
+ insert_final_newline = true
@@ -0,0 +1,21 @@
1
+ "*.js" eol=lf
2
+ "*.ts" eol=lf
3
+ "*.jsx" eol=lf
4
+ "*.tsx" eol=lf
5
+ "*.cjs" eol=lf
6
+ "*.cts" eol=lf
7
+ "*.mjs" eol=lf
8
+ "*.mts" eol=lf
9
+ "*.html" eol=lf
10
+ "*.css" eol=lf
11
+ "*.vue" eol=lf
12
+ "*.json" eol=lf
13
+ "*.less" eol=lf
14
+ "*.scss" eol=lf
15
+ "*.sass" eol=lf
16
+ "*.styl" eol=lf
17
+ "*.svelte" eol=lf
18
+ "*.md" eol=lf
19
+ "*.yml" eol=lf
20
+ "*.astro" eol=lf
21
+ "*.mdx" eol=lf
@@ -0,0 +1,3 @@
1
+ import { defineConfig } from '@soybeanjs/eslint-config';
2
+
3
+ export default defineConfig({ vue: true });
@@ -1,9 +1,9 @@
1
- <!DOCTYPE html>
1
+ <!doctype html>
2
2
  <html lang="en">
3
3
  <head>
4
- <meta charset="UTF-8">
5
- <link rel="icon" href="/favicon.ico">
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" href="/favicon.ico" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
7
  <title>Vite App</title>
8
8
  </head>
9
9
  <body>
@@ -1,30 +1,44 @@
1
1
  {
2
2
  "name": "template-vue",
3
- "version": "0.7.9",
3
+ "type": "module",
4
+ "version": "0.8.1",
4
5
  "private": true,
5
6
  "scripts": {
6
7
  "dev": "vite",
7
- "build": "run-s type-check build-only",
8
- "preview": "vite preview",
8
+ "build": "run-s typecheck build-only",
9
9
  "build-only": "vite build",
10
- "type-check": "vue-tsc --noEmit --skipLibCheck",
11
- "lint": "eslint . --fix"
10
+ "preview": "vite preview",
11
+ "lint": "eslint . --fix",
12
+ "commit": "soy git-commit",
13
+ "cleanup": "soy cleanup",
14
+ "update-pkg": "soy ncu",
15
+ "typecheck": "vue-tsc --noEmit --skipLibCheck",
16
+ "prepare": "simple-git-hooks"
12
17
  },
13
18
  "dependencies": {
14
19
  "pinia": "2.1.7",
15
- "vue": "3.3.8",
20
+ "vue": "3.3.10",
16
21
  "vue-router": "4.2.5"
17
22
  },
18
23
  "devDependencies": {
19
- "@soybeanjs/cli": "0.7.9",
20
- "@types/node": "20.9.0",
21
- "@vitejs/plugin-vue": "4.4.1",
22
- "@vitejs/plugin-vue-jsx": "3.0.2",
23
- "eslint": "8.53.0",
24
- "eslint-config-soybeanjs": "0.5.8",
24
+ "@soybeanjs/cli": "0.8.0",
25
+ "@soybeanjs/eslint-config": "1.0.5",
26
+ "@types/node": "20.10.4",
27
+ "@vitejs/plugin-vue": "4.5.2",
28
+ "@vitejs/plugin-vue-jsx": "3.1.0",
29
+ "eslint": "8.55.0",
30
+ "lint-staged": "15.2.0",
25
31
  "npm-run-all": "4.1.5",
26
- "typescript": "5.2.2",
27
- "vite": "4.5.0",
28
- "vue-tsc": "1.8.22"
32
+ "simple-git-hooks": "2.9.0",
33
+ "typescript": "5.3.3",
34
+ "vite": "5.0.6",
35
+ "vue-tsc": "1.8.25"
36
+ },
37
+ "simple-git-hooks": {
38
+ "commit-msg": "pnpm soy git-commit-verify",
39
+ "pre-commit": "pnpm typecheck && pnpm lint-staged"
40
+ },
41
+ "lint-staged": {
42
+ "*": "eslint --fix"
29
43
  }
30
44
  }
@@ -62,10 +62,23 @@ body {
62
62
  min-height: 100vh;
63
63
  color: var(--color-text);
64
64
  background: var(--color-background);
65
- transition: color 0.5s, background-color 0.5s;
65
+ transition:
66
+ color 0.5s,
67
+ background-color 0.5s;
66
68
  line-height: 1.6;
67
- font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
68
- Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
69
+ font-family:
70
+ Inter,
71
+ -apple-system,
72
+ BlinkMacSystemFont,
73
+ 'Segoe UI',
74
+ Roboto,
75
+ Oxygen,
76
+ Ubuntu,
77
+ Cantarell,
78
+ 'Fira Sans',
79
+ 'Droid Sans',
80
+ 'Helvetica Neue',
81
+ sans-serif;
69
82
  font-size: 15px;
70
83
  text-rendering: optimizeLegibility;
71
84
  -webkit-font-smoothing: antialiased;
@@ -1,4 +1,4 @@
1
- import { ref, computed } from 'vue';
1
+ import { computed, ref } from 'vue';
2
2
  import { defineStore } from 'pinia';
3
3
 
4
4
  export const useCounterStore = defineStore('counter', () => {
@@ -1,24 +1,26 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "baseUrl": ".",
4
- "module": "ESNext",
5
3
  "target": "ESNext",
6
- "lib": ["DOM", "ESNext"],
7
- "strict": true,
8
- "esModuleInterop": true,
9
- "allowSyntheticDefaultImports": true,
10
4
  "jsx": "preserve",
11
5
  "jsxImportSource": "vue",
6
+ "lib": ["DOM", "ESNext"],
7
+ "baseUrl": ".",
8
+ "module": "ESNext",
12
9
  "moduleResolution": "bundler",
13
- "isolatedModules": true,
14
- "resolveJsonModule": true,
15
- "noUnusedLocals": true,
16
- "strictNullChecks": true,
17
- "forceConsistentCasingInFileNames": true,
18
10
  "paths": {
19
11
  "@/*": ["./src/*"]
20
12
  },
21
- "types": ["vite/client", "node"]
13
+ "resolveJsonModule": true,
14
+ "types": ["node", "vite/client"],
15
+ "strict": true,
16
+ "strictNullChecks": true,
17
+ "noUnusedLocals": true,
18
+ "outDir": "./dist",
19
+ "allowSyntheticDefaultImports": true,
20
+ "esModuleInterop": true,
21
+ "forceConsistentCasingInFileNames": true,
22
+ "isolatedModules": true
22
23
  },
24
+ "include": ["./**/*.ts", "./**/*.tsx", "./**/*.vue"],
23
25
  "exclude": ["node_modules", "dist"]
24
26
  }
@@ -1,4 +1,4 @@
1
- import { fileURLToPath, URL } from 'node:url';
1
+ import { URL, fileURLToPath } from 'node:url';
2
2
  import { defineConfig } from 'vite';
3
3
  import vue from '@vitejs/plugin-vue';
4
4
  import vueJsx from '@vitejs/plugin-vue-jsx';
@@ -1,3 +0,0 @@
1
- {
2
- "extends": "soybeanjs"
3
- }
@@ -1,11 +0,0 @@
1
- {
2
- "extends": "soybeanjs/vue",
3
- "overrides": [
4
- {
5
- "files": ["*.vue"],
6
- "rules": {
7
- "no-undef": "off"
8
- }
9
- }
10
- ]
11
- }