@unif/react-native-design 0.24.0 → 0.24.1

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.
Files changed (2) hide show
  1. package/jest-preset.js +9 -1
  2. package/package.json +1 -1
package/jest-preset.js CHANGED
@@ -29,7 +29,15 @@ let reactNativePreset;
29
29
  try {
30
30
  reactNativePreset = require('@react-native/jest-preset');
31
31
  } catch (error) {
32
- if (error && error.code === 'MODULE_NOT_FOUND') {
32
+ // 只认「@react-native/jest-preset 自己没装」这一种 MODULE_NOT_FOUND:它装了但内部
33
+ // 依赖断裂时抛的也是这个 code,那时报「需要自行安装」是误诊,会把人引向装了又装。
34
+ // Node 的 MODULE_NOT_FOUND 正文首行是 `Cannot find module '<说明符>'`,带引号的模块名
35
+ // 就是判据 —— 后面的 Require stack 只有裸路径,不会误命中。
36
+ if (
37
+ error &&
38
+ error.code === 'MODULE_NOT_FOUND' &&
39
+ String(error.message).includes("'@react-native/jest-preset'")
40
+ ) {
33
41
  throw new Error(
34
42
  '@unif/react-native-design/jest-preset 需要宿主工程自行安装 @react-native/jest-preset' +
35
43
  '(它不是本包的依赖):yarn add -D @react-native/jest-preset'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unif/react-native-design",
3
- "version": "0.24.0",
3
+ "version": "0.24.1",
4
4
  "description": "Unif 设计系统:theme + icons + utils + components",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",