create-vite-extra 2.2.0 → 2.4.0
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/LICENSE +124 -0
- package/README.md +2 -2
- package/index.js +118 -125
- package/package.json +6 -2
- package/template-deno-lit/.vscode/extensions.json +3 -0
- package/template-deno-lit/README.md +1 -12
- package/template-deno-lit/deno.json +8 -0
- package/template-deno-lit/index.html +1 -1
- package/template-deno-lit/src/my-element.js +3 -3
- package/template-deno-lit/vite.config.js +16 -0
- package/template-deno-lit-ts/.vscode/extensions.json +3 -0
- package/template-deno-lit-ts/README.md +1 -12
- package/template-deno-lit-ts/deno.json +9 -0
- package/template-deno-lit-ts/index.html +1 -1
- package/template-deno-lit-ts/src/my-element.ts +5 -4
- package/template-deno-lit-ts/tsconfig.json +1 -0
- package/template-deno-lit-ts/vite.config.ts +16 -0
- package/template-deno-preact/.vscode/extensions.json +3 -0
- package/template-deno-preact/README.md +1 -12
- package/template-deno-preact/deno.json +12 -1
- package/template-deno-preact/index.html +1 -1
- package/template-deno-preact/src/app.jsx +2 -2
- package/template-deno-preact/src/main.jsx +2 -2
- package/template-deno-preact/vite.config.js +8 -0
- package/template-deno-preact-ts/.vscode/extensions.json +3 -0
- package/template-deno-preact-ts/README.md +1 -12
- package/template-deno-preact-ts/deno.json +12 -1
- package/template-deno-preact-ts/index.html +1 -1
- package/template-deno-preact-ts/src/app.tsx +3 -2
- package/template-deno-preact-ts/src/main.tsx +2 -2
- package/template-deno-preact-ts/vite.config.ts +8 -0
- package/template-deno-react/.vscode/extensions.json +3 -0
- package/template-deno-react/README.md +1 -12
- package/template-deno-react/deno.json +16 -1
- package/template-deno-react/index.html +1 -1
- package/template-deno-react/src/App.jsx +3 -2
- package/template-deno-react/src/main.jsx +8 -6
- package/template-deno-react/vite.config.js +8 -0
- package/template-deno-react-ts/.vscode/extensions.json +3 -0
- package/template-deno-react-ts/README.md +1 -12
- package/template-deno-react-ts/deno.json +16 -1
- package/template-deno-react-ts/index.html +1 -1
- package/template-deno-react-ts/src/App.tsx +4 -2
- package/template-deno-react-ts/src/main.tsx +8 -6
- package/template-deno-react-ts/vite.config.ts +8 -0
- package/template-deno-solid/.vscode/extensions.json +3 -0
- package/template-deno-solid/README.md +1 -12
- package/template-deno-solid/deno.json +12 -1
- package/template-deno-solid/index.html +1 -1
- package/template-deno-solid/src/App.jsx +2 -2
- package/template-deno-solid/src/main.jsx +2 -3
- package/template-deno-solid/vite.config.js +8 -0
- package/template-deno-solid-ts/.vscode/extensions.json +3 -0
- package/template-deno-solid-ts/README.md +1 -12
- package/template-deno-solid-ts/deno.json +12 -1
- package/template-deno-solid-ts/index.html +1 -1
- package/template-deno-solid-ts/src/App.tsx +3 -2
- package/template-deno-solid-ts/src/main.tsx +3 -4
- package/template-deno-solid-ts/vite.config.ts +8 -0
- package/template-deno-svelte/.vscode/extensions.json +1 -1
- package/template-deno-svelte/README.md +1 -12
- package/template-deno-svelte/deno.json +10 -1
- package/template-deno-svelte/index.html +1 -1
- package/template-deno-svelte/src/App.svelte +1 -1
- package/template-deno-svelte/src/lib/Counter.svelte +2 -2
- package/template-deno-svelte/src/main.js +3 -2
- package/template-deno-svelte/svelte.config.js +2 -2
- package/template-deno-svelte/vite.config.js +8 -0
- package/template-deno-svelte-ts/.vscode/extensions.json +1 -1
- package/template-deno-svelte-ts/README.md +1 -12
- package/template-deno-svelte-ts/deno.json +10 -1
- package/template-deno-svelte-ts/index.html +1 -1
- package/template-deno-svelte-ts/src/App.svelte +1 -1
- package/template-deno-svelte-ts/src/lib/Counter.svelte +2 -2
- package/template-deno-svelte-ts/src/main.ts +3 -2
- package/template-deno-svelte-ts/svelte.config.js +2 -2
- package/template-deno-svelte-ts/vite.config.ts +8 -0
- package/template-deno-vanilla/.vscode/extensions.json +3 -0
- package/template-deno-vanilla/deno.json +8 -1
- package/template-deno-vanilla/index.html +1 -1
- package/template-deno-vanilla/main.js +1 -1
- package/template-deno-vanilla/vite.config.js +7 -0
- package/template-deno-vanilla-ts/.vscode/extensions.json +3 -0
- package/template-deno-vanilla-ts/deno.json +8 -1
- package/template-deno-vanilla-ts/index.html +1 -1
- package/template-deno-vanilla-ts/src/main.ts +1 -1
- package/template-deno-vanilla-ts/vite.config.ts +7 -0
- package/template-deno-vue/.vscode/extensions.json +3 -0
- package/template-deno-vue/README.md +1 -12
- package/template-deno-vue/deno.json +10 -1
- package/template-deno-vue/index.html +1 -1
- package/template-deno-vue/src/App.vue +1 -1
- package/template-deno-vue/src/components/HelloWorld.vue +1 -1
- package/template-deno-vue/src/main.js +1 -1
- package/template-deno-vue/vite.config.js +8 -0
- package/template-deno-vue-ts/.vscode/extensions.json +3 -0
- package/template-deno-vue-ts/README.md +1 -23
- package/template-deno-vue-ts/deno.json +10 -1
- package/template-deno-vue-ts/index.html +1 -1
- package/template-deno-vue-ts/src/App.vue +1 -1
- package/template-deno-vue-ts/src/main.ts +1 -1
- package/template-deno-vue-ts/vite.config.ts +8 -0
- package/template-library/index.html +1 -1
- package/template-library/main.js +1 -1
- package/template-library/package.json +1 -1
- package/template-library/vite.config.js +3 -3
- package/template-library-ts/index.html +1 -1
- package/template-library-ts/package.json +2 -2
- package/template-library-ts/src/main.ts +1 -1
- package/template-library-ts/tsconfig.json +3 -2
- package/template-library-ts/vite.config.ts +3 -3
- package/template-ssr-preact/index.html +1 -1
- package/template-ssr-preact/package.json +6 -6
- package/template-ssr-preact/server.js +2 -2
- package/template-ssr-preact/src/app.jsx +2 -2
- package/template-ssr-preact/vite.config.js +5 -5
- package/template-ssr-preact-ts/index.html +1 -1
- package/template-ssr-preact-ts/package-lock.json +2923 -0
- package/template-ssr-preact-ts/package.json +9 -9
- package/template-ssr-preact-ts/server.js +2 -2
- package/template-ssr-preact-ts/src/app.tsx +2 -2
- package/template-ssr-preact-ts/tsconfig.json +3 -2
- package/template-ssr-preact-ts/tsconfig.node.json +16 -3
- package/template-ssr-preact-ts/vite.config.ts +5 -5
- package/template-ssr-react/index.html +1 -1
- package/template-ssr-react/package-lock.json +2629 -0
- package/template-ssr-react/package.json +8 -8
- package/template-ssr-react/server.js +2 -2
- package/template-ssr-react/src/App.jsx +2 -2
- package/template-ssr-react/src/entry-client.jsx +5 -5
- package/template-ssr-react/src/entry-server.jsx +5 -5
- package/template-ssr-react/vite.config.js +2 -2
- package/template-ssr-react-streaming/index.html +1 -1
- package/template-ssr-react-streaming/package-lock.json +2596 -0
- package/template-ssr-react-streaming/package.json +7 -7
- package/template-ssr-react-streaming/server.js +4 -4
- package/template-ssr-react-streaming/src/App.jsx +2 -2
- package/template-ssr-react-streaming/src/Card.jsx +1 -1
- package/template-ssr-react-streaming/src/entry-client.jsx +5 -5
- package/template-ssr-react-streaming/src/entry-server.jsx +4 -4
- package/template-ssr-react-streaming/vite.config.js +2 -2
- package/template-ssr-react-streaming-ts/index.html +1 -1
- package/template-ssr-react-streaming-ts/package.json +12 -12
- package/template-ssr-react-streaming-ts/server.js +4 -4
- package/template-ssr-react-streaming-ts/src/App.tsx +2 -2
- package/template-ssr-react-streaming-ts/src/entry-client.tsx +5 -5
- package/template-ssr-react-streaming-ts/src/entry-server.tsx +13 -6
- package/template-ssr-react-streaming-ts/tsconfig.json +4 -3
- package/template-ssr-react-streaming-ts/tsconfig.node.json +16 -3
- package/template-ssr-react-streaming-ts/vite.config.ts +2 -2
- package/template-ssr-react-ts/index.html +1 -1
- package/template-ssr-react-ts/package.json +11 -11
- package/template-ssr-react-ts/server.js +2 -2
- package/template-ssr-react-ts/src/App.tsx +2 -2
- package/template-ssr-react-ts/src/entry-client.tsx +5 -5
- package/template-ssr-react-ts/src/entry-server.tsx +5 -5
- package/template-ssr-react-ts/tsconfig.json +4 -3
- package/template-ssr-react-ts/tsconfig.node.json +16 -3
- package/template-ssr-react-ts/vite.config.ts +2 -2
- package/template-ssr-solid/index.html +1 -1
- package/template-ssr-solid/package.json +4 -4
- package/template-ssr-solid/server.js +2 -2
- package/template-ssr-solid/src/App.jsx +2 -2
- package/template-ssr-solid/vite.config.js +2 -2
- package/template-ssr-solid-ts/index.html +1 -1
- package/template-ssr-solid-ts/package.json +6 -6
- package/template-ssr-solid-ts/server.js +2 -2
- package/template-ssr-solid-ts/src/App.tsx +2 -2
- package/template-ssr-solid-ts/tsconfig.json +4 -3
- package/template-ssr-solid-ts/tsconfig.node.json +16 -3
- package/template-ssr-solid-ts/vite.config.ts +2 -2
- package/template-ssr-svelte/index.html +1 -1
- package/template-ssr-svelte/jsconfig.json +2 -3
- package/template-ssr-svelte/package-lock.json +2125 -0
- package/template-ssr-svelte/package.json +5 -5
- package/template-ssr-svelte/server.js +3 -3
- package/template-ssr-svelte/src/App.svelte +1 -1
- package/template-ssr-svelte/src/entry-client.js +2 -2
- package/template-ssr-svelte/src/entry-server.js +2 -2
- package/template-ssr-svelte/src/lib/Counter.svelte +2 -2
- package/template-ssr-svelte/svelte.config.js +1 -1
- package/template-ssr-svelte/vite.config.js +2 -8
- package/template-ssr-svelte-ts/index.html +1 -1
- package/template-ssr-svelte-ts/package-lock.json +2345 -0
- package/template-ssr-svelte-ts/package.json +12 -11
- package/template-ssr-svelte-ts/server.js +3 -3
- package/template-ssr-svelte-ts/src/App.svelte +1 -1
- package/template-ssr-svelte-ts/src/entry-client.ts +3 -3
- package/template-ssr-svelte-ts/src/entry-server.ts +2 -2
- package/template-ssr-svelte-ts/src/lib/Counter.svelte +2 -2
- package/template-ssr-svelte-ts/svelte.config.js +1 -1
- package/template-ssr-svelte-ts/tsconfig.json +2 -1
- package/template-ssr-svelte-ts/tsconfig.node.json +4 -1
- package/template-ssr-svelte-ts/vite.config.ts +2 -8
- package/template-ssr-transform/package.json +1 -1
- package/template-ssr-vanilla/index.html +1 -1
- package/template-ssr-vanilla/package.json +3 -3
- package/template-ssr-vanilla/server.js +2 -2
- package/template-ssr-vanilla/src/entry-server.js +1 -1
- package/template-ssr-vanilla-ts/index.html +1 -1
- package/template-ssr-vanilla-ts/package.json +6 -6
- package/template-ssr-vanilla-ts/server.js +2 -2
- package/template-ssr-vanilla-ts/src/entry-server.ts +1 -1
- package/template-ssr-vanilla-ts/tsconfig.json +3 -2
- package/template-ssr-vue/index.html +1 -1
- package/template-ssr-vue/package.json +5 -5
- package/template-ssr-vue/server.js +2 -2
- package/template-ssr-vue/src/App.vue +1 -1
- package/template-ssr-vue/src/components/HelloWorld.vue +1 -1
- package/template-ssr-vue/vite.config.js +2 -2
- package/template-ssr-vue-streaming/index.html +1 -1
- package/template-ssr-vue-streaming/package.json +5 -5
- package/template-ssr-vue-streaming/server.js +2 -2
- package/template-ssr-vue-streaming/src/App.vue +1 -1
- package/template-ssr-vue-streaming/src/components/HelloWorld.vue +1 -1
- package/template-ssr-vue-streaming/vite.config.js +2 -2
- package/template-ssr-vue-streaming-ts/index.html +1 -1
- package/template-ssr-vue-streaming-ts/package-lock.json +2346 -0
- package/template-ssr-vue-streaming-ts/package.json +9 -9
- package/template-ssr-vue-streaming-ts/server.js +2 -2
- package/template-ssr-vue-streaming-ts/src/App.vue +1 -1
- package/template-ssr-vue-streaming-ts/tsconfig.json +5 -4
- package/template-ssr-vue-streaming-ts/tsconfig.node.json +16 -2
- package/template-ssr-vue-streaming-ts/vite.config.ts +2 -2
- package/template-ssr-vue-ts/index.html +1 -1
- package/template-ssr-vue-ts/package-lock.json +2346 -0
- package/template-ssr-vue-ts/package.json +11 -10
- package/template-ssr-vue-ts/server.js +2 -2
- package/template-ssr-vue-ts/src/App.vue +1 -1
- package/template-ssr-vue-ts/tsconfig.json +5 -4
- package/template-ssr-vue-ts/tsconfig.node.json +16 -2
- package/template-ssr-vue-ts/vite.config.ts +2 -2
- package/template-deno-lit/vite.config.mjs +0 -16
- package/template-deno-lit-ts/vite.config.mts +0 -16
- package/template-deno-preact/vite.config.mjs +0 -14
- package/template-deno-preact-ts/vite.config.mts +0 -14
- package/template-deno-react/vite.config.mjs +0 -10
- package/template-deno-react-ts/vite.config.mts +0 -10
- package/template-deno-solid/vite.config.mjs +0 -9
- package/template-deno-solid-ts/vite.config.mts +0 -9
- package/template-deno-svelte/vite.config.mjs +0 -9
- package/template-deno-svelte-ts/vite.config.mts +0 -9
- package/template-deno-vue/vite.config.mjs +0 -9
- package/template-deno-vue-ts/vite.config.mts +0 -9
package/index.js
CHANGED
|
@@ -6,18 +6,20 @@ import path from 'node:path'
|
|
|
6
6
|
import { fileURLToPath } from 'node:url'
|
|
7
7
|
import minimist from 'minimist'
|
|
8
8
|
import prompts from 'prompts'
|
|
9
|
-
import
|
|
9
|
+
import colors from 'picocolors'
|
|
10
|
+
|
|
11
|
+
const {
|
|
10
12
|
blue,
|
|
11
13
|
cyan,
|
|
12
14
|
green,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
+
redBright,
|
|
16
|
+
blueBright,
|
|
15
17
|
magenta,
|
|
16
18
|
red,
|
|
17
19
|
reset,
|
|
18
20
|
yellow,
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
+
magentaBright,
|
|
22
|
+
} = colors
|
|
21
23
|
|
|
22
24
|
// Avoids autoconversion to number of the project name by defining that the args
|
|
23
25
|
// non associated with an option ( _ ) needs to be parsed as a string. See #4606
|
|
@@ -32,14 +34,14 @@ const FRAMEWORKS = [
|
|
|
32
34
|
{
|
|
33
35
|
name: 'ssr-vanilla',
|
|
34
36
|
display: 'JavaScript',
|
|
35
|
-
color: yellow
|
|
37
|
+
color: yellow,
|
|
36
38
|
},
|
|
37
39
|
{
|
|
38
40
|
name: 'ssr-vanilla-ts',
|
|
39
41
|
display: 'TypeScript',
|
|
40
|
-
color: blue
|
|
41
|
-
}
|
|
42
|
-
]
|
|
42
|
+
color: blue,
|
|
43
|
+
},
|
|
44
|
+
],
|
|
43
45
|
},
|
|
44
46
|
{
|
|
45
47
|
name: 'ssr-vue',
|
|
@@ -53,14 +55,14 @@ const FRAMEWORKS = [
|
|
|
53
55
|
{
|
|
54
56
|
name: 'ssr-vue-streaming',
|
|
55
57
|
display: 'JavaScript',
|
|
56
|
-
color: yellow
|
|
58
|
+
color: yellow,
|
|
57
59
|
},
|
|
58
60
|
{
|
|
59
61
|
name: 'ssr-vue-streaming-ts',
|
|
60
62
|
display: 'TypeScript',
|
|
61
|
-
color: blue
|
|
62
|
-
}
|
|
63
|
-
]
|
|
63
|
+
color: blue,
|
|
64
|
+
},
|
|
65
|
+
],
|
|
64
66
|
},
|
|
65
67
|
{
|
|
66
68
|
name: 'ssr-vue',
|
|
@@ -70,16 +72,16 @@ const FRAMEWORKS = [
|
|
|
70
72
|
{
|
|
71
73
|
name: 'ssr-vue',
|
|
72
74
|
display: 'JavaScript',
|
|
73
|
-
color: yellow
|
|
75
|
+
color: yellow,
|
|
74
76
|
},
|
|
75
77
|
{
|
|
76
78
|
name: 'ssr-vue-ts',
|
|
77
79
|
display: 'TypeScript',
|
|
78
|
-
color: blue
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
}
|
|
82
|
-
]
|
|
80
|
+
color: blue,
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
},
|
|
84
|
+
],
|
|
83
85
|
},
|
|
84
86
|
{
|
|
85
87
|
name: 'ssr-react',
|
|
@@ -93,24 +95,24 @@ const FRAMEWORKS = [
|
|
|
93
95
|
{
|
|
94
96
|
name: 'ssr-react-streaming',
|
|
95
97
|
display: 'JavaScript',
|
|
96
|
-
color: yellow
|
|
98
|
+
color: yellow,
|
|
97
99
|
},
|
|
98
100
|
{
|
|
99
101
|
name: 'ssr-react-streaming-ts',
|
|
100
102
|
display: 'TypeScript',
|
|
101
|
-
color: blue
|
|
103
|
+
color: blue,
|
|
102
104
|
},
|
|
103
105
|
{
|
|
104
106
|
name: 'ssr-react-swc-streaming',
|
|
105
107
|
display: 'JavaScript + SWC',
|
|
106
|
-
color: yellow
|
|
108
|
+
color: yellow,
|
|
107
109
|
},
|
|
108
110
|
{
|
|
109
111
|
name: 'ssr-react-swc-streaming-ts',
|
|
110
112
|
display: 'TypeScript + SWC',
|
|
111
|
-
color: blue
|
|
112
|
-
}
|
|
113
|
-
]
|
|
113
|
+
color: blue,
|
|
114
|
+
},
|
|
115
|
+
],
|
|
114
116
|
},
|
|
115
117
|
{
|
|
116
118
|
name: 'ssr-react',
|
|
@@ -120,26 +122,26 @@ const FRAMEWORKS = [
|
|
|
120
122
|
{
|
|
121
123
|
name: 'ssr-react',
|
|
122
124
|
display: 'JavaScript',
|
|
123
|
-
color: yellow
|
|
125
|
+
color: yellow,
|
|
124
126
|
},
|
|
125
127
|
{
|
|
126
128
|
name: 'ssr-react-ts',
|
|
127
129
|
display: 'TypeScript',
|
|
128
|
-
color: blue
|
|
130
|
+
color: blue,
|
|
129
131
|
},
|
|
130
132
|
{
|
|
131
133
|
name: 'ssr-react-swc',
|
|
132
134
|
display: 'JavaScript + SWC',
|
|
133
|
-
color: yellow
|
|
135
|
+
color: yellow,
|
|
134
136
|
},
|
|
135
137
|
{
|
|
136
138
|
name: 'ssr-react-swc-ts',
|
|
137
139
|
display: 'TypeScript + SWC',
|
|
138
|
-
color: blue
|
|
139
|
-
}
|
|
140
|
-
]
|
|
141
|
-
}
|
|
142
|
-
]
|
|
140
|
+
color: blue,
|
|
141
|
+
},
|
|
142
|
+
],
|
|
143
|
+
},
|
|
144
|
+
],
|
|
143
145
|
},
|
|
144
146
|
{
|
|
145
147
|
name: 'ssr-preact',
|
|
@@ -148,14 +150,14 @@ const FRAMEWORKS = [
|
|
|
148
150
|
{
|
|
149
151
|
name: 'ssr-preact',
|
|
150
152
|
display: 'JavaScript',
|
|
151
|
-
color: yellow
|
|
153
|
+
color: yellow,
|
|
152
154
|
},
|
|
153
155
|
{
|
|
154
156
|
name: 'ssr-preact-ts',
|
|
155
157
|
display: 'TypeScript',
|
|
156
|
-
color: blue
|
|
157
|
-
}
|
|
158
|
-
]
|
|
158
|
+
color: blue,
|
|
159
|
+
},
|
|
160
|
+
],
|
|
159
161
|
},
|
|
160
162
|
{
|
|
161
163
|
name: 'ssr-svelte',
|
|
@@ -164,30 +166,30 @@ const FRAMEWORKS = [
|
|
|
164
166
|
{
|
|
165
167
|
name: 'ssr-svelte',
|
|
166
168
|
display: 'JavaScript',
|
|
167
|
-
color: yellow
|
|
169
|
+
color: yellow,
|
|
168
170
|
},
|
|
169
171
|
{
|
|
170
172
|
name: 'ssr-svelte-ts',
|
|
171
173
|
display: 'TypeScript',
|
|
172
|
-
color: blue
|
|
173
|
-
}
|
|
174
|
-
]
|
|
174
|
+
color: blue,
|
|
175
|
+
},
|
|
176
|
+
],
|
|
175
177
|
},
|
|
176
178
|
{
|
|
177
179
|
name: 'ssr-solid',
|
|
178
|
-
color:
|
|
180
|
+
color: blueBright,
|
|
179
181
|
variants: [
|
|
180
182
|
{
|
|
181
183
|
name: 'ssr-solid',
|
|
182
184
|
display: 'JavaScript',
|
|
183
|
-
color: yellow
|
|
185
|
+
color: yellow,
|
|
184
186
|
},
|
|
185
187
|
{
|
|
186
188
|
name: 'ssr-solid-ts',
|
|
187
189
|
display: 'TypeScript',
|
|
188
|
-
color: blue
|
|
189
|
-
}
|
|
190
|
-
]
|
|
190
|
+
color: blue,
|
|
191
|
+
},
|
|
192
|
+
],
|
|
191
193
|
},
|
|
192
194
|
{
|
|
193
195
|
name: 'deno-vanilla',
|
|
@@ -196,14 +198,14 @@ const FRAMEWORKS = [
|
|
|
196
198
|
{
|
|
197
199
|
name: 'deno-vanilla',
|
|
198
200
|
display: 'JavaScript',
|
|
199
|
-
color: yellow
|
|
201
|
+
color: yellow,
|
|
200
202
|
},
|
|
201
203
|
{
|
|
202
204
|
name: 'deno-vanilla-ts',
|
|
203
205
|
display: 'TypeScript',
|
|
204
|
-
color: blue
|
|
205
|
-
}
|
|
206
|
-
]
|
|
206
|
+
color: blue,
|
|
207
|
+
},
|
|
208
|
+
],
|
|
207
209
|
},
|
|
208
210
|
{
|
|
209
211
|
name: 'deno-vue',
|
|
@@ -212,14 +214,14 @@ const FRAMEWORKS = [
|
|
|
212
214
|
{
|
|
213
215
|
name: 'deno-vue',
|
|
214
216
|
display: 'JavaScript',
|
|
215
|
-
color: yellow
|
|
217
|
+
color: yellow,
|
|
216
218
|
},
|
|
217
219
|
{
|
|
218
220
|
name: 'deno-vue-ts',
|
|
219
221
|
display: 'TypeScript',
|
|
220
|
-
color: blue
|
|
221
|
-
}
|
|
222
|
-
]
|
|
222
|
+
color: blue,
|
|
223
|
+
},
|
|
224
|
+
],
|
|
223
225
|
},
|
|
224
226
|
{
|
|
225
227
|
name: 'deno-react',
|
|
@@ -228,24 +230,24 @@ const FRAMEWORKS = [
|
|
|
228
230
|
{
|
|
229
231
|
name: 'deno-react',
|
|
230
232
|
display: 'JavaScript',
|
|
231
|
-
color: yellow
|
|
233
|
+
color: yellow,
|
|
232
234
|
},
|
|
233
235
|
{
|
|
234
236
|
name: 'deno-react-ts',
|
|
235
237
|
display: 'TypeScript',
|
|
236
|
-
color: blue
|
|
238
|
+
color: blue,
|
|
237
239
|
},
|
|
238
240
|
{
|
|
239
241
|
name: 'deno-react-swc',
|
|
240
242
|
display: 'JavaScript + SWC',
|
|
241
|
-
color: yellow
|
|
243
|
+
color: yellow,
|
|
242
244
|
},
|
|
243
245
|
{
|
|
244
246
|
name: 'deno-react-swc-ts',
|
|
245
247
|
display: 'TypeScript + SWC',
|
|
246
|
-
color: blue
|
|
247
|
-
}
|
|
248
|
-
]
|
|
248
|
+
color: blue,
|
|
249
|
+
},
|
|
250
|
+
],
|
|
249
251
|
},
|
|
250
252
|
{
|
|
251
253
|
name: 'deno-preact',
|
|
@@ -254,30 +256,30 @@ const FRAMEWORKS = [
|
|
|
254
256
|
{
|
|
255
257
|
name: 'deno-preact',
|
|
256
258
|
display: 'JavaScript',
|
|
257
|
-
color: yellow
|
|
259
|
+
color: yellow,
|
|
258
260
|
},
|
|
259
261
|
{
|
|
260
262
|
name: 'deno-preact-ts',
|
|
261
263
|
display: 'TypeScript',
|
|
262
|
-
color: blue
|
|
263
|
-
}
|
|
264
|
-
]
|
|
264
|
+
color: blue,
|
|
265
|
+
},
|
|
266
|
+
],
|
|
265
267
|
},
|
|
266
268
|
{
|
|
267
269
|
name: 'deno-lit',
|
|
268
|
-
color:
|
|
270
|
+
color: redBright,
|
|
269
271
|
variants: [
|
|
270
272
|
{
|
|
271
273
|
name: 'deno-lit',
|
|
272
274
|
display: 'JavaScript',
|
|
273
|
-
color: yellow
|
|
275
|
+
color: yellow,
|
|
274
276
|
},
|
|
275
277
|
{
|
|
276
278
|
name: 'deno-lit-ts',
|
|
277
279
|
display: 'TypeScript',
|
|
278
|
-
color: blue
|
|
279
|
-
}
|
|
280
|
-
]
|
|
280
|
+
color: blue,
|
|
281
|
+
},
|
|
282
|
+
],
|
|
281
283
|
},
|
|
282
284
|
{
|
|
283
285
|
name: 'deno-svelte',
|
|
@@ -286,59 +288,59 @@ const FRAMEWORKS = [
|
|
|
286
288
|
{
|
|
287
289
|
name: 'deno-svelte',
|
|
288
290
|
display: 'JavaScript',
|
|
289
|
-
color: yellow
|
|
291
|
+
color: yellow,
|
|
290
292
|
},
|
|
291
293
|
{
|
|
292
294
|
name: 'deno-svelte-ts',
|
|
293
295
|
display: 'TypeScript',
|
|
294
|
-
color: blue
|
|
295
|
-
}
|
|
296
|
-
]
|
|
296
|
+
color: blue,
|
|
297
|
+
},
|
|
298
|
+
],
|
|
297
299
|
},
|
|
298
300
|
{
|
|
299
301
|
name: 'deno-solid',
|
|
300
|
-
color:
|
|
302
|
+
color: blueBright,
|
|
301
303
|
variants: [
|
|
302
304
|
{
|
|
303
305
|
name: 'deno-solid',
|
|
304
306
|
display: 'JavaScript',
|
|
305
|
-
color: yellow
|
|
307
|
+
color: yellow,
|
|
306
308
|
},
|
|
307
309
|
{
|
|
308
310
|
name: 'deno-solid-ts',
|
|
309
311
|
display: 'TypeScript',
|
|
310
|
-
color: blue
|
|
311
|
-
}
|
|
312
|
-
]
|
|
312
|
+
color: blue,
|
|
313
|
+
},
|
|
314
|
+
],
|
|
313
315
|
},
|
|
314
316
|
{
|
|
315
317
|
name: 'library',
|
|
316
|
-
color:
|
|
318
|
+
color: magentaBright,
|
|
317
319
|
variants: [
|
|
318
320
|
{
|
|
319
321
|
name: 'library',
|
|
320
322
|
display: 'JavaScript',
|
|
321
|
-
color: yellow
|
|
323
|
+
color: yellow,
|
|
322
324
|
},
|
|
323
325
|
{
|
|
324
326
|
name: 'library-ts',
|
|
325
327
|
display: 'TypeScript',
|
|
326
|
-
color: blue
|
|
327
|
-
}
|
|
328
|
-
]
|
|
328
|
+
color: blue,
|
|
329
|
+
},
|
|
330
|
+
],
|
|
329
331
|
},
|
|
330
332
|
{
|
|
331
333
|
name: 'ssr-transform',
|
|
332
|
-
color:
|
|
333
|
-
}
|
|
334
|
+
color: redBright,
|
|
335
|
+
},
|
|
334
336
|
]
|
|
335
337
|
|
|
336
338
|
const TEMPLATES = FRAMEWORKS.map(
|
|
337
|
-
(f) => (f.variants && f.variants.map((v) => v.name)) || [f.name]
|
|
339
|
+
(f) => (f.variants && f.variants.map((v) => v.name)) || [f.name],
|
|
338
340
|
).reduce((a, b) => a.concat(b), [])
|
|
339
341
|
|
|
340
342
|
const renameFiles = {
|
|
341
|
-
_gitignore: '.gitignore'
|
|
343
|
+
_gitignore: '.gitignore',
|
|
342
344
|
}
|
|
343
345
|
|
|
344
346
|
async function init() {
|
|
@@ -363,7 +365,7 @@ async function init() {
|
|
|
363
365
|
initial: defaultTargetDir,
|
|
364
366
|
onState: (state) => {
|
|
365
367
|
targetDir = formatTargetDir(state.value) || defaultTargetDir
|
|
366
|
-
}
|
|
368
|
+
},
|
|
367
369
|
},
|
|
368
370
|
{
|
|
369
371
|
type: () =>
|
|
@@ -373,7 +375,7 @@ async function init() {
|
|
|
373
375
|
(targetDir === '.'
|
|
374
376
|
? 'Current directory'
|
|
375
377
|
: `Target directory "${targetDir}"`) +
|
|
376
|
-
` is not empty. Remove existing files and continue
|
|
378
|
+
` is not empty. Remove existing files and continue?`,
|
|
377
379
|
},
|
|
378
380
|
{
|
|
379
381
|
// @ts-ignore
|
|
@@ -383,7 +385,7 @@ async function init() {
|
|
|
383
385
|
}
|
|
384
386
|
return null
|
|
385
387
|
},
|
|
386
|
-
name: 'overwriteChecker'
|
|
388
|
+
name: 'overwriteChecker',
|
|
387
389
|
},
|
|
388
390
|
{
|
|
389
391
|
type: () => (isValidPackageName(getProjectName()) ? null : 'text'),
|
|
@@ -391,7 +393,7 @@ async function init() {
|
|
|
391
393
|
message: reset('Package name:'),
|
|
392
394
|
initial: () => toValidPackageName(getProjectName()),
|
|
393
395
|
validate: (dir) =>
|
|
394
|
-
isValidPackageName(dir) || 'Invalid package.json name'
|
|
396
|
+
isValidPackageName(dir) || 'Invalid package.json name',
|
|
395
397
|
},
|
|
396
398
|
{
|
|
397
399
|
type:
|
|
@@ -400,7 +402,7 @@ async function init() {
|
|
|
400
402
|
message:
|
|
401
403
|
typeof argTemplate === 'string' && !TEMPLATES.includes(argTemplate)
|
|
402
404
|
? reset(
|
|
403
|
-
`"${argTemplate}" isn't a valid template. Please choose from below:
|
|
405
|
+
`"${argTemplate}" isn't a valid template. Please choose from below: `,
|
|
404
406
|
)
|
|
405
407
|
: reset('Select a template:'),
|
|
406
408
|
initial: 0,
|
|
@@ -408,9 +410,9 @@ async function init() {
|
|
|
408
410
|
const frameworkColor = framework.color
|
|
409
411
|
return {
|
|
410
412
|
title: frameworkColor(framework.display || framework.name),
|
|
411
|
-
value: framework
|
|
413
|
+
value: framework,
|
|
412
414
|
}
|
|
413
|
-
})
|
|
415
|
+
}),
|
|
414
416
|
},
|
|
415
417
|
// Variant 1
|
|
416
418
|
{
|
|
@@ -424,9 +426,9 @@ async function init() {
|
|
|
424
426
|
const variantColor = variant.color
|
|
425
427
|
return {
|
|
426
428
|
title: variantColor(variant.display || variant.name),
|
|
427
|
-
value: variant.variants ? variant : variant.name
|
|
429
|
+
value: variant.variants ? variant : variant.name,
|
|
428
430
|
}
|
|
429
|
-
})
|
|
431
|
+
}),
|
|
430
432
|
},
|
|
431
433
|
// Variant 2
|
|
432
434
|
{
|
|
@@ -440,16 +442,16 @@ async function init() {
|
|
|
440
442
|
const variantColor = variant.color
|
|
441
443
|
return {
|
|
442
444
|
title: variantColor(variant.display || variant.name),
|
|
443
|
-
value: variant.name
|
|
445
|
+
value: variant.name,
|
|
444
446
|
}
|
|
445
|
-
})
|
|
446
|
-
}
|
|
447
|
+
}),
|
|
448
|
+
},
|
|
447
449
|
],
|
|
448
450
|
{
|
|
449
451
|
onCancel: () => {
|
|
450
452
|
throw new Error(red('✖') + ' Operation cancelled')
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
+
},
|
|
454
|
+
},
|
|
453
455
|
)
|
|
454
456
|
} catch (cancelled) {
|
|
455
457
|
console.log(cancelled.message)
|
|
@@ -480,7 +482,7 @@ async function init() {
|
|
|
480
482
|
const templateDir = path.resolve(
|
|
481
483
|
fileURLToPath(import.meta.url),
|
|
482
484
|
'..',
|
|
483
|
-
`template-${template}
|
|
485
|
+
`template-${template}`,
|
|
484
486
|
)
|
|
485
487
|
|
|
486
488
|
const write = (file, content) => {
|
|
@@ -513,7 +515,7 @@ async function init() {
|
|
|
513
515
|
console.log()
|
|
514
516
|
} else {
|
|
515
517
|
const pkg = JSON.parse(
|
|
516
|
-
fs.readFileSync(path.join(templateDir, `package.json`), 'utf-8')
|
|
518
|
+
fs.readFileSync(path.join(templateDir, `package.json`), 'utf-8'),
|
|
517
519
|
)
|
|
518
520
|
|
|
519
521
|
pkg.name = packageName || getProjectName()
|
|
@@ -566,7 +568,7 @@ function copy(src, dest) {
|
|
|
566
568
|
*/
|
|
567
569
|
function isValidPackageName(projectName) {
|
|
568
570
|
return /^(?:@[a-z0-9-*~][a-z0-9-*._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/.test(
|
|
569
|
-
projectName
|
|
571
|
+
projectName,
|
|
570
572
|
)
|
|
571
573
|
}
|
|
572
574
|
|
|
@@ -625,7 +627,7 @@ function pkgFromUserAgent(userAgent) {
|
|
|
625
627
|
const pkgSpecArr = pkgSpec.split('/')
|
|
626
628
|
return {
|
|
627
629
|
name: pkgSpecArr[0],
|
|
628
|
-
version: pkgSpecArr[1]
|
|
630
|
+
version: pkgSpecArr[1],
|
|
629
631
|
}
|
|
630
632
|
}
|
|
631
633
|
|
|
@@ -636,34 +638,25 @@ function pkgFromUserAgent(userAgent) {
|
|
|
636
638
|
function setupReactSwc(root, { isTs, isDeno }) {
|
|
637
639
|
if (isDeno) {
|
|
638
640
|
editFile(path.resolve(root, 'deno.json'), (content) => {
|
|
639
|
-
return content.replace(
|
|
641
|
+
return content.replace(
|
|
642
|
+
/"@vitejs\/plugin-react": ".+?"/,
|
|
643
|
+
`"@vitejs/plugin-react-swc": "npm:@vitejs/plugin-react-swc@^3.7.1"`,
|
|
644
|
+
)
|
|
640
645
|
})
|
|
641
|
-
editFile(
|
|
642
|
-
path.resolve(root, `vite.config.m${isTs ? 'ts' : 'js'}`),
|
|
643
|
-
(content) => {
|
|
644
|
-
return content.replace(
|
|
645
|
-
/@vitejs\/plugin-react@.+?'/,
|
|
646
|
-
"@vitejs/plugin-react-swc@^3.5.0'"
|
|
647
|
-
)
|
|
648
|
-
}
|
|
649
|
-
)
|
|
650
646
|
} else {
|
|
651
647
|
editFile(path.resolve(root, 'package.json'), (content) => {
|
|
652
648
|
return content.replace(
|
|
653
649
|
/"@vitejs\/plugin-react": ".+?"/,
|
|
654
|
-
`"@vitejs/plugin-react-swc": "^3.
|
|
650
|
+
`"@vitejs/plugin-react-swc": "^3.7.1"`,
|
|
655
651
|
)
|
|
656
652
|
})
|
|
657
|
-
editFile(
|
|
658
|
-
path.resolve(root, `vite.config.${isTs ? 'ts' : 'js'}`),
|
|
659
|
-
(content) => {
|
|
660
|
-
return content.replace(
|
|
661
|
-
'@vitejs/plugin-react',
|
|
662
|
-
'@vitejs/plugin-react-swc'
|
|
663
|
-
)
|
|
664
|
-
}
|
|
665
|
-
)
|
|
666
653
|
}
|
|
654
|
+
editFile(
|
|
655
|
+
path.resolve(root, `vite.config.${isTs ? 'ts' : 'js'}`),
|
|
656
|
+
(content) => {
|
|
657
|
+
return content.replace('@vitejs/plugin-react', '@vitejs/plugin-react-swc')
|
|
658
|
+
},
|
|
659
|
+
)
|
|
667
660
|
}
|
|
668
661
|
|
|
669
662
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-vite-extra",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Bjorn Lu",
|
|
@@ -28,11 +28,15 @@
|
|
|
28
28
|
},
|
|
29
29
|
"homepage": "https://github.com/bluwy/create-vite-extra#readme",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"kolorist": "^1.8.0",
|
|
32
31
|
"minimist": "^1.2.8",
|
|
32
|
+
"picocolors": "^1.1.1",
|
|
33
33
|
"prompts": "^2.4.2"
|
|
34
34
|
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"prettier": "^3.3.3"
|
|
37
|
+
},
|
|
35
38
|
"scripts": {
|
|
39
|
+
"format": "prettier --write .",
|
|
36
40
|
"update-deps": "pnpm update -r --latest && node update-deno-deps.js"
|
|
37
41
|
}
|
|
38
42
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Running
|
|
4
4
|
|
|
5
|
-
You need to have Deno
|
|
5
|
+
You need to have Deno v2.0.0 or later intalled to run this repo.
|
|
6
6
|
|
|
7
7
|
Start a dev server:
|
|
8
8
|
|
|
@@ -17,14 +17,3 @@ Build production assets:
|
|
|
17
17
|
```
|
|
18
18
|
$ deno task build
|
|
19
19
|
```
|
|
20
|
-
|
|
21
|
-
## Notes
|
|
22
|
-
|
|
23
|
-
- You need to use `.mjs` or `.mts` extension for the `vite.config.[ext]` file.
|
|
24
|
-
|
|
25
|
-
## Papercuts
|
|
26
|
-
|
|
27
|
-
Currently there's a "papercut" for Deno users:
|
|
28
|
-
|
|
29
|
-
- peer dependencies need to be referenced in `vite.config.js` - in this example
|
|
30
|
-
it is `lit` package that needs to be referenced
|
|
@@ -2,5 +2,13 @@
|
|
|
2
2
|
"tasks": {
|
|
3
3
|
"dev": "deno run -A --node-modules-dir npm:vite",
|
|
4
4
|
"build": "deno run -A --node-modules-dir npm:vite build"
|
|
5
|
+
},
|
|
6
|
+
"compilerOptions": {
|
|
7
|
+
"lib": ["ES2020", "DOM", "DOM.Iterable"]
|
|
8
|
+
},
|
|
9
|
+
"imports": {
|
|
10
|
+
"@deno/vite-plugin": "npm:@deno/vite-plugin@^1.0.0",
|
|
11
|
+
"lit": "npm:lit@^3.2.1",
|
|
12
|
+
"vite": "npm:vite@^5.4.9"
|
|
5
13
|
}
|
|
6
14
|
}
|
|
@@ -18,7 +18,7 @@ export class MyElement extends LitElement {
|
|
|
18
18
|
/**
|
|
19
19
|
* The number of times the button has been clicked.
|
|
20
20
|
*/
|
|
21
|
-
count: { type: Number }
|
|
21
|
+
count: { type: Number },
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
|
|
@@ -32,7 +32,7 @@ export class MyElement extends LitElement {
|
|
|
32
32
|
return html`
|
|
33
33
|
<img src="/vite-deno.svg" alt="Vite with Deno" />
|
|
34
34
|
<div>
|
|
35
|
-
<a href="https://
|
|
35
|
+
<a href="https://vite.dev" target="_blank">
|
|
36
36
|
<img src="/vite.svg" class="logo" alt="Vite logo" />
|
|
37
37
|
</a>
|
|
38
38
|
<a href="https://lit.dev" target="_blank">
|
|
@@ -127,4 +127,4 @@ export class MyElement extends LitElement {
|
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
|
|
130
|
+
globalThis.customElements.define('my-element', MyElement)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineConfig } from 'vite'
|
|
2
|
+
import deno from '@deno/vite-plugin'
|
|
3
|
+
|
|
4
|
+
// https://vite.dev/config/
|
|
5
|
+
export default defineConfig({
|
|
6
|
+
plugins: [deno()],
|
|
7
|
+
build: {
|
|
8
|
+
lib: {
|
|
9
|
+
entry: 'src/my-element.js',
|
|
10
|
+
formats: ['es'],
|
|
11
|
+
},
|
|
12
|
+
rollupOptions: {
|
|
13
|
+
external: /^lit/,
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
})
|