@nx/expo 19.1.0 → 19.1.2

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/migrations.json CHANGED
@@ -71,6 +71,12 @@
71
71
  "cli": "nx",
72
72
  "description": "Change webpack to metro in expo projects",
73
73
  "factory": "./src/migrations/update-19-0-0/change-webpack-to-metro"
74
+ },
75
+ "update-19-2-0-remove-webpack-config": {
76
+ "version": "19.2.0-beta.2",
77
+ "cli": "nx",
78
+ "description": "Remove deprecated webpack.config.js",
79
+ "factory": "./src/migrations/update-19-2-0/remove-deprecated-webpack-config"
74
80
  }
75
81
  },
76
82
  "packageJsonUpdates": {
@@ -436,6 +442,67 @@
436
442
  "alwaysAddToPackageJson": false
437
443
  }
438
444
  }
445
+ },
446
+ "19.2.0": {
447
+ "version": "19.2.0-beta.2",
448
+ "packages": {
449
+ "expo": {
450
+ "version": "~51.0.8",
451
+ "alwaysAddToPackageJson": false
452
+ },
453
+ "expo-splash-screen": {
454
+ "version": "~0.27.4",
455
+ "alwaysAddToPackageJson": false
456
+ },
457
+ "expo-status-bar": {
458
+ "version": "~1.12.1",
459
+ "alwaysAddToPackageJson": false
460
+ },
461
+ "@expo/cli": {
462
+ "version": "~0.18.13",
463
+ "alwaysAddToPackageJson": false
464
+ },
465
+ "babel-preset-expo": {
466
+ "version": "~11.0.0",
467
+ "alwaysAddToPackageJson": false
468
+ },
469
+ "react-native": {
470
+ "version": "0.74.1",
471
+ "alwaysAddToPackageJson": false
472
+ },
473
+ "react-native-web": {
474
+ "version": "~0.19.11",
475
+ "alwaysAddToPackageJson": false
476
+ },
477
+ "@expo/metro-config": {
478
+ "version": "~0.18.1",
479
+ "alwaysAddToPackageJson": false
480
+ },
481
+ "@expo/metro-runtime": {
482
+ "version": "~3.2.1",
483
+ "alwaysAddToPackageJson": false
484
+ },
485
+ "react-native-svg-transformer": {
486
+ "version": "1.3.0",
487
+ "alwaysAddToPackageJson": false
488
+ },
489
+ "react-native-svg": {
490
+ "version": "15.2.0",
491
+ "alwaysAddToPackageJson": false
492
+ },
493
+ "@testing-library/react-native": {
494
+ "version": "~12.5.0",
495
+ "alwaysAddToPackageJson": false
496
+ },
497
+ "jest-expo": {
498
+ "version": "~51.0.2",
499
+ "alwaysAddToPackageJson": false
500
+ },
501
+ "@babel/runtime": {
502
+ "version": "7.24.5",
503
+ "alwaysAddToPackageJson": false
504
+ }
505
+ }
439
506
  }
440
507
  }
441
508
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/expo",
3
- "version": "19.1.0",
3
+ "version": "19.1.2",
4
4
  "private": false,
5
5
  "description": "The Expo Plugin for Nx contains executors and generators for managing and developing an expo application within your workspace. For example, you can directly build for different target platforms as well as generate projects and publish your code.",
