Skip to content
This repository was archived by the owner on Nov 3, 2025. It is now read-only.

Commit 0e39a2a

Browse files
committed
🔧 (multi-project) Support test and multi-projects
1 parent d0e291d commit 0e39a2a

8 files changed

Lines changed: 86 additions & 27 deletions

File tree

example/babel.config.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
11
module.exports = {
2-
presets: ['module:metro-react-native-babel-preset'],
2+
presets: ["module:metro-react-native-babel-preset"],
3+
plugins: [
4+
[
5+
"module-resolver",
6+
{
7+
root: ["./src"]
8+
}
9+
]
10+
]
311
};

example/metro.config.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ module.exports = {
1010
getTransformOptions: async () => ({
1111
transform: {
1212
experimentalImportSupport: false,
13-
inlineRequires: false,
14-
},
15-
}),
16-
},
13+
inlineRequires: false
14+
}
15+
})
16+
}
1717
};

example/package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,18 @@
1010
"mobx": "^5.9.4",
1111
"mobx-react": "^5.4.3",
1212
"react": "16.8.3",
13-
"react-native": "0.59.3"
13+
"react-native": "0.59.3",
14+
"react-gondola": "file:../src"
1415
},
1516
"devDependencies": {
1617
"@babel/core": "^7.4.3",
1718
"@babel/runtime": "^7.4.3",
1819
"@types/jest": "^24.0.11",
19-
"@types/react": "^16.8.11",
2020
"@types/react-native": "^0.57.42",
2121
"@types/react-test-renderer": "^16.8.1",
22+
"@types/react": "^16.8.11",
2223
"babel-jest": "^24.7.0",
24+
"babel-plugin-module-resolver": "^3.2.0",
2325
"jest": "^24.7.0",
2426
"metro-react-native-babel-preset": "^0.53.1",
2527
"react-test-renderer": "16.8.3",

example/tsconfig.json

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,16 @@
99
"moduleResolution": "node",
1010
"noEmit": true,
1111
"strict": true,
12-
"target": "esnext"
12+
"target": "esnext",
13+
"baseUrl": "./src",
14+
"paths": {
15+
"react-gondola": ["../../src"]
16+
}
1317
},
14-
"exclude": ["node_modules", "babel.config.js", "metro.config.js", "jest.config.js"]
18+
"exclude": [
19+
"node_modules",
20+
"babel.config.js",
21+
"metro.config.js",
22+
"jest.config.js"
23+
]
1524
}

example/yarn.lock

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1256,6 +1256,17 @@ babel-plugin-jest-hoist@^24.6.0:
12561256
dependencies:
12571257
"@types/babel__traverse" "^7.0.6"
12581258

1259+
babel-plugin-module-resolver@^3.2.0:
1260+
version "3.2.0"
1261+
resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-3.2.0.tgz#ddfa5e301e3b9aa12d852a9979f18b37881ff5a7"
1262+
integrity sha512-tjR0GvSndzPew/Iayf4uICWZqjBwnlMWjSx6brryfQ81F9rxBVqwDJtFCV8oOs0+vJeefK9TmdZtkIFdFe1UnA==
1263+
dependencies:
1264+
find-babel-config "^1.1.0"
1265+
glob "^7.1.2"
1266+
pkg-up "^2.0.0"
1267+
reselect "^3.0.1"
1268+
resolve "^1.4.0"
1269+
12591270
babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0:
12601271
version "7.0.0-beta.0"
12611272
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf"
@@ -2329,6 +2340,14 @@ finalhandler@1.1.0:
23292340
statuses "~1.3.1"
23302341
unpipe "~1.0.0"
23312342

2343+
find-babel-config@^1.1.0:
2344+
version "1.2.0"
2345+
resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-1.2.0.tgz#a9b7b317eb5b9860cda9d54740a8c8337a2283a2"
2346+
integrity sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==
2347+
dependencies:
2348+
json5 "^0.5.1"
2349+
path-exists "^3.0.0"
2350+
23322351
find-cache-dir@^2.0.0:
23332352
version "2.1.0"
23342353
resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7"
@@ -2338,7 +2357,7 @@ find-cache-dir@^2.0.0:
23382357
make-dir "^2.0.0"
23392358
pkg-dir "^3.0.0"
23402359

2341-
find-up@^2.0.0:
2360+
find-up@^2.0.0, find-up@^2.1.0:
23422361
version "2.1.0"
23432362
resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
23442363
integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
@@ -3530,6 +3549,11 @@ json-stringify-safe@~5.0.1:
35303549
resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
35313550
integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
35323551

3552+
json5@^0.5.1:
3553+
version "0.5.1"
3554+
resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
3555+
integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=
3556+
35333557
json5@^2.1.0:
35343558
version "2.1.0"
35353559
resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850"
@@ -4791,6 +4815,13 @@ pkg-dir@^3.0.0:
47914815
dependencies:
47924816
find-up "^3.0.0"
47934817

