@nx/detox 16.1.3-beta.0 → 16.1.4

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
@@ -29,6 +29,12 @@
29
29
  "version": "16.0.0-beta.3",
30
30
  "description": "Update .detoxrc.json and jest.config.json for detox 20",
31
31
  "implementation": "./src/migrations/update-16-0-0/update-detoxrc-json"
32
+ },
33
+ "update-detoxrc-json-expo-16-1-4": {
34
+ "cli": "nx",
35
+ "version": "16.1.4-beta.0",
36
+ "description": "Update .detoxrc.json for expo",
37
+ "implementation": "./src/migrations/update-16-1-4/update-detoxrc-json-expo"
32
38
  }
33
39
  },
34
40
  "packageJsonUpdates": {
@@ -222,6 +228,19 @@
222
228
  "alwaysAddToPackageJson": false
223
229
  }
224
230
  }
231
+ },
232
+ "16.1.1": {
233
+ "version": "16.1.1-beta.0",
234
+ "packages": {
235
+ "detox": {
236
+ "version": "~20.8.0",
237
+ "alwaysAddToPackageJson": false
238
+ },
239
+ "@config-plugins/detox": {
240
+ "version": "~5.0.1",
241
+ "alwaysAddToPackageJson": false
242
+ }
243
+ }
225
244
  }
226
245
  }
227
246
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/detox",
3
- "version": "16.1.3-beta.0",
3
+ "version": "16.1.4",
4
4
  "private": false,
5
5
  "description": "The Nx Plugin for Detox contains executors and generators for allowing your workspace to use the powerful Detox integration testing capabilities.",
6
6
  "keywords": [
@@ -25,15 +25,15 @@
25
25
  "main": "./index",
26
26
  "types": "index.d.ts",
27
27
  "dependencies": {
28
- "@nrwl/detox": "16.1.3-beta.0",
29
- "@nx/devkit": "16.1.3-beta.0",
30
- "@nx/jest": "16.1.3-beta.0",
31
- "@nx/js": "16.1.3-beta.0",
32
- "@nx/linter": "16.1.3-beta.0",
33
- "@nx/react": "16.1.3-beta.0"
28
+ "@nrwl/detox": "16.1.4",
29
+ "@nx/devkit": "16.1.4",
30
+ "@nx/jest": "16.1.4",
31
+ "@nx/js": "16.1.4",
32
+ "@nx/linter": "16.1.4",
33
+ "@nx/react": "16.1.4"
34
34
  },
35
35
  "peerDependencies": {
36
- "detox": "~20.7.0"
36
+ "detox": "~20.8.0"
37
37
  },
38
38
  "builders": "./executors.json",
39
39
  "ng-update": {
@@ -44,5 +44,5 @@
44
44
  "publishConfig": {
45
45
  "access": "public"
46
46
  },
47
- "gitHead": "bd8cbfaddd0d4cad0befc78a23c7ccb56e4619f3"
47
+ "gitHead": "16f098804653374057eff7e2f9565fb4c7a90b29"
48
48
  }
@@ -22,12 +22,12 @@
22
22
  <% if (framework === 'expo') { %>
23
23
  "ios.eas": {
24
24
  "type": "ios.app",
25
- "build": "<%= exec %> nx run <%= appFileName %>:download --platform ios --distribution simulator --output=<%= appRoot %>/dist/",
25
+ "build": "<%= exec %> nx run <%= appFileName %>:download --platform ios --distribution simulator --output=<%= offsetFromRoot %><%= appRoot %>/dist/",
26
26
  "binaryPath": "<%= offsetFromRoot %><%= appRoot %>/dist/<%= appExpoName %>.app"
27
27
  },
28
28
  "ios.local": {
29
29
  "type": "ios.app",
30
- "build": "<%= exec %> nx run <%= appFileName %>:build --platform ios --profile preview --wait --local --no-interactive --output=<%= appRoot %>/dist/",
30
+ "build": "<%= exec %> nx run <%= appFileName %>:build --platform ios --profile preview --wait --local --no-interactive --output=<%= offsetFromRoot %><%= appRoot %>/dist/<%= appExpoName %>.tar.gz",
31
31
  "binaryPath": "<%= offsetFromRoot %><%= appRoot %>/dist/<%= appExpoName %>.app"
32
32
  },
33
33
  <% } %>
@@ -43,13 +43,13 @@
43
43
  },