6
6
  "keywords": [
@@ -28,7 +28,7 @@
28
28
  "main": "./index",
29
29
  "types": "index.d.ts",
30
30
  "dependencies": {
31
- "@nx/devkit": "19.1.0",
31
+ "@nx/devkit": "19.1.2",
32
32
  "chalk": "^4.1.0",
33
33
  "enhanced-resolve": "^5.8.3",
34
34
  "fs-extra": "^11.1.0",
@@ -37,13 +37,13 @@
37
37
  "node-fetch": "^2.6.7",
38
38
  "tslib": "^2.3.0",
39
39
  "tsconfig-paths": "^4.1.2",
40
- "@nx/jest": "19.1.0",
41
- "@nx/js": "19.1.0",
42
- "@nx/eslint": "19.1.0",
43
- "@nx/react": "19.1.0",
44
- "@nx/web": "19.1.0",
45
- "@nx/webpack": "19.1.0",
46
- "@nrwl/expo": "19.1.0"
40
+ "@nx/jest": "19.1.2",
41
+ "@nx/js": "19.1.2",
42
+ "@nx/eslint": "19.1.2",
43
+ "@nx/react": "19.1.2",
44
+ "@nx/web": "19.1.2",
45
+ "@nx/webpack": "19.1.2",
46
+ "@nrwl/expo": "19.1.2"
47
47
  },
48
48
  "executors": "./executors.json",
49
49
  "ng-update": {
@@ -7,7 +7,7 @@ const { assetExts, sourceExts } = defaultConfig.resolver;
7
7
 
8
8
  /**
9
9
  * Metro configuration
10
- * https://facebook.github.io/metro/docs/configuration
10
+ * https://reactnative.dev/docs/metro
11
11
  *
12
12
  * @type {import('metro-config').MetroConfig}
13
13
  */
@@ -16,12 +16,14 @@ async function update(tree) {
16
16
  if (config.targets['export-web']) {
17
17
  config.targets['export-web'].options.bundler = 'metro';
18
18
  }
19
- (0, devkit_1.updateJson)(tree, `${config.root}/app.json`, (appJson) => {
20
- if (appJson.expo?.web) {
21
- appJson.expo.web.bundler = 'metro';
22
- }
23
- return appJson;
24
- });
19
+ if (tree.exists(`${config.root}/app.json`)) {
20
+ (0, devkit_1.updateJson)(tree, `${config.root}/app.json`, (appJson) => {
21
+ if (appJson.expo?.web) {
22
+ appJson.expo.web.bundler = 'metro';
23
+ }
24
+ return appJson;
25
+ });
26
+ }
25
27
  }
26
28
  (0, devkit_1.updateProjectConfiguration)(tree, name, config);
27
29
  }
@@ -0,0 +1,6 @@
1
+ import { Tree } from '@nx/devkit';
2
+ /**
3
+ * This function removes the deprecated webpack.config.js file from projects that use the expo:start executor
4
+ * @param tree
5
+ */
6
+ export default function update(tree: Tree): Promise<void>;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const devkit_1 = require("@nx/devkit");
4
+ const path_1 = require("path");
5
+ /**
6
+ * This function removes the deprecated webpack.config.js file from projects that use the expo:start executor
7
+ * @param tree
8
+ */
9
+ async function update(tree) {
10
+ const projects = (0, devkit_1.getProjects)(tree);
11
+ for (const [_, config] of projects.entries()) {
12
+ if (config.targets?.['start']?.executor === '@nx/expo:start') {
13
+ if (tree.exists((0, path_1.join)(config.root, 'webpack.config.js'))) {
14
+ tree.delete((0, path_1.join)(config.root, 'webpack.config.js'));
15
+ }
16
+ }
17
+ }
18
+ }
19
+ exports.default = update;
@@ -1,20 +1,20 @@
1
1
  export declare const nxVersion: any;
2
- export declare const expoVersion = "~50.0.14";
3
- export declare const expoSplashScreenVersion = "~0.26.4";
4
- export declare const expoStatusBarVersion = "~1.11.1";
5
- export declare const expoCliVersion = "~0.17.8";
6
- export declare const babelPresetExpoVersion = "~10.0.1";
2
+ export declare const expoVersion = "~51.0.8";
3
+ export declare const expoSplashScreenVersion = "~0.27.4";
4
+ export declare const expoStatusBarVersion = "~1.12.1";
5
+ export declare const expoCliVersion = "~0.18.13";
6
+ export declare const babelPresetExpoVersion = "~11.0.0";
7
7
  export declare const reactVersion = "18.2.0";
8
8
  export declare const reactDomVersion = "18.2.0";
9
9
  export declare const reactTestRendererVersion = "18.2.0";
10
10
  export declare const typesReactVersion = "~18.2.45";
11
- export declare const reactNativeVersion = "0.73.6";
12
- export declare const reactNativeWebVersion = "~0.19.10";
13
- export declare const expoMetroConfigVersion = "~0.17.6";
14
- export declare const expoMetroRuntimeVersion = "~3.1.3";
11
+ export declare const reactNativeVersion = "0.74.1";
12
+ export declare const reactNativeWebVersion = "~0.19.11";
13
+ export declare const expoMetroConfigVersion = "~0.18.1";
14
+ export declare const expoMetroRuntimeVersion = "~3.2.1";
15
15
  export declare const reactNativeSvgTransformerVersion = "1.3.0";
16
- export declare const reactNativeSvgVersion = "15.1.0";
17
- export declare const testingLibraryReactNativeVersion = "~12.4.5";
16
+ export declare const reactNativeSvgVersion = "15.2.0";
17
+ export declare const testingLibraryReactNativeVersion = "~12.5.0";
18
18
  export declare const testingLibraryJestNativeVersion = "~5.4.3";
19
- export declare const jestExpoVersion = "~50.0.4";
20
- export declare const babelRuntimeVersion = "7.22.6";
19
+ export declare const jestExpoVersion = "~51.0.2";
20
+ export declare const babelRuntimeVersion = "7.24.5";
@@ -2,22 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.babelRuntimeVersion = exports.jestExpoVersion = exports.testingLibraryJestNativeVersion = exports.testingLibraryReactNativeVersion = exports.reactNativeSvgVersion = exports.reactNativeSvgTransformerVersion = exports.expoMetroRuntimeVersion = exports.expoMetroConfigVersion = exports.reactNativeWebVersion = exports.reactNativeVersion = exports.typesReactVersion = exports.reactTestRendererVersion = exports.reactDomVersion = exports.reactVersion = exports.babelPresetExpoVersion = exports.expoCliVersion = exports.expoStatusBarVersion = exports.expoSplashScreenVersion = exports.expoVersion = exports.nxVersion = void 0;
4
4
  exports.nxVersion = require('../../package.json').version;
5
- exports.expoVersion = '~50.0.14';
6
- exports.expoSplashScreenVersion = '~0.26.4';
7
- exports.expoStatusBarVersion = '~1.11.1';
8
- exports.expoCliVersion = '~0.17.8'; // @expo/cli
9
- exports.babelPresetExpoVersion = '~10.0.1';
5
+ exports.expoVersion = '~51.0.8';
6
+ exports.expoSplashScreenVersion = '~0.27.4';
7
+ exports.expoStatusBarVersion = '~1.12.1';
8
+ exports.expoCliVersion = '~0.18.13'; // @expo/cli
9
+ exports.babelPresetExpoVersion = '~11.0.0';
10
10
  exports.reactVersion = '18.2.0';
11
11
  exports.reactDomVersion = '18.2.0';
12
12
  exports.reactTestRendererVersion = '18.2.0';
13
13
  exports.typesReactVersion = '~18.2.45';
14
- exports.reactNativeVersion = '0.73.6';
15
- exports.reactNativeWebVersion = '~0.19.10';
16
- exports.expoMetroConfigVersion = '~0.17.6';
17
- exports.expoMetroRuntimeVersion = '~3.1.3';
14
+ exports.reactNativeVersion = '0.74.1';
15
+ exports.reactNativeWebVersion = '~0.19.11';
16
+ exports.expoMetroConfigVersion = '~0.18.1';
17
+ exports.expoMetroRuntimeVersion = '~3.2.1';
18
18
  exports.reactNativeSvgTransformerVersion = '1.3.0';
19
- exports.reactNativeSvgVersion = '15.1.0';
20
- exports.testingLibraryReactNativeVersion = '~12.4.5';
19
+ exports.reactNativeSvgVersion = '15.2.0';
20
+ exports.testingLibraryReactNativeVersion = '~12.5.0';
21
21
  exports.testingLibraryJestNativeVersion = '~5.4.3';
22
- exports.jestExpoVersion = '~50.0.4';
23
- exports.babelRuntimeVersion = '7.22.6';
22
+ exports.jestExpoVersion = '~51.0.2';
23
+ exports.babelRuntimeVersion = '7.24.5';
@@ -1,57 +0,0 @@
1
- const createExpoWebpackConfigAsync = require('@expo/webpack-config');
2
- const { TsconfigPathsPlugin } = require('tsconfig-paths-webpack-plugin');
3
- const { resolve } = require('path');
4
-
5
- /**
6
- * @deprecated use bundler: 'metro' instead
7
- */
8
- module.exports = async function (env, argv) {
9
- const config = await createExpoWebpackConfigAsync(env, argv);
10
-
11
- // Customize the config before returning it.
12
- // add additional rule to load files under libs
13
- const rules = config.module.rules.find((rule) =>
14
- Array.isArray(rule.oneOf)
15
- )?.oneOf;
16
- if (rules) {
17
- rules.push({
18
- test: /\.(mjs|[jt]sx?)$/,
19
- exclude: /node_modules/,
20
- use: {
21
- loader: require.resolve('@nx/webpack/src/utils/web-babel-loader.js'),
22
- options: {
23
- presets: [
24
- [
25
- '@nx/react/babel',
26
- {
27
- runtime: 'automatic',
28
- },
29
- ],
30
- ],
31
- },
32
- },
33
- });
34
- }
35
-
36
- if (!config.resolve) {
37
- config.resolve = {};
38
- }
39
- if (!config.resolve.plugins) {
40
- config.resolve.plugins = [];
41
- }
42
- const extensions = ['.ts', '.tsx', '.mjs', '.js', '.jsx'];
43
- const tsConfigPath = resolve(__dirname, 'tsconfig.json');
44
- config.resolve.plugins.push(
45
- new TsconfigPathsPlugin({
46
- configFile: tsConfigPath,
47
- extensions,
48
- })
49
- );
50
- config.resolve.fallback = {
51
- ...config.resolve.fallback,
52
- crypto: require.resolve('crypto-browserify'),
53
- stream: require.resolve('stream-browserify'),
54
- };
55
-
56
- return config;
57
- };