Skip to content

[Bug]: TypeError: : Cannot read properties of undefined (reading 'value') in create-class-features-plugin #16752

@steverep

Description

@steverep

💻

  • Would you like to work on a fix?

How are you using Babel?

babel-loader (webpack)

Input code

Code generating the error is:

https://github.com/home-assistant/frontend/blob/ef1f9b371dcd677b1dd181495579d6afa6d9a8c3/src/components/entity/ha-state-label-badge.ts

Configuration file name

No response

Configuration

I'm assuming the stack trace will be enough. I'll amend to add the full config if needed.

Current and expected behavior

When @babel/helper-create-class-features-plugin is upgraded from 7.24.8 to 7.25.0, we get the following error when transpiling the linked file above:

2024-08-19T01:05:18.0201037Z   Module build failed (from ./node_modules/babel-loader/lib/index.js):
2024-08-19T01:05:18.0203079Z   TypeError: /home/runner/work/frontend/frontend/src/components/entity/ha-state-label-badge.ts: Cannot read properties of undefined (reading 'value')
2024-08-19T01:05:18.0206329Z       at getKey (/home/runner/work/frontend/frontend/node_modules/@babel/helper-create-class-features-plugin/lib/decorators-2018-09.js:39:54)
2024-08-19T01:05:18.0211645Z       at extractElementDescriptor (/home/runner/work/frontend/frontend/node_modules/@babel/helper-create-class-features-plugin/lib/decorators-2018-09.js:73:238)
2024-08-19T01:05:18.0214268Z       at /home/runner/work/frontend/frontend/node_modules/@babel/helper-create-class-features-plugin/lib/decorators-2018-09.js:106:158
2024-08-19T01:05:18.0215508Z       at Array.map (<anonymous>)
2024-08-19T01:05:18.0217125Z       at buildDecoratedClass (/home/runner/work/frontend/frontend/node_modules/@babel/helper-create-class-features-plugin/lib/decorators-2018-09.js:106:146)
2024-08-19T01:05:18.0219499Z       at PluginPass.Class (/home/runner/work/frontend/frontend/node_modules/@babel/helper-create-class-features-plugin/lib/index.js:192:54)
2024-08-19T01:05:18.0221292Z       at newFn (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/visitors.js:172:14)
2024-08-19T01:05:18.0222694Z       at NodePath._call (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/path/context.js:49:20)
2024-08-19T01:05:18.0223775Z       at NodePath.call (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/path/context.js:39:18)
2024-08-19T01:05:18.0224816Z       at NodePath.visit (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/path/context.js:85:31)
2024-08-19T01:05:18.0226322Z       at TraversalContext.visitQueue (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:89:16)
2024-08-19T01:05:18.0227439Z       at TraversalContext.visitSingle (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:65:19)
2024-08-19T01:05:18.0228534Z       at TraversalContext.visit (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:112:19)
2024-08-19T01:05:18.0229684Z       at traverseNode (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/traverse-node.js:22:17)
2024-08-19T01:05:18.0230722Z       at NodePath.visit (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/path/context.js:91:52)
2024-08-19T01:05:18.0232007Z       at TraversalContext.visitQueue (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:89:16)
2024-08-19T01:05:18.0233143Z       at TraversalContext.visitMultiple (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:61:17)
2024-08-19T01:05:18.0234241Z       at TraversalContext.visit (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:110:19)
2024-08-19T01:05:18.0235355Z       at traverseNode (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/traverse-node.js:22:17)
2024-08-19T01:05:18.0236383Z       at NodePath.visit (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/path/context.js:91:52)
2024-08-19T01:05:18.0237501Z       at TraversalContext.visitQueue (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:89:16)
2024-08-19T01:05:18.0238616Z       at TraversalContext.visitSingle (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:65:19)
2024-08-19T01:05:18.0239708Z       at TraversalContext.visit (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/context.js:112:19)
2024-08-19T01:05:18.0240833Z       at traverseNode (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/traverse-node.js:22:17)
2024-08-19T01:05:18.0241806Z       at traverse (/home/runner/work/frontend/frontend/node_modules/@babel/traverse/lib/index.js:53:34)
2024-08-19T01:05:18.0242793Z       at transformFile (/home/runner/work/frontend/frontend/node_modules/@babel/core/lib/transformation/index.js:82:31)
2024-08-19T01:05:18.0243511Z       at transformFile.next (<anonymous>)
2024-08-19T01:05:18.0244203Z       at run (/home/runner/work/frontend/frontend/node_modules/@babel/core/lib/transformation/index.js:24:12)
2024-08-19T01:05:18.0244853Z       at run.next (<anonymous>)
2024-08-19T01:05:18.0245477Z       at transform (/home/runner/work/frontend/frontend/node_modules/@babel/core/lib/transform.js:22:33)
2024-08-19T01:05:18.0246110Z       at transform.next (<anonymous>)
2024-08-19T01:05:18.0246882Z       at step (/home/runner/work/frontend/frontend/node_modules/gensync/index.js:261:32)
2024-08-19T01:05:18.0247683Z       at /home/runner/work/frontend/frontend/node_modules/gensync/index.js:273:13
2024-08-19T01:05:18.0248550Z       at async.call.result.err.err (/home/runner/work/frontend/frontend/node_modules/gensync/index.js:223:11)
2024-08-19T01:05:18.0249383Z       at /home/runner/work/frontend/frontend/node_modules/gensync/index.js:189:28
2024-08-19T01:05:18.0250291Z       at /home/runner/work/frontend/frontend/node_modules/@babel/core/lib/gensync-utils/async.js:67:7
2024-08-19T01:05:18.0251113Z       at /home/runner/work/frontend/frontend/node_modules/gensync/index.js:113:33
2024-08-19T01:05:18.0251860Z       at step (/home/runner/work/frontend/frontend/node_modules/gensync/index.js:287:14)
2024-08-19T01:05:18.0252613Z       at /home/runner/work/frontend/frontend/node_modules/gensync/index.js:273:13
2024-08-19T01:05:18.0253483Z       at async.call.result.err.err (/home/runner/work/frontend/frontend/node_modules/gensync/index.js:223:11)

Environment

Babel core 7.25, node v20, yarn 4.4

Possible solution

No response

Additional context

Pull request with failing CI is home-assistant/frontend#21734. Note the CI passes prior to this so there's just the Babel changes in the lock file to blame.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Spec: Decoratorsi: regressionoutdatedA closed issue/PR that is archived due to age. Recommended to make a new issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions