@tamagui/cli 1.59.3 → 1.59.4
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/dev.js +42 -16
- package/dist/dev.js.map +1 -1
- package/package.json +9 -9
- package/src/dev.ts +53 -28
- package/types/dev.d.ts.map +1 -1
package/dist/dev.js
CHANGED
|
@@ -49,14 +49,16 @@ const dev = async (options) => {
|
|
|
49
49
|
console.log((err == null ? void 0 : err.message) || err);
|
|
50
50
|
});
|
|
51
51
|
const packageRootDir = (0, import_path.join)(__dirname, "..");
|
|
52
|
-
await (0, import_vite_plugin.nativePrebuild)();
|
|
53
52
|
const port = options.port || 8081;
|
|
54
53
|
const tamaguiVitePlugin = (0, import_vite_plugin.tamaguiPlugin)({
|
|
55
54
|
...options.tamaguiOptions,
|
|
56
|
-
useReactNativeWebLite: true,
|
|
55
|
+
// useReactNativeWebLite: true,
|
|
57
56
|
target: "web"
|
|
58
57
|
});
|
|
59
|
-
const plugins = [
|
|
58
|
+
const plugins = [
|
|
59
|
+
//
|
|
60
|
+
tamaguiVitePlugin
|
|
61
|
+
];
|
|
60
62
|
if (process.env.IS_TAMAGUI_DEV) {
|
|
61
63
|
const inspect = require("vite-plugin-inspect");
|
|
62
64
|
plugins.push(inspect());
|
|
@@ -66,8 +68,25 @@ const dev = async (options) => {
|
|
|
66
68
|
let serverConfig = {
|
|
67
69
|
root,
|
|
68
70
|
mode: "development",
|
|
69
|
-
esbuild: false,
|
|
70
71
|
clearScreen: false,
|
|
72
|
+
// for expo-router
|
|
73
|
+
// optimizeDeps: {
|
|
74
|
+
// disabled: false,
|
|
75
|
+
// include: [
|
|
76
|
+
// 'escape-string-regexp',
|
|
77
|
+
// 'use-latest-callback',
|
|
78
|
+
// 'react-is',
|
|
79
|
+
// 'color',
|
|
80
|
+
// 'warn-once',
|
|
81
|
+
// '@bacons/react-views',
|
|
82
|
+
// 'invariant',
|
|
83
|
+
// 'compare-versions',
|
|
84
|
+
// 'expo-constants',
|
|
85
|
+
// 'url-parse',
|
|
86
|
+
// 'qs',
|
|
87
|
+
// '@expo/metro-runtime',
|
|
88
|
+
// ],
|
|
89
|
+
// },
|
|
71
90
|
plugins: [
|
|
72
91
|
...plugins,
|
|
73
92
|
(0, import_plugin_react_swc.default)(),
|
|
@@ -91,6 +110,8 @@ const dev = async (options) => {
|
|
|
91
110
|
}
|
|
92
111
|
let source = code;
|
|
93
112
|
source = ((_a = await (0, import_vite_native_swc.transformForBuild)(id, source)) == null ? void 0 : _a.code) || "";
|
|
113
|
+
console.log("FROM-----", code);
|
|
114
|
+
console.log("TO------", source);
|
|
94
115
|
const importsMap = {};
|
|
95
116
|
const [imports] = (0, import_es_module_lexer.parse)(source);
|
|
96
117
|
let accumulatedSliceOffset = 0;
|
|
@@ -98,6 +119,7 @@ const dev = async (options) => {
|
|
|
98
119
|
const { n: importName, s: start } = specifier;
|
|
99
120
|
if (importName) {
|
|
100
121
|
const id2 = await (0, import_vite_plugin.getVitePath)(file, importName);
|
|
122
|
+
console.log("replace", importName, id2);
|
|
101
123
|
if (!id2) {
|
|
102
124
|
console.warn("???");
|
|
103
125
|
continue;
|
|
@@ -119,6 +141,7 @@ const dev = async (options) => {
|
|
|
119
141
|
const require = createRequire(${JSON.stringify(importsMap, null, 2)})
|
|
120
142
|
${source.replace(`import.meta.hot.accept(() => {})`, ``)};
|
|
121
143
|
return exports })({})`;
|
|
144
|
+
console.log("hotUpdateSource", hotUpdateSource);
|
|
122
145
|
hotUpdatedCJSFiles.set(id, hotUpdateSource);
|
|
123
146
|
} catch (err) {
|
|
124
147
|
console.log(`Error processing hmr update:`, err);
|
|
@@ -171,14 +194,6 @@ const dev = async (options) => {
|
|
|
171
194
|
return (_a = server.httpServer) == null ? void 0 : _a.on("close", res);
|
|
172
195
|
});
|
|
173
196
|
async function getBundleCode() {
|
|
174
|
-
if (isBuilding) {
|
|
175
|
-
const res = await isBuilding;
|
|
176
|
-
return res;
|
|
177
|
-
}
|
|
178
|
-
let done;
|
|
179
|
-
isBuilding = new Promise((res) => {
|
|
180
|
-
done = res;
|
|
181
|
-
});
|
|
182
197
|
const tmpBundle = (0, import_path.join)(process.cwd(), "bundle.tmp.js");
|
|
183
198
|
if (await (0, import_fs_extra.pathExists)(tmpBundle)) {
|
|
184
199
|
console.log(
|
|
@@ -187,7 +202,15 @@ const dev = async (options) => {
|
|
|
187
202
|
);
|
|
188
203
|
return await (0, import_promises.readFile)(tmpBundle, "utf-8");
|
|
189
204
|
}
|
|
190
|
-
|
|
205
|
+
if (isBuilding) {
|
|
206
|
+
const res = await isBuilding;
|
|
207
|
+
return res;
|
|
208
|
+
}
|
|
209
|
+
let done;
|
|
210
|
+
isBuilding = new Promise((res) => {
|
|
211
|
+
done = res;
|
|
212
|
+
});
|
|
213
|
+
const buildConfig = {
|
|
191
214
|
plugins: [
|
|
192
215
|
{
|
|
193
216
|
name: "tamagui-env-native",
|
|
@@ -236,7 +259,9 @@ const dev = async (options) => {
|
|
|
236
259
|
__DEV__: "true",
|
|
237
260
|
"process.env.NODE_ENV": `"development"`
|
|
238
261
|
}
|
|
239
|
-
}
|
|
262
|
+
};
|
|
263
|
+
await (0, import_vite.resolveConfig)(buildConfig, "build");
|
|
264
|
+
const buildOutput = await (0, import_vite.build)(buildConfig);
|
|
240
265
|
if (!("output" in buildOutput)) {
|
|
241
266
|
throw `\u274C`;
|
|
242
267
|
}
|
|
@@ -256,8 +281,9 @@ ___modules___["${module2.fileName}"] = ((exports, module2) => {
|
|
|
256
281
|
|
|
257
282
|
${module2.isEntry ? `
|
|
258
283
|
// run entry
|
|
259
|
-
|
|
260
|
-
|
|
284
|
+
const __require = createRequire({})
|
|
285
|
+
__require("react-native")
|
|
286
|
+
__require("${module2.fileName}")
|
|
261
287
|
` : ""}
|
|
262
288
|
`;
|
|
263
289
|
}
|
package/dist/dev.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/dev.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAoC;AACpC,kBAAwC;AAGxC,6BAGO;AACP,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["react", "module", "id", "chalk", "viteReactPlugin"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/cli",
|
|
3
|
-
"version": "1.59.
|
|
3
|
+
"version": "1.59.4",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"types": "./types/index.d.ts",
|
|
6
6
|
"main": "dist",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
"@callstack/repack-debugger-app": "^1.0.0",
|
|
29
29
|
"@fastify/sensible": "^4.1.0",
|
|
30
30
|
"@fastify/static": "^5.0.2",
|
|
31
|
-
"@tamagui/build": "1.59.
|
|
32
|
-
"@tamagui/create-theme": "1.59.
|
|
33
|
-
"@tamagui/generate-themes": "1.59.
|
|
34
|
-
"@tamagui/static": "1.59.
|
|
35
|
-
"@tamagui/types": "1.59.
|
|
36
|
-
"@tamagui/vite-native-hmr": "1.59.
|
|
37
|
-
"@tamagui/vite-native-swc": "1.59.
|
|
38
|
-
"@tamagui/vite-plugin": "1.59.
|
|
31
|
+
"@tamagui/build": "1.59.4",
|
|
32
|
+
"@tamagui/create-theme": "1.59.4",
|
|
33
|
+
"@tamagui/generate-themes": "1.59.4",
|
|
34
|
+
"@tamagui/static": "1.59.4",
|
|
35
|
+
"@tamagui/types": "1.59.4",
|
|
36
|
+
"@tamagui/vite-native-hmr": "1.59.4",
|
|
37
|
+
"@tamagui/vite-native-swc": "1.59.4",
|
|
38
|
+
"@tamagui/vite-plugin": "1.59.4",
|
|
39
39
|
"@types/compression": "^1.7.2",
|
|
40
40
|
"@types/morgan": "^1.9.3",
|
|
41
41
|
"@vitejs/plugin-react": "^4.0.4",
|
package/src/dev.ts
CHANGED
|
@@ -6,12 +6,7 @@ import viteReactPlugin, {
|
|
|
6
6
|
swcTransform,
|
|
7
7
|
transformForBuild,
|
|
8
8
|
} from '@tamagui/vite-native-swc'
|
|
9
|
-
import {
|
|
10
|
-
getVitePath,
|
|
11
|
-
nativePlugin,
|
|
12
|
-
nativePrebuild,
|
|
13
|
-
tamaguiPlugin,
|
|
14
|
-
} from '@tamagui/vite-plugin'
|
|
9
|
+
import { getVitePath, nativePlugin, tamaguiPlugin } from '@tamagui/vite-plugin'
|
|
15
10
|
import react from '@vitejs/plugin-react-swc'
|
|
16
11
|
import chalk from 'chalk'
|
|
17
12
|
import { parse } from 'es-module-lexer'
|
|
@@ -27,24 +22,25 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
27
22
|
const { root } = options
|
|
28
23
|
|
|
29
24
|
process.on('uncaughtException', (err) => {
|
|
25
|
+
// rome-ignore lint/suspicious/noConsoleLog: <explanation>
|
|
30
26
|
console.log(err?.message || err)
|
|
31
27
|
})
|
|
32
28
|
|
|
33
29
|
const packageRootDir = join(__dirname, '..')
|
|
34
30
|
|
|
35
|
-
// build react-native
|
|
36
|
-
await nativePrebuild()
|
|
37
|
-
|
|
38
31
|
// react native port (it scans 19000 +5)
|
|
39
32
|
const port = options.port || 8081
|
|
40
33
|
|
|
41
34
|
const tamaguiVitePlugin = tamaguiPlugin({
|
|
42
35
|
...options.tamaguiOptions,
|
|
43
|
-
useReactNativeWebLite: true,
|
|
36
|
+
// useReactNativeWebLite: true,
|
|
44
37
|
target: 'web',
|
|
45
38
|
})
|
|
46
39
|
|
|
47
|
-
const plugins = [
|
|
40
|
+
const plugins = [
|
|
41
|
+
//
|
|
42
|
+
tamaguiVitePlugin,
|
|
43
|
+
] satisfies InlineConfig['plugins']
|
|
48
44
|
|
|
49
45
|
if (process.env.IS_TAMAGUI_DEV) {
|
|
50
46
|
const inspect = require('vite-plugin-inspect')
|
|
@@ -58,9 +54,27 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
58
54
|
let serverConfig = {
|
|
59
55
|
root,
|
|
60
56
|
mode: 'development',
|
|
61
|
-
esbuild: false,
|
|
62
57
|
clearScreen: false,
|
|
63
58
|
|
|
59
|
+
// for expo-router
|
|
60
|
+
// optimizeDeps: {
|
|
61
|
+
// disabled: false,
|
|
62
|
+
// include: [
|
|
63
|
+
// 'escape-string-regexp',
|
|
64
|
+
// 'use-latest-callback',
|
|
65
|
+
// 'react-is',
|
|
66
|
+
// 'color',
|
|
67
|
+
// 'warn-once',
|
|
68
|
+
// '@bacons/react-views',
|
|
69
|
+
// 'invariant',
|
|
70
|
+
// 'compare-versions',
|
|
71
|
+
// 'expo-constants',
|
|
72
|
+
// 'url-parse',
|
|
73
|
+
// 'qs',
|
|
74
|
+
// '@expo/metro-runtime',
|
|
75
|
+
// ],
|
|
76
|
+
// },
|
|
77
|
+
|
|
64
78
|
plugins: [
|
|
65
79
|
...plugins,
|
|
66
80
|
|
|
@@ -94,6 +108,9 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
94
108
|
// we have to remove jsx before we can parse imports...
|
|
95
109
|
source = (await transformForBuild(id, source))?.code || ''
|
|
96
110
|
|
|
111
|
+
console.log('FROM-----', code)
|
|
112
|
+
console.log('TO------', source)
|
|
113
|
+
|
|
97
114
|
const importsMap = {}
|
|
98
115
|
|
|
99
116
|
// parse imports of modules into ids:
|
|
@@ -107,6 +124,7 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
107
124
|
|
|
108
125
|
if (importName) {
|
|
109
126
|
const id = await getVitePath(file, importName)
|
|
127
|
+
console.log('replace', importName, id)
|
|
110
128
|
if (!id) {
|
|
111
129
|
console.warn('???')
|
|
112
130
|
continue
|
|
@@ -142,6 +160,8 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
142
160
|
${source.replace(`import.meta.hot.accept(() => {})`, ``)};
|
|
143
161
|
return exports })({})`
|
|
144
162
|
|
|
163
|
+
console.log('hotUpdateSource', hotUpdateSource)
|
|
164
|
+
|
|
145
165
|
hotUpdatedCJSFiles.set(id, hotUpdateSource)
|
|
146
166
|
} catch (err) {
|
|
147
167
|
// rome-ignore lint/suspicious/noConsoleLog: <explanation>
|
|
@@ -197,8 +217,6 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
197
217
|
indexJson: getIndexJsonReponse({ port, root }),
|
|
198
218
|
})
|
|
199
219
|
|
|
200
|
-
// getBundleCode()
|
|
201
|
-
|
|
202
220
|
// rome-ignore lint/suspicious/noConsoleLog: ok
|
|
203
221
|
console.log(`Listening on:`, chalk.green(`http://localhost:${port}`))
|
|
204
222
|
server.printUrls()
|
|
@@ -211,16 +229,6 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
211
229
|
await new Promise((res) => server.httpServer?.on('close', res))
|
|
212
230
|
|
|
213
231
|
async function getBundleCode() {
|
|
214
|
-
if (isBuilding) {
|
|
215
|
-
const res = await isBuilding
|
|
216
|
-
return res
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
let done
|
|
220
|
-
isBuilding = new Promise((res) => {
|
|
221
|
-
done = res
|
|
222
|
-
})
|
|
223
|
-
|
|
224
232
|
// for easier quick testing things:
|
|
225
233
|
const tmpBundle = join(process.cwd(), 'bundle.tmp.js')
|
|
226
234
|
if (await pathExists(tmpBundle)) {
|
|
@@ -232,8 +240,18 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
232
240
|
return await readFile(tmpBundle, 'utf-8')
|
|
233
241
|
}
|
|
234
242
|
|
|
243
|
+
if (isBuilding) {
|
|
244
|
+
const res = await isBuilding
|
|
245
|
+
return res
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
let done
|
|
249
|
+
isBuilding = new Promise((res) => {
|
|
250
|
+
done = res
|
|
251
|
+
})
|
|
252
|
+
|
|
235
253
|
// build app
|
|
236
|
-
const
|
|
254
|
+
const buildConfig = {
|
|
237
255
|
plugins: [
|
|
238
256
|
{
|
|
239
257
|
name: 'tamagui-env-native',
|
|
@@ -262,6 +280,7 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
262
280
|
port,
|
|
263
281
|
mode: 'build',
|
|
264
282
|
}),
|
|
283
|
+
|
|
265
284
|
viteReactPlugin({
|
|
266
285
|
tsDecorators: true,
|
|
267
286
|
mode: 'build',
|
|
@@ -286,7 +305,12 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
286
305
|
__DEV__: 'true',
|
|
287
306
|
'process.env.NODE_ENV': `"development"`,
|
|
288
307
|
},
|
|
289
|
-
}
|
|
308
|
+
} satisfies InlineConfig
|
|
309
|
+
|
|
310
|
+
// this fixes my swap-react-native plugin not being called pre 😳
|
|
311
|
+
await resolveConfig(buildConfig, 'build')
|
|
312
|
+
|
|
313
|
+
const buildOutput = await build(buildConfig)
|
|
290
314
|
|
|
291
315
|
if (!('output' in buildOutput)) {
|
|
292
316
|
throw `❌`
|
|
@@ -316,8 +340,9 @@ ${
|
|
|
316
340
|
module.isEntry
|
|
317
341
|
? `
|
|
318
342
|
// run entry
|
|
319
|
-
|
|
320
|
-
|
|
343
|
+
const __require = createRequire({})
|
|
344
|
+
__require("react-native")
|
|
345
|
+
__require("${module.fileName}")
|
|
321
346
|
`
|
|
322
347
|
: ''
|
|
323
348
|
}
|
package/types/dev.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAiBnD,eAAO,MAAM,GAAG,YAAmB,kBAAkB,kBAiXpD,CAAA"}
|