4818+
pkg-up@^2.0.0:
4819+
version "2.0.0"
4820+
resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f"
4821+
integrity sha1-yBmscoBZpGHKscOImivjxJoATX8=
4822+
dependencies:
4823+
find-up "^2.1.0"
4824+
47944825
plist@^3.0.0, plist@^3.0.1:
47954826
version "3.0.1"
47964827
resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.1.tgz#a9b931d17c304e8912ef0ba3bdd6182baf2e1f8c"
@@ -4963,6 +4994,9 @@ react-devtools-core@^3.6.0:
49634994
shell-quote "^1.6.1"
49644995
ws "^3.3.1"
49654996

4997+
"react-gondola@file:../src":
4998+
version "0.0.0"
4999+
49665000
react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.3, react-is@^16.8.4:
49675001
version "16.8.6"
49685002
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16"
@@ -5254,6 +5288,11 @@ require-main-filename@^1.0.1:
52545288
resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
52555289
integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=
52565290

5291+
reselect@^3.0.1:
5292+
version "3.0.1"
5293+
resolved "https://registry.yarnpkg.com/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147"
5294+
integrity sha1-79qpjqdFEyTQkrKyFjpqHXqaIUc=
5295+
52575296
resolve-cwd@^2.0.0:
52585297
version "2.0.0"
52595298
resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a"
@@ -5276,7 +5315,7 @@ resolve@1.1.7:
52765315
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
52775316
integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
52785317

5279-
resolve@^1.10.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1:
5318+
resolve@^1.10.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1:
52805319
version "1.10.0"
52815320
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba"
52825321
integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
"declarative"
1515
],
1616
"peerDependencies": {
17-
"mobx-react": "*",
1817
"mobx": "*",
19-
"react-native": "*",
20-
"react": "*"
18+
"mobx-react": "*",
19+
"react": "*",
20+
"react-native": "*"
2121
},
2222
"scripts": {
2323
"test": "jest"
@@ -36,7 +36,7 @@
3636
"mobx-react": "^5.4.3",
3737
"react": "16.8.3",
3838
"react-native": "0.59.3",
39-
"react-test-renderer": "16.8.3",
39+
"react-test-renderer": "^16.8.6",
4040
"typescript": "^3.4.1"
4141
}
4242
}

tsconfig.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
{
22
"compilerOptions": {
3-
"target": "es5",
4-
"module": "commonjs",
3+
"allowSyntheticDefaultImports": true,
4+
"declaration": true,
55
"jsx": "react",
6+
"module": "commonjs",
7+
"outDir": "dist",
68
"strict": true,
7-
"declaration": true,
8-
"outDir": "dist"
9+
"target": "es5"
910
},
1011
"exclude": ["node_modules", "dist", "example"]
1112
}

yarn.lock

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4968,7 +4968,7 @@ react-devtools-core@^3.6.0:
49684968
shell-quote "^1.6.1"
49694969
ws "^3.3.1"
49704970

4971-
react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.3, react-is@^16.8.4:
4971+
react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6:
49724972
version "16.8.6"
49734973
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16"
49744974
integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==
@@ -5042,15 +5042,15 @@ react-proxy@^1.1.7:
50425042
lodash "^4.6.1"
50435043
react-deep-force-update "^1.0.0"
50445044

5045-
react-test-renderer@16.8.3:
5046-
version "16.8.3"
5047-
resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.8.3.tgz#230006af264cc46aeef94392e04747c21839e05e"
5048-
integrity sha512-rjJGYebduKNZH0k1bUivVrRLX04JfIQ0FKJLPK10TAb06XWhfi4gTobooF9K/DEFNW98iGac3OSxkfIJUN9Mdg==
5045+
react-test-renderer@^16.8.6:
5046+
version "16.8.6"
5047+
resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.8.6.tgz#188d8029b8c39c786f998aa3efd3ffe7642d5ba1"
5048+
integrity sha512-H2srzU5IWYT6cZXof6AhUcx/wEyJddQ8l7cLM/F7gDXYyPr4oq+vCIxJYXVGhId1J706sqziAjuOEjyNkfgoEw==
50495049
dependencies:
50505050
object-assign "^4.1.1"
50515051
prop-types "^15.6.2"
5052-
react-is "^16.8.3"
5053-
scheduler "^0.13.3"
5052+
react-is "^16.8.6"
5053+
scheduler "^0.13.6"
50545054

50555055
react-transform-hmr@^1.0.4:
50565056
version "1.0.4"
@@ -5401,7 +5401,7 @@ sax@~1.1.1:
54015401
resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240"
54025402
integrity sha1-XWFr6KXmB9VOEUr65Vt+ry/MMkA=
54035403

5404-
scheduler@^0.13.3:
5404+
scheduler@^0.13.3, scheduler@^0.13.6:
54055405
version "0.13.6"
54065406
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.13.6.tgz#466a4ec332467b31a91b9bf74e5347072e4cd889"
54075407
integrity sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==

0 commit comments

Comments
 (0)