44
44
  <% if (framework === 'expo') { %>
45
45
  "android.eas": {
46
- "type": "ios.app",
47
- "build": "<%= exec %> nx run <%= appFileName %>:download --platform android --output=<%= appRoot %>/dist/",
46
+ "type": "android.apk",
47
+ "build": "<%= exec %> nx run <%= appFileName %>:download --platform android --output=<%= offsetFromRoot %><%= appRoot %>/dist/",
48
48
  "binaryPath": "<%= offsetFromRoot %><%= appRoot %>/dist/<%= appExpoName %>.apk"
49
49
  },
50
50
  "android.local": {
51
- "type": "ios.app",
52
- "build": "<%= exec %> nx run <%= appFileName %>:build --platform android --profile preview --wait --local --no-interactive --output=<%= appRoot %>/dist/",
51
+ "type": "android.apk",
52
+ "build": "<%= exec %> nx run <%= appFileName %>:build --platform android --profile preview --wait --local --no-interactive --output=<%= offsetFromRoot %><%= appRoot %>/dist/<%= appExpoName %>.apk",
53
53
  "binaryPath": "<%= offsetFromRoot %><%= appRoot %>/dist/<%= appExpoName %>.apk"
54
54
  },
55
55
  <% } %>
@@ -97,11 +97,11 @@
97
97
  },
98
98
  <% if (framework === 'expo') { %>
99
99
  "android.emu.eas": {
100
- "device": "simulator",
100
+ "device": "emulator",
101
101
  "app": "android.eas"
102
102
  },
103
103
  "android.emu.local": {
104
- "device": "simulator",
104
+ "device": "emulator",
105
105
  "app": "android.local"
106
106
  },
107
107
  <% } %>
