@tamagui/next-plugin 1.26.0 → 1.26.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/package.json +6 -6
- package/dist/esm/index.mjs +0 -2
- package/dist/esm/index.mjs.map +0 -6
- package/dist/esm/withTamagui.mjs +0 -320
- package/dist/esm/withTamagui.mjs.map +0 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/next-plugin",
|
|
3
|
-
"version": "1.26.
|
|
3
|
+
"version": "1.26.1",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"types": "./types/index.d.ts",
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@babel/preset-react": "^7.18.6",
|
|
24
|
-
"@tamagui/proxy-worm": "1.26.
|
|
25
|
-
"@tamagui/react-native-svg": "1.26.
|
|
26
|
-
"@tamagui/static": "1.26.
|
|
24
|
+
"@tamagui/proxy-worm": "1.26.1",
|
|
25
|
+
"@tamagui/react-native-svg": "1.26.1",
|
|
26
|
+
"@tamagui/static": "1.26.1",
|
|
27
27
|
"babel-loader": "^8.2.5",
|
|
28
28
|
"browserslist": "^4.21.1",
|
|
29
29
|
"css-loader": "^5.2.4",
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
"esm-resolve": "^1.0.8",
|
|
32
32
|
"file-loader": "^6.2.0",
|
|
33
33
|
"html-webpack-plugin": "^5.5.0",
|
|
34
|
-
"tamagui-loader": "1.26.
|
|
34
|
+
"tamagui-loader": "1.26.1",
|
|
35
35
|
"thread-loader": "^3.0.4",
|
|
36
36
|
"url-loader": "^4.1.1"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@tamagui/build": "1.26.
|
|
39
|
+
"@tamagui/build": "1.26.1",
|
|
40
40
|
"next": "^13.3.0"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
package/dist/esm/index.mjs
DELETED
package/dist/esm/index.mjs.map
DELETED
package/dist/esm/withTamagui.mjs
DELETED
|
@@ -1,320 +0,0 @@
|
|
|
1
|
-
import { existsSync } from "fs";
|
|
2
|
-
import path, { dirname, join } from "path";
|
|
3
|
-
import browserslist from "browserslist";
|
|
4
|
-
import buildResolver from "esm-resolve";
|
|
5
|
-
import { lazyPostCSS } from "next/dist/build/webpack/config/blocks/css";
|
|
6
|
-
import { getGlobalCssLoader } from "next/dist/build/webpack/config/blocks/css/loaders";
|
|
7
|
-
import { TamaguiPlugin, shouldExclude as shouldExcludeDefault } from "tamagui-loader";
|
|
8
|
-
import webpack from "webpack";
|
|
9
|
-
const withTamagui = (tamaguiOptions) => {
|
|
10
|
-
return (nextConfig = {}) => {
|
|
11
|
-
var _a;
|
|
12
|
-
const isAppDir = (_a = nextConfig.experimental) == null ? void 0 : _a.appDir;
|
|
13
|
-
return {
|
|
14
|
-
...nextConfig,
|
|
15
|
-
webpack: (webpackConfig, options) => {
|
|
16
|
-
var _a2;
|
|
17
|
-
const { dir, config, dev, isServer } = options;
|
|
18
|
-
const resolver = buildResolver(join(dir, "index.js"), {
|
|
19
|
-
constraints: "node"
|
|
20
|
-
});
|
|
21
|
-
if (typeof globalThis["__DEV__"] === "undefined") {
|
|
22
|
-
globalThis["__DEV__"] = dev;
|
|
23
|
-
}
|
|
24
|
-
const isNext12 = typeof ((_a2 = options.config) == null ? void 0 : _a2.swcMinify) === "boolean";
|
|
25
|
-
if (!isNext12) {
|
|
26
|
-
throw new Error(`Next.js 12 only supported`);
|
|
27
|
-
}
|
|
28
|
-
const prefix = `${isServer ? " ssr " : " web "} |`;
|
|
29
|
-
const safeResolves = (resolves, multiple = false) => {
|
|
30
|
-
var _a3;
|
|
31
|
-
const res = [];
|
|
32
|
-
for (const [out, mod] of resolves) {
|
|
33
|
-
if (out.endsWith("$")) {
|
|
34
|
-
res.push([out, mod]);
|
|
35
|
-
continue;
|
|
36
|
-
}
|
|
37
|
-
try {
|
|
38
|
-
res.push([out, resolveEsm(mod)]);
|
|
39
|
-
if (multiple) {
|
|
40
|
-
res.push([out, resolveEsm(mod, true)]);
|
|
41
|
-
}
|
|
42
|
-
} catch (err) {
|
|
43
|
-
if (out.includes(`@gorhom/bottom-sheet`)) {
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
if ((_a3 = process.env.DEBUG) == null ? void 0 : _a3.startsWith("tamagui")) {
|
|
47
|
-
console.log(prefix, `withTamagui skipping resolving ${out}`, err);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
return res;
|
|
52
|
-
};
|
|
53
|
-
const resolveEsm = (relativePath, onlyRequire = false) => {
|
|
54
|
-
if (isServer || onlyRequire) {
|
|
55
|
-
return require.resolve(relativePath);
|
|
56
|
-
}
|
|
57
|
-
const esm = resolver(relativePath);
|
|
58
|
-
return esm ? path.join(dir, esm) : require.resolve(relativePath);
|
|
59
|
-
};
|
|
60
|
-
const SEP = path.sep;
|
|
61
|
-
const componentsFullPaths = safeResolves(
|
|
62
|
-
tamaguiOptions.components.map(
|
|
63
|
-
(moduleName) => [moduleName, moduleName]
|
|
64
|
-
),
|
|
65
|
-
true
|
|
66
|
-
);
|
|
67
|
-
const componentsBaseDirs = componentsFullPaths.map(([_, fullPath]) => {
|
|
68
|
-
let rootPath = dirname(fullPath);
|
|
69
|
-
while (rootPath.length > 1) {
|
|
70
|
-
const pkg = join(rootPath, "package.json");
|
|
71
|
-
const hasPkg = existsSync(pkg);
|
|
72
|
-
if (hasPkg) {
|
|
73
|
-
return rootPath;
|
|
74
|
-
} else {
|
|
75
|
-
rootPath = join(rootPath, "..");
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
throw new Error(`Couldn't find package.json in any path above: ${fullPath}`);
|
|
79
|
-
});
|
|
80
|
-
function isInComponentModule(fullPath) {
|
|
81
|
-
return componentsBaseDirs.some(
|
|
82
|
-
(componentDir) => fullPath.startsWith(componentDir)
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
const shouldExclude = (path2, projectRoot) => {
|
|
86
|
-
var _a3;
|
|
87
|
-
const res = (_a3 = tamaguiOptions.shouldExtract) == null ? void 0 : _a3.call(tamaguiOptions, path2, projectRoot);
|
|
88
|
-
if (typeof res === "boolean") {
|
|
89
|
-
return !res;
|
|
90
|
-
}
|
|
91
|
-
if (isInComponentModule(path2)) {
|
|
92
|
-
return false;
|
|
93
|
-
}
|
|
94
|
-
return shouldExcludeDefault(path2, projectRoot);
|
|
95
|
-
};
|
|
96
|
-
const rnw = tamaguiOptions.useReactNativeWebLite ? "react-native-web-lite" : "react-native-web";
|
|
97
|
-
const tamaguiAliases = Object.fromEntries(
|
|
98
|
-
safeResolves([
|
|
99
|
-
["@tamagui/core/reset.css", "@tamagui/core/reset.css"],
|
|
100
|
-
["@tamagui/core", "@tamagui/core"],
|
|
101
|
-
["@tamagui/web", "@tamagui/web"],
|
|
102
|
-
// web specific light react-native-svg, optional, can use svgs but had issues with compat
|
|
103
|
-
["react-native-svg", "@tamagui/react-native-svg"],
|
|
104
|
-
// fixes https://github.com/kentcdodds/mdx-bundler/issues/143
|
|
105
|
-
["react/jsx-runtime.js", "react/jsx-runtime"],
|
|
106
|
-
["react/jsx-runtime", "react/jsx-runtime"],
|
|
107
|
-
["react/jsx-dev-runtime.js", "react/jsx-dev-runtime"],
|
|
108
|
-
["react/jsx-dev-runtime", "react/jsx-dev-runtime"],
|
|
109
|
-
["react-native-reanimated", "react-native-reanimated"],
|
|
110
|
-
["react-native$", rnw],
|
|
111
|
-
["react-native-web$", rnw],
|
|
112
|
-
["@testing-library/react-native", "@tamagui/proxy-worm"],
|
|
113
|
-
["@gorhom/bottom-sheet$", "@gorhom/bottom-sheet"],
|
|
114
|
-
// fix reanimated 3
|
|
115
|
-
["react-native/Libraries/Renderer/shims/ReactFabric", "@tamagui/proxy-worm"],
|
|
116
|
-
...tamaguiOptions.aliasReactPackages ? [
|
|
117
|
-
["react", "react"],
|
|
118
|
-
["react-dom", "react-dom"]
|
|
119
|
-
] : []
|
|
120
|
-
])
|
|
121
|
-
);
|
|
122
|
-
const alias = {
|
|
123
|
-
...webpackConfig.resolve.alias || {},
|
|
124
|
-
...tamaguiAliases
|
|
125
|
-
};
|
|
126
|
-
if (process.env.DEBUG) {
|
|
127
|
-
console.log("Tamagui alias:", alias);
|
|
128
|
-
}
|
|
129
|
-
if (process.env.ANALYZE === "true") {
|
|
130
|
-
Object.assign(webpackConfig.optimization, {
|
|
131
|
-
concatenateModules: false
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
webpackConfig.resolve.alias = alias;
|
|
135
|
-
webpackConfig.plugins.push(
|
|
136
|
-
new webpack.DefinePlugin({
|
|
137
|
-
"process.env.IS_STATIC": '""',
|
|
138
|
-
"process.env.TAMAGUI_TARGET": '"web"',
|
|
139
|
-
__DEV__: JSON.stringify(dev)
|
|
140
|
-
})
|
|
141
|
-
);
|
|
142
|
-
const excludeExports = tamaguiOptions.excludeReactNativeWebExports;
|
|
143
|
-
if (Array.isArray(excludeExports)) {
|
|
144
|
-
try {
|
|
145
|
-
const regexStr = `react-native-web(-lite)?/.*(${excludeExports.join(
|
|
146
|
-
"|"
|
|
147
|
-
)}).*js`;
|
|
148
|
-
const regex = new RegExp(regexStr);
|
|
149
|
-
webpackConfig.plugins.push(
|
|
150
|
-
new webpack.NormalModuleReplacementPlugin(
|
|
151
|
-
regex,
|
|
152
|
-
resolveEsm("@tamagui/proxy-worm")
|
|
153
|
-
)
|
|
154
|
-
);
|
|
155
|
-
} catch (err) {
|
|
156
|
-
console.warn(
|
|
157
|
-
`Invalid names provided to excludeReactNativeWebExports: ${excludeExports.join(
|
|
158
|
-
", "
|
|
159
|
-
)}`
|
|
160
|
-
);
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
if (process.env.IGNORE_TS_CONFIG_PATHS) {
|
|
164
|
-
if (process.env.DEBUG) {
|
|
165
|
-
console.log(prefix, "ignoring tsconfig paths");
|
|
166
|
-
}
|
|
167
|
-
if (webpackConfig.resolve.plugins[0]) {
|
|
168
|
-
delete webpackConfig.resolve.plugins[0].paths["@tamagui/*"];
|
|
169
|
-
delete webpackConfig.resolve.plugins[0].paths["tamagui"];
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
if (!isServer) {
|
|
173
|
-
nextConfig.modularizeImports ??= {};
|
|
174
|
-
nextConfig.modularizeImports["@tamagui/lucide-icons"] = {
|
|
175
|
-
transform: `@tamagui/lucide-icons/dist/esm/icons/{{kebabCase member}}`,
|
|
176
|
-
skipDefaultConversion: true
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
if (isServer) {
|
|
180
|
-
const externalize = (context, request) => {
|
|
181
|
-
const fullPath = request[0] === "." ? path.join(context, request) : request;
|
|
182
|
-
if (tamaguiOptions.shouldExcludeFromServer) {
|
|
183
|
-
const userRes = tamaguiOptions.shouldExcludeFromServer({
|
|
184
|
-
context,
|
|
185
|
-
request,
|
|
186
|
-
fullPath
|
|
187
|
-
});
|
|
188
|
-
if (userRes !== void 0) {
|
|
189
|
-
return userRes;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
if (isInComponentModule(fullPath)) {
|
|
193
|
-
return false;
|
|
194
|
-
}
|
|
195
|
-
if (fullPath.includes("react-native-web")) {
|
|
196
|
-
return false;
|
|
197
|
-
}
|
|
198
|
-
if (fullPath === "react-native" || fullPath.startsWith(`react-native${SEP}`)) {
|
|
199
|
-
return false;
|
|
200
|
-
}
|
|
201
|
-
if (
|
|
202
|
-
// feather icons uses react-native-svg which needs to be aliased
|
|
203
|
-
// fullPath.includes('/lucide-icons/') ||
|
|
204
|
-
fullPath.startsWith("react-native-web") || fullPath.includes(`node_modules${SEP}react-native-web`) || new RegExp(`^(react-dom|react)${SEP}$`).test(fullPath)
|
|
205
|
-
) {
|
|
206
|
-
return `commonjs ${fullPath}`;
|
|
207
|
-
}
|
|
208
|
-
if (fullPath.startsWith("moti") || fullPath.startsWith("solito") || fullPath === "tamagui" || fullPath.startsWith("@tamagui") || fullPath === "react-native-safe-area-context" || fullPath === "expo-linear-gradient" || fullPath.startsWith("@react-navigation") || fullPath.startsWith("@gorhom")) {
|
|
209
|
-
return;
|
|
210
|
-
}
|
|
211
|
-
if (/^@?react-native-/.test(request)) {
|
|
212
|
-
return false;
|
|
213
|
-
}
|
|
214
|
-
return true;
|
|
215
|
-
};
|
|
216
|
-
webpackConfig.externals = [
|
|
217
|
-
...webpackConfig.externals.map((external) => {
|
|
218
|
-
if (typeof external !== "function") {
|
|
219
|
-
return external;
|
|
220
|
-
}
|
|
221
|
-
return (ctx, cb) => {
|
|
222
|
-
const isCb = typeof cb === "function";
|
|
223
|
-
const res = externalize(ctx.context, ctx.request);
|
|
224
|
-
if (isCb) {
|
|
225
|
-
if (typeof res === "string") {
|
|
226
|
-
return cb(null, res);
|
|
227
|
-
}
|
|
228
|
-
if (res) {
|
|
229
|
-
return external(ctx, cb);
|
|
230
|
-
}
|
|
231
|
-
return cb();
|
|
232
|
-
}
|
|
233
|
-
return !res ? Promise.resolve(void 0) : typeof res === "string" ? Promise.resolve(res) : external(ctx);
|
|
234
|
-
};
|
|
235
|
-
})
|
|
236
|
-
];
|
|
237
|
-
}
|
|
238
|
-
const cssRules = webpackConfig.module.rules.find(
|
|
239
|
-
(rule) => Array.isArray(rule.oneOf) && rule.oneOf.some(
|
|
240
|
-
({ test }) => typeof test === "object" && typeof test.test === "function" && test.test("filename.css")
|
|
241
|
-
)
|
|
242
|
-
).oneOf;
|
|
243
|
-
if (cssRules) {
|
|
244
|
-
if (tamaguiOptions.enableLegacyFontSupport) {
|
|
245
|
-
cssRules.unshift({
|
|
246
|
-
test: /\.(woff(2)?|eot|ttf|otf)(\?v=\d+\.\d+\.\d+)?$/,
|
|
247
|
-
use: [
|
|
248
|
-
{
|
|
249
|
-
loader: require.resolve("url-loader"),
|
|
250
|
-
options: {
|
|
251
|
-
limit: nextConfig.inlineFontLimit || 1024,
|
|
252
|
-
fallback: require.resolve("file-loader"),
|
|
253
|
-
publicPath: `${nextConfig.assetPrefix || ""}/_next/static/chunks/fonts/`,
|
|
254
|
-
outputPath: `${isServer ? "../" : ""}static/chunks/fonts/`,
|
|
255
|
-
name: "[name].[ext]"
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
]
|
|
259
|
-
});
|
|
260
|
-
}
|
|
261
|
-
const cssLoader = getGlobalCssLoader(
|
|
262
|
-
// @ts-ignore
|
|
263
|
-
{
|
|
264
|
-
assetPrefix: nextConfig.assetPrefix || options.config.assetPrefix || config.assetPrefix,
|
|
265
|
-
future: nextConfig.future,
|
|
266
|
-
experimental: nextConfig.experimental || {},
|
|
267
|
-
isEdgeRuntime: true,
|
|
268
|
-
isProduction: !dev,
|
|
269
|
-
targetWeb: true,
|
|
270
|
-
isClient: !isServer,
|
|
271
|
-
isServer,
|
|
272
|
-
isDevelopment: dev
|
|
273
|
-
},
|
|
274
|
-
// @ts-ignore
|
|
275
|
-
() => lazyPostCSS(dir, getSupportedBrowsers(dir, dev)),
|
|
276
|
-
[]
|
|
277
|
-
);
|
|
278
|
-
if (!isAppDir) {
|
|
279
|
-
cssRules.unshift({
|
|
280
|
-
test: tamaguiOptions.includeCSSTest ?? /\.tamagui\.css$/,
|
|
281
|
-
sideEffects: true,
|
|
282
|
-
use: cssLoader
|
|
283
|
-
});
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
const enableStudio = options.dev && options.nextRuntime === "nodejs" && isServer;
|
|
287
|
-
webpackConfig.plugins.push(
|
|
288
|
-
new TamaguiPlugin({
|
|
289
|
-
enableStudio,
|
|
290
|
-
isServer,
|
|
291
|
-
exclude: (path2) => {
|
|
292
|
-
const res = shouldExclude(path2, options.dir);
|
|
293
|
-
return res;
|
|
294
|
-
},
|
|
295
|
-
...tamaguiOptions
|
|
296
|
-
})
|
|
297
|
-
);
|
|
298
|
-
if (typeof nextConfig.webpack === "function") {
|
|
299
|
-
return nextConfig.webpack(webpackConfig, options);
|
|
300
|
-
}
|
|
301
|
-
return webpackConfig;
|
|
302
|
-
}
|
|
303
|
-
};
|
|
304
|
-
};
|
|
305
|
-
};
|
|
306
|
-
function getSupportedBrowsers(dir, isDevelopment) {
|
|
307
|
-
let browsers;
|
|
308
|
-
try {
|
|
309
|
-
browsers = browserslist.loadConfig({
|
|
310
|
-
path: dir,
|
|
311
|
-
env: isDevelopment ? "development" : "production"
|
|
312
|
-
});
|
|
313
|
-
} catch {
|
|
314
|
-
}
|
|
315
|
-
return browsers;
|
|
316
|
-
}
|
|
317
|
-
export {
|
|
318
|
-
withTamagui
|
|
319
|
-
};
|
|
320
|
-
//# sourceMappingURL=withTamagui.mjs.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/withTamagui.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": ["_a", "path"]
|
|
6
|
-
}
|