fork
Configure Feed
Select the types of activity you want to include in your feed.
Live video on the AT Protocol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1const { FileStore } = require("metro-cache");
2const path = require("path");
3
4const { getSentryExpoConfig } = require("@sentry/react-native/metro");
5
6let config = getSentryExpoConfig(__dirname, {
7 // [Web-only]: Enables CSS support in Metro.
8 isCSSEnabled: true,
9});
10
11config.cacheStores = [
12 new FileStore({
13 root: path.join(__dirname, "node_modules", ".cache", "metro"),
14 }),
15];
16
17const overrides = {};
18
19const nativeOverrides = {
20 crypto: "react-native-quick-crypto",
21 // "node:crypto": "react-native-quick-crypto",
22 stream: "readable-stream",
23 // "node:buffer": "buffer",
24 // "node:util": "util",
25 // "node:http": path.resolve(__dirname, "./empty.mjs"),
26 // "node:https": path.resolve(__dirname, "./empty.mjs"),
27 // // "node:events": "events",
28};
29
30config.resolver.resolveRequest = (context, moduleName, platform) => {
31 if (moduleName.includes("zustand")) {
32 const result = require.resolve(moduleName);
33 return context.resolveRequest(context, result, platform);
34 }
35 if (platform !== "web") {
36 for (const [key, value] of Object.entries(nativeOverrides)) {
37 if (moduleName === key) {
38 return context.resolveRequest(context, value, platform);
39 }
40 }
41 }
42 for (const [key, value] of Object.entries(overrides)) {
43 if (moduleName === key) {
44 return context.resolveRequest(context, value, platform);
45 }
46 }
47 // otherwise chain to the standard Metro resolver.
48 return context.resolveRequest(context, moduleName, platform);
49};
50
51config.resolver.sourceExts.push("mjs");
52config.resolver.assetExts.push("md");
53
54config.resolver.unstable_conditionNames.push("@streamplace/dev", "browser");
55
56module.exports = config;