Skip to content

Commit 9843a43

Browse files
authored
Merge pull request #16 from arthwood/chore/upgrade-dependencies
Upgrading dependencies and running apps/discovery
2 parents 6835e2b + a94313c commit 9843a43

File tree

102 files changed

+11377
-12384
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

102 files changed

+11377
-12384
lines changed

.eslintrc.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
module.exports = {
22
root: true,
3-
extends: ['@react-native-community'],
3+
extends: ['@react-native'],
44
parser: '@typescript-eslint/parser',
5-
plugins: ['@typescript-eslint'],
5+
plugins: ['@react-native'],
66
ignorePatterns: ['lib/', 'types/'],
77
rules: {
8-
'comma-dangle': ['error', 'never'],
98
'@typescript-eslint/no-unused-vars': [
109
'error',
1110
{ vars: 'all', args: 'after-used', ignoreRestSiblings: true }
12-
],
13-
'no-eval': 'off'
11+
]
1412
}
1513
};

apps/benchmarking/package.json

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,21 @@
99
"eject": "expo eject"
1010
},
1111
"dependencies": {
12-
"expo": "^43.0.0",
13-
"expo-keep-awake": "~10.0.0",
14-
"expo-status-bar": "~1.1.0",
15-
"ramda": "^0.27.2",
16-
"react": "17.0.1",
17-
"react-dom": "17.0.1",
18-
"react-native": "^0.82.0",
12+
"expo": "^54.0.15",
13+
"expo-keep-awake": "~15.0.7",
14+
"expo-status-bar": "~3.0.8",
15+
"ramda": "^0.32.0",
16+
"react": "19.1.0",
17+
"react-dom": "19.1.0",
18+
"react-native": "0.81.5",
1919
"react-native-render-html": "workspace:*",
2020
"react-native-render-html-v5": "npm:react-native-render-html@^5.0.0",
21-
"react-native-safe-area-context": "3.3.2",
22-
"react-native-web": "0.17.1",
23-
"react-states": "^5.4.0"
21+
"react-native-safe-area-context": "^5.6.1",
22+
"react-native-web": "^0.21.2",
23+
"react-states": "^8.3.7"
2424
},
2525
"devDependencies": {
26-
"@babel/core": "^7.12.9"
26+
"@babel/core": "^7.28.4"
2727
},
2828
"private": true,
2929
"installConfig": {

apps/discovery/.eslintrc.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
const defaultConf = require('../../.eslintrc.js');
2+
module.exports = {
3+
...defaultConf,
4+
rules: {
5+
...defaultConf.rules,
6+
'@typescript-eslint/no-shadow': 'off',
7+
'react-native/no-inline-styles': 'off',
8+
'react/no-unstable-nested-components': 'off',
9+
}
10+
};

apps/discovery/App.tsx

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
import { enableScreens } from 'react-native-screens';
1+
import { StacksProvider } from '@mobily/stacks';
22
import { StatusBar } from 'expo-status-bar';
33
import React from 'react';
4+
import { useColorScheme, useWindowDimensions } from 'react-native';
45
import { SafeAreaProvider } from 'react-native-safe-area-context';
6+
import { enableScreens } from 'react-native-screens';
57
import useCachedResources from './src/hooks/useCachedResources';
68
import Navigation from './src/navigation';
79
import ThemeProvider from './src/theme/ThemeProvider';
810
import ColorSchemeProvider from './src/state/ColorSchemeProvider';
9-
import { useColorScheme, useWindowDimensions } from 'react-native';
1011
import UILinkPressDisplayMolecule from './src/components/UILinkPressDisplayMolecule';
11-
import { StacksProvider } from '@mobily/stacks';
1212
import contentWidthContextNucleon from './src/components/nucleons/contentWidthContextNucleon';
1313
import PageToolkitProvider from './src/providers/PageToolkitProvider';
1414

1515
enableScreens();
1616

1717
export default function App() {
1818
const isLoadingComplete = useCachedResources();
19-
const initialColorScheme = useColorScheme() || 'light';
19+
const initialColorScheme = useColorScheme();
2020
const contentWidth = useWindowDimensions().width;
21-
if (!isLoadingComplete) {
22-
return null;
23-
} else {
24-
return (
25-
<contentWidthContextNucleon.Provider value={contentWidth}>
26-
<PageToolkitProvider>
27-
<StacksProvider spacing={5}>
28-
<SafeAreaProvider>
29-
<ColorSchemeProvider initialColorScheme={initialColorScheme}>
30-
<ThemeProvider>
31-
<UILinkPressDisplayMolecule>
32-
<Navigation />
33-
<StatusBar style="light" />
34-
</UILinkPressDisplayMolecule>
35-
</ThemeProvider>
36-
</ColorSchemeProvider>
37-
</SafeAreaProvider>
38-
</StacksProvider>
39-
</PageToolkitProvider>
40-
</contentWidthContextNucleon.Provider>
41-
);
42-
}
21+
22+
if (!isLoadingComplete) return;
23+
24+
return (
25+
<contentWidthContextNucleon.Provider value={contentWidth}>
26+
<PageToolkitProvider>
27+
<StacksProvider spacing={5}>
28+
<SafeAreaProvider>
29+
<ColorSchemeProvider
30+
initialColorScheme={initialColorScheme ?? 'light'}>
31+
<ThemeProvider>
32+
<UILinkPressDisplayMolecule>
33+
<Navigation />
34+
<StatusBar style="light" />
35+
</UILinkPressDisplayMolecule>
36+
</ThemeProvider>
37+
</ColorSchemeProvider>
38+
</SafeAreaProvider>
39+
</StacksProvider>
40+
</PageToolkitProvider>
41+
</contentWidthContextNucleon.Provider>
42+
);
4343
}

apps/discovery/app.config.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
const version = require('./version').demo;
21
module.exports = {
32
expo: {
43
name: 'RNRH Discovery',
54
slug: 'react-native-render-html-discovery',
65
description:
76
'An App to discover React Native Render HTML features and API!',
8-
version: version,
7+
version: require('./version').demo,
98
primaryColor: '#6767e2',
109
orientation: 'default',
1110
icon: './assets/images/icon.png',

apps/discovery/babel.config.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
module.exports = function (api) {
22
api.cache(true);
33
return {
4-
presets: ['babel-preset-expo'],
5-
plugins: ['react-native-reanimated/plugin']
4+
presets: ['babel-preset-expo']
65
};
76
};

apps/discovery/metro.config.js

Lines changed: 49 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,57 @@
1+
const { getDefaultConfig } = require('expo/metro-config');
2+
13
const path = require('path');
24
const fs = require('fs');
3-
const { getDefaultConfig } = require('expo/metro-config');
45

5-
const packagesRoot = path.resolve(__dirname, '../../packages');
6-
const docToolsRoot = path.resolve(__dirname, '../../doc-tools');
6+
const projectRoot = __dirname;
7+
const packagesRoot = path.resolve(projectRoot, '../../packages');
8+
const docToolsRoot = path.resolve(projectRoot, '../../doc-tools');
79

8-
const localPkgs = fs.readdirSync(packagesRoot);
9-
const docToolksPkgs = fs.readdirSync(docToolsRoot);
10+
const packagesDirs = fs.readdirSync(packagesRoot);
11+
const docToolsDirs = fs.readdirSync(docToolsRoot);
1012

11-
const watchFolders = localPkgs
12-
.map((f) => path.join(packagesRoot, f))
13-
.concat(docToolksPkgs.map((f) => path.join(docToolsRoot, f)));
13+
const config = getDefaultConfig(projectRoot);
1414

15-
module.exports = (async () => {
16-
const {
17-
resolver: { assetExts, sourceExts },
18-
transformer,
19-
...other
20-
} = await getDefaultConfig(__dirname);
21-
return {
22-
...other,
23-
watchFolders,
24-
transformer: {
25-
...transformer,
26-
minifierConfig: {
27-
keep_classnames: true,
28-
// Need this for source mapping in @doc/pages to work.
29-
keep_fnames: true,
30-
mangle: {
31-
keep_classnames: true,
32-
// Need this for source mapping in @doc/pages to work.
33-
keep_fnames: true
34-
},
35-
output: {
36-
ascii_only: true,
37-
quote_style: 3,
38-
wrap_iife: true
39-
},
40-
sourceMap: {
41-
includeSources: false
42-
},
43-
toplevel: false,
44-
compress: {
45-
// reduce_funcs inlines single-use functions, which cause perf regressions.
46-
reduce_funcs: false
47-
}
48-
},
49-
babelTransformerPath: require.resolve('react-native-svg-transformer')
15+
config.transformer = {
16+
...config.transformer,
17+
minifierConfig: {
18+
keep_classnames: true,
19+
// Need this for source mapping in @doc/pages to work.
20+
keep_fnames: true,
21+
mangle: {
22+
keep_classnames: true,
23+
// Need this for source mapping in @doc/pages to work.
24+
keep_fnames: true
5025
},
51-
resolver: {
52-
assetExts: assetExts.filter((ext) => ext !== 'svg'),
53-
sourceExts: [...sourceExts, 'svg'],
54-
extraNodeModules: new Proxy(
55-
{},
56-
{
57-
get: (target, name) => path.join(__dirname, `node_modules/${name}`)
58-
}
59-
)
26+
output: {
27+
ascii_only: true,
28+
quote_style: 3,
29+
wrap_iife: true
30+
},
31+
sourceMap: {
32+
includeSources: false
33+
},
34+
toplevel: false,
35+
compress: {
36+
// reduce_funcs inlines single-use functions, which cause perf regressions.
37+
reduce_funcs: false
6038
}
61-
};
62-
})();
39+
},
40+
babelTransformerPath: require.resolve('react-native-svg-transformer')
41+
};
42+
config.resolver = {
43+
...config.resolver,
44+
assetExts: config.resolver.assetExts.filter((ext) => ext !== 'svg'),
45+
sourceExts: [...config.resolver.sourceExts, 'svg'],
46+
nodeModulesPaths: [
47+
...config.resolver.nodeModulesPaths,
48+
...packagesDirs.map((d) =>
49+
path.resolve(packagesRoot, d, 'node_modules')
50+
),
51+
...docToolsDirs.map((d) =>
52+
path.resolve(docToolsRoot, d, 'node_modules')
53+
)
54+
]
55+
};
56+
57+
module.exports = config;

0 commit comments

Comments
 (0)