react-native-safe-area-context: Property specifiers expected type of array but got null

I launch application one day and got this error while bundling:

[Fri Jun 11 2021 11:45:38.105]  BUNDLE  ./index.android.js 

error: node_modules/react-native-safe-area-context/src/SafeArea.types.ts: /home/gnome/src/urbest/z-frontend/node_modules/react-native-safe-area-context/src/SafeArea.types.ts: Property specifiers expected type of array but got null

I can’t determinate what went wrong. May be I change something in usage of SafeAreaView so it got null where should be array or something else.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 3
  • Comments: 28

Most upvoted comments

I solved it by removing yarn.lock and package-lock.json and then running yarn install

Babel maintainer here. Does anyone have a complete stack trace or a repository I can clone and run a build command to reproduce the error?

I had two entries for @babel/types in my yarn.lock file which resolved to 7.6.1 and 7.15.0. Instead of manually modifying my lock file, I ran npx yarn-deduplicate to handle the multiple entries. Afterward the only entry was for 7.15.0 which resolved this error.

Thanks, I’m trying to reproduce the bug using that stack trace 👍

This seems to be a Babel bug, not caused by this project.

@nicolo-ribaudo We got it!

transform[stderr]: Trace: ERROR HERE!
transform[stderr]:     at validate (/home/gnome/src/urbest/z-frontend/node_modules/@babel/types/lib/definitions/utils.js:165:15)
transform[stderr]:     at Object.validate (/home/gnome/src/urbest/z-frontend/node_modules/@babel/types/lib/definitions/utils.js:203:7)
transform[stderr]:     at validateField (/home/gnome/src/urbest/z-frontend/node_modules/@babel/types/lib/validators/validate.js:22:9)
transform[stderr]:     at validate (/home/gnome/src/urbest/z-frontend/node_modules/@babel/types/lib/validators/validate.js:16:3)
transform[stderr]:     at builder (/home/gnome/src/urbest/z-frontend/node_modules/@babel/types/lib/builders/builder.js:46:27)
transform[stderr]:     at Object.ExportNamedDeclaration (/home/gnome/src/urbest/z-frontend/node_modules/@babel/types/lib/builders/generated/index.js:477:31)
transform[stderr]:     at PluginPass.exit (/home/gnome/src/urbest/z-frontend/node_modules/@babel/plugin-transform-typescript/lib/index.js:270:52)
transform[stderr]:     at newFn (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/visitors.js:171:21)
transform[stderr]:     at NodePath._call (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/context.js:53:20)
transform[stderr]:     at NodePath.call (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/context.js:40:17)
transform[stderr]:     at NodePath.visit (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/context.js:99:8)
transform[stderr]:     at TraversalContext.visitQueue (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js:110:16)
transform[stderr]:     at TraversalContext.visitSingle (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js:79:19)
transform[stderr]:     at TraversalContext.visit (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js:138:19)
transform[stderr]:     at Function.traverse.node (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/index.js:76:17)
transform[stderr]:     at traverse (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/node_modules/@babel/traverse/lib/index.js:56:12)
transform[stderr]:     at transformFile (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/lib/transformation/index.js:105:29)
transform[stderr]:     at transformFile.next (<anonymous>)
transform[stderr]:     at run (/home/gnome/src/urbest/z-frontend/node_modules/@babel/core/lib/transformation/index.js:33:12)
transform[stderr]:     at run.next (<anonymous>)
transform[stderr]:     at /home/gnome/src/urbest/z-frontend/node_modules/@babel/core/lib/transform-ast.js:26:41
transform[stderr]:     at Generator.next (<anonymous>)
transform[stderr]:     at evaluateSync (/home/gnome/src/urbest/z-frontend/node_modules/gensync/index.js:251:28)
transform[stderr]:     at sync (/home/gnome/src/urbest/z-frontend/node_modules/gensync/index.js:89:14)
transform[stderr]:     at Object.transform (/home/gnome/src/urbest/z-frontend/node_modules/metro-react-native-babel-transformer/src/index.js:251:20)
transform[stderr]:     at /home/gnome/src/urbest/z-frontend/node_modules/metro/src/JSTransformer/worker.js:242:31
transform[stderr]:     at Generator.next (<anonymous>)
transform[stderr]:     at asyncGeneratorStep (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/JSTransformer/worker.js:75:24)
transform[stderr]:     at _next (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/JSTransformer/worker.js:95:9)
transform[stderr]:     at /home/gnome/src/urbest/z-frontend/node_modules/metro/src/JSTransformer/worker.js:100:7
transform[stderr]:     at new Promise (<anonymous>)
transform[stderr]:     at /home/gnome/src/urbest/z-frontend/node_modules/metro/src/JSTransformer/worker.js:92:12
transform[stderr]:     at JsTransformer.transform (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/JSTransformer/worker.js:401:7)
transform[stderr]:     at Object.<anonymous> (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/DeltaBundler/Worker.js:102:38)
transform[stderr]:     at Generator.next (<anonymous>)
transform[stderr]:     at asyncGeneratorStep (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/DeltaBundler/Worker.js:14:24)
transform[stderr]:     at _next (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/DeltaBundler/Worker.js:34:9)
transform[stderr]:     at /home/gnome/src/urbest/z-frontend/node_modules/metro/src/DeltaBundler/Worker.js:39:7
transform[stderr]:     at new Promise (<anonymous>)
transform[stderr]:     at Object.<anonymous> (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/DeltaBundler/Worker.js:31:12)
transform[stderr]:     at Object.transform (/home/gnome/src/urbest/z-frontend/node_modules/metro/src/DeltaBundler/Worker.js:79:21)
transform[stderr]:     at execFunction (/home/gnome/src/urbest/z-frontend/node_modules/metro/node_modules/jest-worker/build/workers/processChild.js:155:17)
transform[stderr]:     at execHelper (/home/gnome/src/urbest/z-frontend/node_modules/metro/node_modules/jest-worker/build/workers/processChild.js:139:5)
transform[stderr]:     at execMethod (/home/gnome/src/urbest/z-frontend/node_modules/metro/node_modules/jest-worker/build/workers/processChild.js:143:5)
transform[stderr]:     at process.<anonymous> (/home/gnome/src/urbest/z-frontend/node_modules/metro/node_modules/jest-worker/build/workers/processChild.js:64:7)
transform[stderr]:     at process.emit (events.js:315:20)
transform[stderr]:     at emit (internal/child_process.js:903:12)
transform[stderr]:     at processTicksAndRejections (internal/process/task_queues.js:81:21)