@tamagui/cli 1.61.1 → 1.61.3
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 +93 -48
- package/dist/dev.js.map +2 -2
- package/dist/vendor/repack/dev-server/src/createServer.js +15 -0
- package/dist/vendor/repack/dev-server/src/createServer.js.map +1 -1
- package/package.json +11 -9
- package/src/dev.ts +107 -60
- package/src/vendor/repack/dev-server/src/createServer.ts +19 -0
- package/types/dev.d.ts.map +1 -1
- package/types/vendor/repack/dev-server/src/createServer.d.ts.map +1 -1
package/dist/dev.js
CHANGED
|
@@ -33,6 +33,7 @@ __export(dev_exports, {
|
|
|
33
33
|
module.exports = __toCommonJS(dev_exports);
|
|
34
34
|
var import_promises = require("fs/promises");
|
|
35
35
|
var import_path = require("path");
|
|
36
|
+
var babel = __toESM(require("@babel/core"));
|
|
36
37
|
var import_vite_native_swc = __toESM(require("@tamagui/vite-native-swc"));
|
|
37
38
|
var import_vite_plugin = require("@tamagui/vite-plugin");
|
|
38
39
|
var import_plugin_react_swc = __toESM(require("@vitejs/plugin-react-swc"));
|
|
@@ -69,24 +70,6 @@ const dev = async (options) => {
|
|
|
69
70
|
root,
|
|
70
71
|
mode: "development",
|
|
71
72
|
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
|
-
// },
|
|
90
73
|
plugins: [
|
|
91
74
|
...plugins,
|
|
92
75
|
(0, import_plugin_react_swc.default)(),
|
|
@@ -110,8 +93,6 @@ const dev = async (options) => {
|
|
|
110
93
|
}
|
|
111
94
|
let source = code;
|
|
112
95
|
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);
|
|
115
96
|
const importsMap = {};
|
|
116
97
|
const [imports] = (0, import_es_module_lexer.parse)(source);
|
|
117
98
|
let accumulatedSliceOffset = 0;
|
|
@@ -119,7 +100,6 @@ const dev = async (options) => {
|
|
|
119
100
|
const { n: importName, s: start } = specifier;
|
|
120
101
|
if (importName) {
|
|
121
102
|
const id2 = await (0, import_vite_plugin.getVitePath)(file, importName);
|
|
122
|
-
console.log("replace", importName, id2);
|
|
123
103
|
if (!id2) {
|
|
124
104
|
console.warn("???");
|
|
125
105
|
continue;
|
|
@@ -139,9 +119,11 @@ const dev = async (options) => {
|
|
|
139
119
|
}
|
|
140
120
|
const hotUpdateSource = `exports = ((exports) => {
|
|
141
121
|
const require = createRequire(${JSON.stringify(importsMap, null, 2)})
|
|
142
|
-
${source.replace(`import.meta.hot.accept(() => {})`, ``)
|
|
122
|
+
${source.replace(`import.meta.hot.accept(() => {})`, ``).replaceAll(
|
|
123
|
+
/import.meta.glob\(.*\)/gi,
|
|
124
|
+
`globalThis['__importMetaGlobbed'] || {}`
|
|
125
|
+
)};
|
|
143
126
|
return exports })({})`;
|
|
144
|
-
console.log("hotUpdateSource", hotUpdateSource);
|
|
145
127
|
hotUpdatedCJSFiles.set(id, hotUpdateSource);
|
|
146
128
|
} catch (err) {
|
|
147
129
|
console.log(`Error processing hmr update:`, err);
|
|
@@ -210,8 +192,88 @@ const dev = async (options) => {
|
|
|
210
192
|
isBuilding = new Promise((res) => {
|
|
211
193
|
done = res;
|
|
212
194
|
});
|
|
195
|
+
const jsxRuntime = {
|
|
196
|
+
alias: "virtual:react-jsx",
|
|
197
|
+
contents: await (0, import_promises.readFile)(
|
|
198
|
+
require.resolve("@tamagui/react-native-prebuilt/jsx-runtime"),
|
|
199
|
+
"utf-8"
|
|
200
|
+
)
|
|
201
|
+
};
|
|
202
|
+
const virtualModules = {
|
|
203
|
+
"react-native": {
|
|
204
|
+
alias: "virtual:react-native",
|
|
205
|
+
contents: await (0, import_promises.readFile)(
|
|
206
|
+
require.resolve("@tamagui/react-native-prebuilt"),
|
|
207
|
+
"utf-8"
|
|
208
|
+
)
|
|
209
|
+
},
|
|
210
|
+
react: {
|
|
211
|
+
alias: "virtual:react",
|
|
212
|
+
contents: await (0, import_promises.readFile)(
|
|
213
|
+
require.resolve("@tamagui/react-native-prebuilt/react"),
|
|
214
|
+
"utf-8"
|
|
215
|
+
)
|
|
216
|
+
},
|
|
217
|
+
"react/jsx-runtime": jsxRuntime,
|
|
218
|
+
"react/jsx-dev-runtime": jsxRuntime
|
|
219
|
+
};
|
|
220
|
+
const swapRnPlugin = {
|
|
221
|
+
name: `swap-react-native`,
|
|
222
|
+
enforce: "pre",
|
|
223
|
+
resolveId(id) {
|
|
224
|
+
if (id.startsWith("react-native/Libraries")) {
|
|
225
|
+
return `virtual:rn-internals:${id}`;
|
|
226
|
+
}
|
|
227
|
+
for (const targetId in virtualModules) {
|
|
228
|
+
if (id === targetId || id.includes(`node_modules/${targetId}/`)) {
|
|
229
|
+
const info = virtualModules[targetId];
|
|
230
|
+
return info.alias;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
},
|
|
234
|
+
load(id) {
|
|
235
|
+
if (id.startsWith("virtual:rn-internals")) {
|
|
236
|
+
const idOut = id.replace("virtual:rn-internals:", "");
|
|
237
|
+
return `const val = __cachedModules["${idOut}"]
|
|
238
|
+
export const PressabilityDebugView = val.PressabilityDebugView
|
|
239
|
+
export default val ? val.default || val : val`;
|
|
240
|
+
}
|
|
241
|
+
for (const targetId in virtualModules) {
|
|
242
|
+
const info = virtualModules[targetId];
|
|
243
|
+
if (id === info.alias) {
|
|
244
|
+
return info.contents;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
};
|
|
249
|
+
async function babelReanimated(input, filename) {
|
|
250
|
+
return await new Promise((res, rej) => {
|
|
251
|
+
babel.transform(
|
|
252
|
+
input,
|
|
253
|
+
{
|
|
254
|
+
plugins: ["react-native-reanimated/plugin"],
|
|
255
|
+
filename
|
|
256
|
+
},
|
|
257
|
+
(err, result) => {
|
|
258
|
+
if (!result || err)
|
|
259
|
+
rej(err || "no res");
|
|
260
|
+
res(result.code);
|
|
261
|
+
}
|
|
262
|
+
);
|
|
263
|
+
});
|
|
264
|
+
}
|
|
213
265
|
const buildConfig = {
|
|
214
266
|
plugins: [
|
|
267
|
+
swapRnPlugin,
|
|
268
|
+
{
|
|
269
|
+
name: "reanimated",
|
|
270
|
+
async transform(code, id) {
|
|
271
|
+
if (code.includes("worklet")) {
|
|
272
|
+
const out2 = await babelReanimated(code, id);
|
|
273
|
+
return out2;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
},
|
|
215
277
|
{
|
|
216
278
|
name: "tamagui-env-native",
|
|
217
279
|
config() {
|
|
@@ -223,14 +285,6 @@ const dev = async (options) => {
|
|
|
223
285
|
}
|
|
224
286
|
},
|
|
225
287
|
viteRNClientPlugin,
|
|
226
|
-
// viteReactPlugin({
|
|
227
|
-
// tsDecorators: true,
|
|
228
|
-
// mode: 'serve',
|
|
229
|
-
// }),
|
|
230
|
-
// nativePlugin({
|
|
231
|
-
// port,
|
|
232
|
-
// mode: 'serve',
|
|
233
|
-
// }),
|
|
234
288
|
(0, import_vite_plugin.nativePlugin)({
|
|
235
289
|
port,
|
|
236
290
|
mode: "build"
|
|
@@ -246,17 +300,20 @@ const dev = async (options) => {
|
|
|
246
300
|
build: {
|
|
247
301
|
ssr: false,
|
|
248
302
|
minify: false,
|
|
303
|
+
commonjsOptions: {
|
|
304
|
+
transformMixedEsModules: true
|
|
305
|
+
},
|
|
249
306
|
rollupOptions: {
|
|
250
307
|
treeshake: false,
|
|
251
308
|
preserveEntrySignatures: "strict",
|
|
252
309
|
output: {
|
|
310
|
+
preserveModules: true,
|
|
253
311
|
format: "cjs"
|
|
254
312
|
}
|
|
255
313
|
}
|
|
256
314
|
},
|
|
257
315
|
mode: "development",
|
|
258
316
|
define: {
|
|
259
|
-
__DEV__: "true",
|
|
260
317
|
"process.env.NODE_ENV": `"development"`
|
|
261
318
|
}
|
|
262
319
|
};
|
|
@@ -273,10 +330,10 @@ const dev = async (options) => {
|
|
|
273
330
|
importsMap[relativePath[0] === "." ? relativePath : "./" + relativePath] = imp;
|
|
274
331
|
}
|
|
275
332
|
return `
|
|
276
|
-
___modules___["${module2.fileName}"] = ((exports,
|
|
333
|
+
___modules___["${module2.fileName}"] = ((exports, module) => {
|
|
277
334
|
const require = createRequire(${JSON.stringify(importsMap, null, 2)})
|
|
278
335
|
|
|
279
|
-
${module2.code
|
|
336
|
+
${module2.code}
|
|
280
337
|
})
|
|
281
338
|
|
|
282
339
|
${module2.isEntry ? `
|
|
@@ -291,22 +348,10 @@ __require("${module2.fileName}")
|
|
|
291
348
|
if (!appCode) {
|
|
292
349
|
throw `\u274C`;
|
|
293
350
|
}
|
|
294
|
-
appCode = appCode.
|
|
295
|
-
`var require_react_refresh_runtime_development =`,
|
|
296
|
-
`var require_react_refresh_runtime_development = globalThis['__RequireReactRefreshRuntime__'] = `
|
|
297
|
-
).replace(
|
|
298
|
-
`var require_Pressability = `,
|
|
299
|
-
`var require_Pressability = globalThis['__ReactPressability__'] =`
|
|
300
|
-
).replace(
|
|
301
|
-
`var require_Pressability = `,
|
|
302
|
-
`var require_Pressability = globalThis['__ReactPressability__'] =`
|
|
303
|
-
).replace(
|
|
304
|
-
`var require_usePressability = `,
|
|
305
|
-
`var require_usePressability = globalThis['__ReactUsePressability__'] =`
|
|
306
|
-
);
|
|
351
|
+
appCode = appCode.replaceAll("undefined.accept(() => {})", "").replaceAll("undefined.accept(function() {});", "");
|
|
307
352
|
const templateFile = (0, import_path.join)(packageRootDir, "react-native-template.js");
|
|
308
353
|
const out = await (0, import_promises.readFile)(templateFile, "utf-8") + appCode;
|
|
309
|
-
|
|
354
|
+
void (0, import_promises.writeFile)((0, import_path.join)(process.cwd(), ".tamagui", "bundle.js"), out, "utf-8");
|
|
310
355
|
done(out);
|
|
311
356
|
isBuilding = null;
|
|
312
357
|
return out;
|
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;
|
|
5
|
-
"names": ["react", "module", "id", "chalk", "viteReactPlugin"]
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["react", "module", "id", "chalk", "out", "viteReactPlugin"]
|
|
6
6
|
}
|
|
@@ -31,10 +31,12 @@ __export(createServer_exports, {
|
|
|
31
31
|
createServer: () => createServer
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(createServer_exports);
|
|
34
|
+
var import_path = require("path");
|
|
34
35
|
var import_stream = require("stream");
|
|
35
36
|
var import_sensible = __toESM(require("@fastify/sensible"));
|
|
36
37
|
var import_static = __toESM(require("@fastify/static"));
|
|
37
38
|
var import_fastify = __toESM(require("fastify"));
|
|
39
|
+
var import_fs_extra = require("fs-extra");
|
|
38
40
|
var import_api = __toESM(require("./plugins/api"));
|
|
39
41
|
var import_compiler = __toESM(require("./plugins/compiler"));
|
|
40
42
|
var import_devtools = __toESM(require("./plugins/devtools"));
|
|
@@ -59,6 +61,19 @@ async function createServer(config) {
|
|
|
59
61
|
},
|
|
60
62
|
...config.options.https ? { https: config.options.https } : void 0
|
|
61
63
|
});
|
|
64
|
+
async function startServer() {
|
|
65
|
+
const serverPath = (0, import_path.join)(config.options.rootDir, "server.ts");
|
|
66
|
+
if (await (0, import_fs_extra.pathExists)(serverPath)) {
|
|
67
|
+
const { register } = require("esbuild-register/dist/node");
|
|
68
|
+
const { unregister } = register();
|
|
69
|
+
try {
|
|
70
|
+
const serverEndpoint = require(serverPath).default;
|
|
71
|
+
serverEndpoint(instance);
|
|
72
|
+
} finally {
|
|
73
|
+
unregister();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
62
77
|
delegate = config.delegate({
|
|
63
78
|
log: instance.log,
|
|
64
79
|
notifyBuildStart: (platform) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/vendor/repack/dev-server/src/createServer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAyB;AAGzB,sBAA4B;AAC5B,oBAA0B;AAC1B,qBAAoB;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["Fastify", "fastifySensible", "wssPlugin", "multipartPlugin", "apiPlugin", "compilerPlugin", "symbolicatePlugin", "devtoolsPlugin", "fastifyStatic"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/cli",
|
|
3
|
-
"version": "1.61.
|
|
3
|
+
"version": "1.61.3",
|
|
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.61.
|
|
32
|
-
"@tamagui/create-theme": "1.61.
|
|
33
|
-
"@tamagui/generate-themes": "1.61.
|
|
34
|
-
"@tamagui/static": "1.61.
|
|
35
|
-
"@tamagui/types": "1.61.
|
|
36
|
-
"@tamagui/vite-native-hmr": "1.61.
|
|
37
|
-
"@tamagui/vite-native-swc": "1.61.
|
|
38
|
-
"@tamagui/vite-plugin": "1.61.
|
|
31
|
+
"@tamagui/build": "1.61.3",
|
|
32
|
+
"@tamagui/create-theme": "1.61.3",
|
|
33
|
+
"@tamagui/generate-themes": "1.61.3",
|
|
34
|
+
"@tamagui/static": "1.61.3",
|
|
35
|
+
"@tamagui/types": "1.61.3",
|
|
36
|
+
"@tamagui/vite-native-hmr": "1.61.3",
|
|
37
|
+
"@tamagui/vite-native-swc": "1.61.3",
|
|
38
|
+
"@tamagui/vite-plugin": "1.61.3",
|
|
39
39
|
"@types/compression": "^1.7.2",
|
|
40
40
|
"@types/morgan": "^1.9.3",
|
|
41
41
|
"@vitejs/plugin-react": "^4.0.4",
|
|
@@ -58,6 +58,8 @@
|
|
|
58
58
|
"fs-extra": "^11.1.0",
|
|
59
59
|
"get-port": "^6.1.2",
|
|
60
60
|
"graphology": "^0.24.1",
|
|
61
|
+
"graphql": "^16.8.0",
|
|
62
|
+
"graphql-yoga": "^4.0.4",
|
|
61
63
|
"http-proxy-middleware": "^2.0.6",
|
|
62
64
|
"kill-port": "^2.0.1",
|
|
63
65
|
"lodash.debounce": "^4.0.8",
|
package/src/dev.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { readFile, writeFile } from 'fs/promises'
|
|
2
2
|
import { dirname, join, relative } from 'path'
|
|
3
3
|
|
|
4
|
+
import * as babel from '@babel/core'
|
|
4
5
|
import { CLIResolvedOptions } from '@tamagui/types'
|
|
5
6
|
import viteReactPlugin, {
|
|
6
7
|
swcTransform,
|
|
@@ -56,25 +57,6 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
56
57
|
mode: 'development',
|
|
57
58
|
clearScreen: false,
|
|
58
59
|
|
|
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
|
-
|
|
78
60
|
plugins: [
|
|
79
61
|
...plugins,
|
|
80
62
|
|
|
@@ -108,9 +90,6 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
108
90
|
// we have to remove jsx before we can parse imports...
|
|
109
91
|
source = (await transformForBuild(id, source))?.code || ''
|
|
110
92
|
|
|
111
|
-
console.log('FROM-----', code)
|
|
112
|
-
console.log('TO------', source)
|
|
113
|
-
|
|
114
93
|
const importsMap = {}
|
|
115
94
|
|
|
116
95
|
// parse imports of modules into ids:
|
|
@@ -124,7 +103,6 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
124
103
|
|
|
125
104
|
if (importName) {
|
|
126
105
|
const id = await getVitePath(file, importName)
|
|
127
|
-
console.log('replace', importName, id)
|
|
128
106
|
if (!id) {
|
|
129
107
|
console.warn('???')
|
|
130
108
|
continue
|
|
@@ -157,11 +135,15 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
157
135
|
|
|
158
136
|
const hotUpdateSource = `exports = ((exports) => {
|
|
159
137
|
const require = createRequire(${JSON.stringify(importsMap, null, 2)})
|
|
160
|
-
${source
|
|
138
|
+
${source
|
|
139
|
+
.replace(`import.meta.hot.accept(() => {})`, ``)
|
|
140
|
+
// replace import.meta.glob with empty array in hot reloads
|
|
141
|
+
.replaceAll(
|
|
142
|
+
/import.meta.glob\(.*\)/gi,
|
|
143
|
+
`globalThis['__importMetaGlobbed'] || {}`
|
|
144
|
+
)};
|
|
161
145
|
return exports })({})`
|
|
162
146
|
|
|
163
|
-
console.log('hotUpdateSource', hotUpdateSource)
|
|
164
|
-
|
|
165
147
|
hotUpdatedCJSFiles.set(id, hotUpdateSource)
|
|
166
148
|
} catch (err) {
|
|
167
149
|
// rome-ignore lint/suspicious/noConsoleLog: <explanation>
|
|
@@ -250,9 +232,99 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
250
232
|
done = res
|
|
251
233
|
})
|
|
252
234
|
|
|
235
|
+
const jsxRuntime = {
|
|
236
|
+
alias: 'virtual:react-jsx',
|
|
237
|
+
contents: await readFile(
|
|
238
|
+
require.resolve('@tamagui/react-native-prebuilt/jsx-runtime'),
|
|
239
|
+
'utf-8'
|
|
240
|
+
),
|
|
241
|
+
} as const
|
|
242
|
+
|
|
243
|
+
const virtualModules = {
|
|
244
|
+
'react-native': {
|
|
245
|
+
alias: 'virtual:react-native',
|
|
246
|
+
contents: await readFile(
|
|
247
|
+
require.resolve('@tamagui/react-native-prebuilt'),
|
|
248
|
+
'utf-8'
|
|
249
|
+
),
|
|
250
|
+
},
|
|
251
|
+
react: {
|
|
252
|
+
alias: 'virtual:react',
|
|
253
|
+
contents: await readFile(
|
|
254
|
+
require.resolve('@tamagui/react-native-prebuilt/react'),
|
|
255
|
+
'utf-8'
|
|
256
|
+
),
|
|
257
|
+
},
|
|
258
|
+
'react/jsx-runtime': jsxRuntime,
|
|
259
|
+
'react/jsx-dev-runtime': jsxRuntime,
|
|
260
|
+
} as const
|
|
261
|
+
|
|
262
|
+
const swapRnPlugin = {
|
|
263
|
+
name: `swap-react-native`,
|
|
264
|
+
enforce: 'pre',
|
|
265
|
+
|
|
266
|
+
resolveId(id) {
|
|
267
|
+
if (id.startsWith('react-native/Libraries')) {
|
|
268
|
+
return `virtual:rn-internals:${id}`
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
for (const targetId in virtualModules) {
|
|
272
|
+
if (id === targetId || id.includes(`node_modules/${targetId}/`)) {
|
|
273
|
+
const info = virtualModules[targetId]
|
|
274
|
+
return info.alias
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
|
|
279
|
+
load(id) {
|
|
280
|
+
if (id.startsWith('virtual:rn-internals')) {
|
|
281
|
+
const idOut = id.replace('virtual:rn-internals:', '')
|
|
282
|
+
return `const val = __cachedModules["${idOut}"]
|
|
283
|
+
export const PressabilityDebugView = val.PressabilityDebugView
|
|
284
|
+
export default val ? val.default || val : val`
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
for (const targetId in virtualModules) {
|
|
288
|
+
const info = virtualModules[targetId as keyof typeof virtualModules]
|
|
289
|
+
if (id === info.alias) {
|
|
290
|
+
return info.contents
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
} as const
|
|
295
|
+
|
|
296
|
+
async function babelReanimated(input: string, filename: string) {
|
|
297
|
+
return await new Promise<string>((res, rej) => {
|
|
298
|
+
babel.transform(
|
|
299
|
+
input,
|
|
300
|
+
{
|
|
301
|
+
plugins: ['react-native-reanimated/plugin'],
|
|
302
|
+
filename,
|
|
303
|
+
},
|
|
304
|
+
(err: any, result) => {
|
|
305
|
+
if (!result || err) rej(err || 'no res')
|
|
306
|
+
res(result!.code!)
|
|
307
|
+
}
|
|
308
|
+
)
|
|
309
|
+
})
|
|
310
|
+
}
|
|
311
|
+
|
|
253
312
|
// build app
|
|
254
313
|
const buildConfig = {
|
|
255
314
|
plugins: [
|
|
315
|
+
swapRnPlugin,
|
|
316
|
+
|
|
317
|
+
{
|
|
318
|
+
name: 'reanimated',
|
|
319
|
+
|
|
320
|
+
async transform(code, id) {
|
|
321
|
+
if (code.includes('worklet')) {
|
|
322
|
+
const out = await babelReanimated(code, id)
|
|
323
|
+
return out
|
|
324
|
+
}
|
|
325
|
+
},
|
|
326
|
+
},
|
|
327
|
+
|
|
256
328
|
{
|
|
257
329
|
name: 'tamagui-env-native',
|
|
258
330
|
config() {
|
|
@@ -266,16 +338,6 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
266
338
|
|
|
267
339
|
viteRNClientPlugin,
|
|
268
340
|
|
|
269
|
-
// viteReactPlugin({
|
|
270
|
-
// tsDecorators: true,
|
|
271
|
-
// mode: 'serve',
|
|
272
|
-
// }),
|
|
273
|
-
|
|
274
|
-
// nativePlugin({
|
|
275
|
-
// port,
|
|
276
|
-
// mode: 'serve',
|
|
277
|
-
// }),
|
|
278
|
-
|
|
279
341
|
nativePlugin({
|
|
280
342
|
port,
|
|
281
343
|
mode: 'build',
|
|
@@ -292,17 +354,20 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
292
354
|
build: {
|
|
293
355
|
ssr: false,
|
|
294
356
|
minify: false,
|
|
357
|
+
commonjsOptions: {
|
|
358
|
+
transformMixedEsModules: true,
|
|
359
|
+
},
|
|
295
360
|
rollupOptions: {
|
|
296
361
|
treeshake: false,
|
|
297
362
|
preserveEntrySignatures: 'strict',
|
|
298
363
|
output: {
|
|
364
|
+
preserveModules: true,
|
|
299
365
|
format: 'cjs',
|
|
300
366
|
},
|
|
301
367
|
},
|
|
302
368
|
},
|
|
303
369
|
mode: 'development',
|
|
304
370
|
define: {
|
|
305
|
-
__DEV__: 'true',
|
|
306
371
|
'process.env.NODE_ENV': `"development"`,
|
|
307
372
|
},
|
|
308
373
|
} satisfies InlineConfig
|
|
@@ -328,12 +393,10 @@ export const dev = async (options: CLIResolvedOptions) => {
|
|
|
328
393
|
}
|
|
329
394
|
|
|
330
395
|
return `
|
|
331
|
-
___modules___["${module.fileName}"] = ((exports,
|
|
396
|
+
___modules___["${module.fileName}"] = ((exports, module) => {
|
|
332
397
|
const require = createRequire(${JSON.stringify(importsMap, null, 2)})
|
|
333
398
|
|
|
334
|
-
${module.code
|
|
335
|
-
.replace(`'use strict';`, '')
|
|
336
|
-
.replace('module.exports = ', 'module2.exports = ')}
|
|
399
|
+
${module.code}
|
|
337
400
|
})
|
|
338
401
|
|
|
339
402
|
${
|
|
@@ -357,30 +420,14 @@ __require("${module.fileName}")
|
|
|
357
420
|
|
|
358
421
|
appCode = appCode
|
|
359
422
|
// this can be done in the individual file transform
|
|
360
|
-
.
|
|
361
|
-
.
|
|
362
|
-
.replace(
|
|
363
|
-
`var require_react_refresh_runtime_development =`,
|
|
364
|
-
`var require_react_refresh_runtime_development = globalThis['__RequireReactRefreshRuntime__'] = `
|
|
365
|
-
)
|
|
366
|
-
.replace(
|
|
367
|
-
`var require_Pressability = `,
|
|
368
|
-
`var require_Pressability = globalThis['__ReactPressability__'] =`
|
|
369
|
-
)
|
|
370
|
-
.replace(
|
|
371
|
-
`var require_Pressability = `,
|
|
372
|
-
`var require_Pressability = globalThis['__ReactPressability__'] =`
|
|
373
|
-
)
|
|
374
|
-
.replace(
|
|
375
|
-
`var require_usePressability = `,
|
|
376
|
-
`var require_usePressability = globalThis['__ReactUsePressability__'] =`
|
|
377
|
-
)
|
|
423
|
+
.replaceAll('undefined.accept(() => {})', '')
|
|
424
|
+
.replaceAll('undefined.accept(function() {});', '') // swc
|
|
378
425
|
|
|
379
426
|
const templateFile = join(packageRootDir, 'react-native-template.js')
|
|
380
427
|
|
|
381
428
|
const out = (await readFile(templateFile, 'utf-8')) + appCode
|
|
382
429
|
|
|
383
|
-
|
|
430
|
+
void writeFile(join(process.cwd(), '.tamagui', 'bundle.js'), out, 'utf-8')
|
|
384
431
|
|
|
385
432
|
done(out)
|
|
386
433
|
isBuilding = null
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { join } from 'path'
|
|
1
2
|
import { Writable } from 'stream'
|
|
2
3
|
|
|
3
4
|
// import debuggerAppPath from '@callstack/repack-debugger-app'
|
|
4
5
|
import fastifySensible from '@fastify/sensible'
|
|
5
6
|
import fastifyStatic from '@fastify/static'
|
|
6
7
|
import Fastify from 'fastify'
|
|
8
|
+
import { pathExists } from 'fs-extra'
|
|
7
9
|
|
|
8
10
|
import apiPlugin from './plugins/api'
|
|
9
11
|
import compilerPlugin from './plugins/compiler'
|
|
@@ -39,6 +41,23 @@ export async function createServer(config: Server.Config) {
|
|
|
39
41
|
...(config.options.https ? { https: config.options.https } : undefined),
|
|
40
42
|
})
|
|
41
43
|
|
|
44
|
+
async function startServer() {
|
|
45
|
+
const serverPath = join(config.options.rootDir, 'server.ts')
|
|
46
|
+
if (await pathExists(serverPath)) {
|
|
47
|
+
const { register } = require('esbuild-register/dist/node')
|
|
48
|
+
const { unregister } = register()
|
|
49
|
+
try {
|
|
50
|
+
const serverEndpoint = require(serverPath).default
|
|
51
|
+
serverEndpoint(instance)
|
|
52
|
+
} finally {
|
|
53
|
+
unregister()
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// disable for demo
|
|
59
|
+
// void startServer()
|
|
60
|
+
|
|
42
61
|
delegate = config.delegate({
|
|
43
62
|
log: instance.log,
|
|
44
63
|
notifyBuildStart: (platform) => {
|
package/types/dev.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAiBnD,eAAO,MAAM,GAAG,YAAmB,kBAAkB,kBA+ZpD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createServer.d.ts","sourceRoot":"","sources":["../../../../../src/vendor/repack/dev-server/src/createServer.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"createServer.d.ts","sourceRoot":"","sources":["../../../../../src/vendor/repack/dev-server/src/createServer.ts"],"names":[],"mappings":";AAgBA,OAAO,EAAY,MAAM,EAAE,MAAM,SAAS,CAAA;AAE1C;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM;;;;GAkIvD"}
|