@@ -17,7 +17,7 @@ exports.reactNativeBuildTarget = reactNativeBuildTarget;
17
17
  function expoBuildTarget(platform) {
18
18
  return {
19
19
  options: {
20
- detoxConfiguration: `${platform}.debug`,
20
+ detoxConfiguration: `${platform}.eas`,
21
21
  },
22
22
  configurations: {
23
23
  local: {
@@ -1 +1 @@
1
- {"version":3,"file":"get-targets.js","sourceRoot":"","sources":["../../../../../../../packages/detox/src/generators/application/lib/get-targets.ts"],"names":[],"mappings":";;;AAAA,SAAgB,sBAAsB,CAAC,QAAmC;IACxE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;SACxC;QACD,cAAc,EAAE;YACd,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;aAC1C;SACF;KACF,CAAC;AACJ,CAAC;AAXD,wDAWC;AAED,SAAgB,eAAe,CAAC,QAAmC;IACjE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;SACxC;QACD,cAAc,EAAE;YACd,KAAK,EAAE;gBACL,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;aACxC;YACD,IAAI,EAAE;gBACJ,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;aACxC;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;aAC1C;SACF;KACF,CAAC;AACJ,CAAC;AAjBD,0CAiBC;AAED,SAAgB,qBAAqB,CACnC,QAAmC,EACnC,OAAe;IAEf,MAAM,aAAa,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;YACvC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,EAAE;SACjD;QACD,cAAc,EAAE;YACd,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;gBACzC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,aAAa;aAC5D;SACF;KACF,CAAC;AACJ,CAAC;AAlBD,sDAkBC;AAED,SAAgB,cAAc,CAC5B,QAAmC,EACnC,OAAe;IAEf,MAAM,aAAa,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,MAAM;YACrC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,EAAE;SACjD;QACD,cAAc,EAAE;YACd,KAAK,EAAE;gBACL,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;gBACvC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,QAAQ;aACvD;YACD,IAAI,EAAE;gBACJ,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;gBACvC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,OAAO;aACtD;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;gBACzC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,aAAa;aAC5D;SACF;KACF,CAAC;AACJ,CAAC;AA1BD,wCA0BC"}
1
+ {"version":3,"file":"get-targets.js","sourceRoot":"","sources":["../../../../../../../packages/detox/src/generators/application/lib/get-targets.ts"],"names":[],"mappings":";;;AAAA,SAAgB,sBAAsB,CAAC,QAAmC;IACxE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;SACxC;QACD,cAAc,EAAE;YACd,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;aAC1C;SACF;KACF,CAAC;AACJ,CAAC;AAXD,wDAWC;AAED,SAAgB,eAAe,CAAC,QAAmC;IACjE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,MAAM;SACtC;QACD,cAAc,EAAE;YACd,KAAK,EAAE;gBACL,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;aACxC;YACD,IAAI,EAAE;gBACJ,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;aACxC;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;aAC1C;SACF;KACF,CAAC;AACJ,CAAC;AAjBD,0CAiBC;AAED,SAAgB,qBAAqB,CACnC,QAAmC,EACnC,OAAe;IAEf,MAAM,aAAa,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;YACvC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,EAAE;SACjD;QACD,cAAc,EAAE;YACd,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;gBACzC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,aAAa;aAC5D;SACF;KACF,CAAC;AACJ,CAAC;AAlBD,sDAkBC;AAED,SAAgB,cAAc,CAC5B,QAAmC,EACnC,OAAe;IAEf,MAAM,aAAa,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE;YACP,kBAAkB,EAAE,GAAG,QAAQ,MAAM;YACrC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,EAAE;SACjD;QACD,cAAc,EAAE;YACd,KAAK,EAAE;gBACL,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;gBACvC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,QAAQ;aACvD;YACD,IAAI,EAAE;gBACJ,kBAAkB,EAAE,GAAG,QAAQ,QAAQ;gBACvC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,OAAO;aACtD;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG,QAAQ,UAAU;gBACzC,WAAW,EAAE,GAAG,OAAO,UAAU,aAAa,aAAa;aAC5D;SACF;KACF,CAAC;AACJ,CAAC;AA1BD,wCA0BC"}
@@ -1,6 +1,6 @@
1
1
  import { GeneratorCallback, Tree } from '@nx/devkit';
2
2
  import { Schema } from './schema';
3
3
  export declare function detoxInitGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
4
- export declare function updateDependencies(host: Tree): GeneratorCallback;
4
+ export declare function updateDependencies(host: Tree, schema: Schema): GeneratorCallback;
5
5
  export default detoxInitGenerator;
6
6
  export declare const detoxInitSchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
@@ -10,7 +10,7 @@ function detoxInitGenerator(host, schema) {
10
10
  const tasks = [];
11
11
  if (!schema.skipPackageJson) {
12
12
  tasks.push(moveDependency(host));
13
- tasks.push(updateDependencies(host));
13
+ tasks.push(updateDependencies(host, schema));
14
14
  }
15
15
  if (!schema.skipFormat) {
16
16
  yield (0, devkit_1.formatFiles)(host);
@@ -19,14 +19,10 @@ function detoxInitGenerator(host, schema) {
19
19
  });
20
20
  }
21
21
  exports.detoxInitGenerator = detoxInitGenerator;
22
- function updateDependencies(host) {
23
- return (0, devkit_1.addDependenciesToPackageJson)(host, {}, {
24
- '@nx/detox': versions_2.nxVersion,
25
- detox: versions_2.detoxVersion,
26
- '@testing-library/jest-dom': versions_2.testingLibraryJestDom,
27
- '@types/node': versions_1.typesNodeVersion,
28
- 'jest-circus': versions_1.jestVersion,
29
- });
22
+ function updateDependencies(host, schema) {
23
+ return (0, devkit_1.addDependenciesToPackageJson)(host, {}, Object.assign({ '@nx/detox': versions_2.nxVersion, detox: versions_2.detoxVersion, '@testing-library/jest-dom': versions_2.testingLibraryJestDom, '@types/node': versions_1.typesNodeVersion, 'jest-circus': versions_1.jestVersion }, (schema.framework === 'expo'
24
+ ? { '@config-plugins/detox': versions_2.configPluginsDetoxVersion }
25
+ : {})));
30
26
  }
31
27
  exports.updateDependencies = updateDependencies;
32
28
  function moveDependency(host) {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/detox/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,uCAQoB;AACpB,0DAA4E;AAG5E,mDAI8B;AAE9B,SAAsB,kBAAkB,CAAC,IAAU,EAAE,MAAc;;QACjE,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;SACtC;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACtB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,yBAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AAbD,gDAaC;AAED,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ,EAAE,EACF;QACE,WAAW,EAAE,oBAAS;QACtB,KAAK,EAAE,uBAAY;QACnB,2BAA2B,EAAE,gCAAqB;QAClD,aAAa,EAAE,2BAAgB;QAC/B,aAAa,EAAE,sBAAW;KAC3B,CACF,CAAC;AACJ,CAAC;AAZD,gDAYC;AAED,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,kBAAe,kBAAkB,CAAC;AACrB,QAAA,kBAAkB,GAAG,IAAA,2BAAkB,EAAC,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/detox/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,uCAQoB;AACpB,0DAA4E;AAG5E,mDAK8B;AAE9B,SAAsB,kBAAkB,CAAC,IAAU,EAAE,MAAc;;QACjE,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;SAC9C;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACtB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,yBAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AAbD,gDAaC;AAED,SAAgB,kBAAkB,CAAC,IAAU,EAAE,MAAc;IAC3D,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ,EAAE,kBAEA,WAAW,EAAE,oBAAS,EACtB,KAAK,EAAE,uBAAY,EACnB,2BAA2B,EAAE,gCAAqB,EAClD,aAAa,EAAE,2BAAgB,EAC/B,aAAa,EAAE,sBAAW,IACvB,CAAC,MAAM,CAAC,SAAS,KAAK,MAAM;QAC7B,CAAC,CAAC,EAAE,uBAAuB,EAAE,oCAAyB,EAAE;QACxD,CAAC,CAAC,EAAE,CAAC,EAEV,CAAC;AACJ,CAAC;AAfD,gDAeC;AAED,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,kBAAe,kBAAkB,CAAC;AACrB,QAAA,kBAAkB,GAAG,IAAA,2BAAkB,EAAC,kBAAkB,CAAC,CAAC"}
@@ -15,6 +15,12 @@
15
15
  "default": false,
16
16
  "description": "Do not add dependencies to `package.json`.",
17
17
  "x-priority": "internal"
18
+ },
19
+ "framework": {
20
+ "type": "string",
21
+ "description": "App framework to test",
22
+ "enum": ["react-native", "expo"],
23
+ "default": "react-native"
18
24
  }
19
25
  },
20
26
  "required": []
@@ -5,6 +5,6 @@ import { Tree } from '@nx/devkit';
5
5
  * - update keys: runnerConfig
6
6
  * Update jest.config.json under detox project:
7
7
  * - remove key: transform
8
- * - add key: rootDir, testMatch
8
+ * - add key: rootDir, testMatch, reporter, globalSetup, globalTeardown, verbose
9
9
  */
10
10
  export default function update(tree: Tree): Promise<void>;
@@ -8,14 +8,14 @@ const devkit_1 = require("@nx/devkit");
8
8
  * - update keys: runnerConfig
9
9
  * Update jest.config.json under detox project:
10
10
  * - remove key: transform
11
- * - add key: rootDir, testMatch
11
+ * - add key: rootDir, testMatch, reporter, globalSetup, globalTeardown, verbose
12
12
  */
13
13
  function update(tree) {
14
14
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
15
  const projects = (0, devkit_1.getProjects)(tree);
16
16
  projects.forEach((project) => {
17
17
  var _a, _b;
18
- if (((_b = (_a = project.targets) === null || _a === void 0 ? void 0 : _a['test-ios']) === null || _b === void 0 ? void 0 : _b.executor) !== '@nrwl/detox:test')
18
+ if (((_b = (_a = project.targets) === null || _a === void 0 ? void 0 : _a['test-ios']) === null || _b === void 0 ? void 0 : _b.executor) !== '@nx/detox:test')
19
19
  return;
20
20
  updateDetoxrcJson(tree, project);
21
21
  updateJestConfigJson(tree, project);
@@ -61,6 +61,10 @@ function updateJestConfigJson(host, project) {
61
61
  '<rootDir>/src/**/*.spec.ts?(x)',
62
62
  ];
63
63
  }
64
+ json.reporter = ['detox/runners/jest/reporter'];
65
+ json.globalSetup = 'detox/runners/jest/globalSetup';
66
+ json.globalTeardown = 'detox/runners/jest/globalTeardown';
67
+ json.verbose = true;
64
68
  return json;
65
69
  });
66
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"update-detoxrc-json.js","sourceRoot":"","sources":["../../../../../../packages/detox/src/migrations/update-16-0-0/update-detoxrc-json.ts"],"names":[],"mappings":";;;AAAA,uCAMoB;AAEpB;;;;;;;GAOG;AACH,SAA8B,MAAM,CAAC,IAAU;;QAC7C,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAEnC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;;YAC3B,IAAI,CAAA,MAAA,MAAA,OAAO,CAAC,OAAO,0CAAG,UAAU,CAAC,0CAAE,QAAQ,MAAK,kBAAkB;gBAAE,OAAO;YAC3E,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjC,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAVD,yBAUC;AAED,SAAS,iBAAiB,CAAC,IAAU,EAAE,OAA6B;IAClE,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,IAAI,gBAAgB,CAAC;IACxD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QAAE,OAAO;IAC1C,IAAA,mBAAU,EAAC,IAAI,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE;QACzC,IAAI,CAAC,UAAU,GAAG;YAChB,IAAI,EAAE;gBACJ,EAAE,EAAE,MAAM;gBACV,MAAM,EAAE,oBAAoB;aAC7B;YACD,IAAI,EAAE;gBACJ,YAAY,EAAE,MAAM;aACrB;SACF,CAAC;QACF,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAU,EAAE,OAA6B;IACrE,MAAM,cAAc,GAAG,GAAG,OAAO,CAAC,IAAI,mBAAmB,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QAAE,OAAO;IACzC,IAAA,mBAAU,EAAC,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE;QACxC,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,IAAI,CAAC,SAAS,CAAC;SACvB;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;SACpB;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG;gBACf,gCAAgC;gBAChC,gCAAgC;aACjC,CAAC;SACH;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"update-detoxrc-json.js","sourceRoot":"","sources":["../../../../../../packages/detox/src/migrations/update-16-0-0/update-detoxrc-json.ts"],"names":[],"mappings":";;;AAAA,uCAMoB;AAEpB;;;;;;;GAOG;AACH,SAA8B,MAAM,CAAC,IAAU;;QAC7C,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAEnC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;;YAC3B,IAAI,CAAA,MAAA,MAAA,OAAO,CAAC,OAAO,0CAAG,UAAU,CAAC,0CAAE,QAAQ,MAAK,gBAAgB;gBAAE,OAAO;YACzE,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjC,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAVD,yBAUC;AAED,SAAS,iBAAiB,CAAC,IAAU,EAAE,OAA6B;IAClE,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,IAAI,gBAAgB,CAAC;IACxD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QAAE,OAAO;IAC1C,IAAA,mBAAU,EAAC,IAAI,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE;QACzC,IAAI,CAAC,UAAU,GAAG;YAChB,IAAI,EAAE;gBACJ,EAAE,EAAE,MAAM;gBACV,MAAM,EAAE,oBAAoB;aAC7B;YACD,IAAI,EAAE;gBACJ,YAAY,EAAE,MAAM;aACrB;SACF,CAAC;QACF,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAU,EAAE,OAA6B;IACrE,MAAM,cAAc,GAAG,GAAG,OAAO,CAAC,IAAI,mBAAmB,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QAAE,OAAO;IACzC,IAAA,mBAAU,EAAC,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE;QACxC,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,IAAI,CAAC,SAAS,CAAC;SACvB;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;SACpB;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG;gBACf,gCAAgC;gBAChC,gCAAgC;aACjC,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,GAAG,gCAAgC,CAAC;QACpD,IAAI,CAAC,cAAc,GAAG,mCAAmC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Tree } from '@nx/devkit';
2
+ /**
3
+ * Update .detoxrc.json under detox project for expo:
4
+ * - fix the eas build command
5
+ * - fix the local build command
6
+ * - update project.json targets
7
+ */
8
+ export default function update(tree: Tree): Promise<void>;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const devkit_1 = require("@nx/devkit");
5
+ /**
6
+ * Update .detoxrc.json under detox project for expo:
7
+ * - fix the eas build command
8
+ * - fix the local build command
9
+ * - update project.json targets
10
+ */
11
+ function update(tree) {
12
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
+ const projects = (0, devkit_1.getProjects)(tree);
14
+ projects.forEach((project) => {
15
+ var _a, _b;
16
+ if (((_b = (_a = project.targets) === null || _a === void 0 ? void 0 : _a['test-ios']) === null || _b === void 0 ? void 0 : _b.executor) !== '@nx/detox:test')
17
+ return;
18
+ updateDetoxrcJson(tree, project);
19
+ updateProjectJson(tree, project);
20
+ });
21
+ yield (0, devkit_1.formatFiles)(tree);
22
+ });
23
+ }
24
+ exports.default = update;
25
+ function updateDetoxrcJson(host, project) {
26
+ const detoxConfigPath = `${project.root}/.detoxrc.json`;
27
+ const projectName = project.name;
28
+ const appName = (0, devkit_1.names)(projectName).className;
29
+ const offset = (0, devkit_1.offsetFromRoot)(project.root);
30
+ const exec = (0, devkit_1.getPackageManagerCommand)((0, devkit_1.detectPackageManager)(host.root)).exec;
31
+ if (!host.exists(detoxConfigPath))
32
+ return;
33
+ (0, devkit_1.updateJson)(host, detoxConfigPath, (json) => {
34
+ var _a, _b, _c, _d;
35
+ if ((_a = json.apps) === null || _a === void 0 ? void 0 : _a['ios.eas']) {
36
+ json.apps['ios.eas'].build = `${exec} nx run ${projectName}:download --platform ios --distribution simulator --output=${offset}${project.root}/dist/`;
37
+ }
38
+ if ((_b = json.apps) === null || _b === void 0 ? void 0 : _b['android.eas']) {
39
+ json.apps['android.eas'].build = `${exec} nx run ${projectName}:download --platform android --distribution simulator --output=${offset}${project.root}/dist/`;
40
+ json.apps['android.eas'].type = 'android.apk';
41
+ }
42
+ if ((_c = json.apps) === null || _c === void 0 ? void 0 : _c['ios.local']) {
43
+ json.apps['ios.local'].build = `${exec} nx run ${projectName}:build --platform ios --configuration=debug --output=${offset}${project.root}/dist/${appName}.tar.gz`;
44
+ }
45
+ if ((_d = json.apps) === null || _d === void 0 ? void 0 : _d['android.local']) {
46
+ json.apps['android.local'].build = `${exec} nx run ${projectName}:build --platform android --configuration=debug --output=${offset}${project.root}/dist/${appName}.apk`;
47
+ json.apps['android.local'].type = 'android.apk';
48
+ }
49
+ return json;
50
+ });
51
+ }
52
+ function updateProjectJson(host, project) {
53
+ var _a, _b, _c, _d, _e, _f;
54
+ if (((_c = (_b = (_a = project.targets) === null || _a === void 0 ? void 0 : _a['test-ios']) === null || _b === void 0 ? void 0 : _b.options) === null || _c === void 0 ? void 0 : _c.detoxConfiguration) == 'ios.sim.eas') {
55
+ project.targets['build-ios'].options.detoxConfiguration = 'ios.sim.eas';
56
+ }
57
+ if (((_f = (_e = (_d = project.targets) === null || _d === void 0 ? void 0 : _d['test-android']) === null || _e === void 0 ? void 0 : _e.options) === null || _f === void 0 ? void 0 : _f.detoxConfiguration) ==
58
+ 'android.sim.eas') {
59
+ project.targets['build-android'].options.detoxConfiguration =
60
+ 'android.sim.eas';
61
+ project.targets['test-android'] = {
62
+ executor: '@nx/detox:test',
63
+ options: {
64
+ detoxConfiguration: 'android.sim.eas',
65
+ buildTarget: `${project.name}:build-android`,
66
+ },
67
+ configurations: {
68
+ local: {
69
+ detoxConfiguration: 'android.emu.local',
70
+ buildTarget: `${project.name}:build-android:local`,
71
+ },
72
+ bare: {
73
+ detoxConfiguration: 'android.emu.debug',
74
+ buildTarget: `${project.name}:build-android:bare`,
75
+ },
76
+ production: {
77
+ detoxConfiguration: 'android.emu.release',
78
+ buildTarget: `${project.name}:build-android:production`,
79
+ },
80
+ },
81
+ };
82
+ }
83
+ (0, devkit_1.updateProjectConfiguration)(host, project.name, project);
84
+ }
85
+ //# sourceMappingURL=update-detoxrc-json-expo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-detoxrc-json-expo.js","sourceRoot":"","sources":["../../../../../../packages/detox/src/migrations/update-16-1-4/update-detoxrc-json-expo.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export declare const nxVersion: any;
2
- export declare const detoxVersion = "~20.7.0";
2
+ export declare const detoxVersion = "~20.8.0";
3
3
  export declare const testingLibraryJestDom = "5.16.5";
4
+ export declare const configPluginsDetoxVersion = "~5.0.1";
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testingLibraryJestDom = exports.detoxVersion = exports.nxVersion = void 0;
3
+ exports.configPluginsDetoxVersion = exports.testingLibraryJestDom = exports.detoxVersion = exports.nxVersion = void 0;
4
4
  exports.nxVersion = require('../../package.json').version;
5
- exports.detoxVersion = '~20.7.0';
5
+ exports.detoxVersion = '~20.8.0';
6
6
  exports.testingLibraryJestDom = '5.16.5';
7
+ exports.configPluginsDetoxVersion = '~5.0.1'; // only required for expo
7
8
  //# sourceMappingURL=versions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/detox/src/utils/versions.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;AAElD,QAAA,YAAY,GAAG,SAAS,CAAC;AACzB,QAAA,qBAAqB,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/detox/src/utils/versions.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;AAElD,QAAA,YAAY,GAAG,SAAS,CAAC;AACzB,QAAA,qBAAqB,GAAG,QAAQ,CAAC;AACjC,QAAA,yBAAyB,GAAG,QAAQ,CAAC,CAAC,yBAAyB"}