Closed
Description
TypeScript Version: 2.8.1-insiders-20180206
Search Terms:
- JSX
- Refactor
- Extract
Code
import * as React from 'react'
class Foo extends React.Component {
render() {
return (
<div>
<b>bold</b>
</div>
)
}
}
Try running extract method on <b>bold</b>
Bug:
The call to getEditsForRefactor
fails:
[Trace - 12:41:58 PM] Sending request: getEditsForRefactor (377). Response expected: yes. Current queue length: 0
Arguments: {
"file": "/Users/matb/projects/san/src/index.tsx",
"startLine": 7,
"startOffset": 13,
"endLine": 7,
"endOffset": 24,
"refactor": "Extract Symbol",
"action": "function_scope_1"
}
[Trace - 12:41:59 PM] Response received: getEditsForRefactor (377). Request took 590 ms. Success: false . Message: Error processing request. Debug Failure. False expression.
Error: Debug Failure. False expression.
at getPos (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:76906:22)
at assignPositionsToNodeArray (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77437:29)
at Object.visitEachChild (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45884:53)
at assignPositionsToNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77425:30)
at visitNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45562:23)
at Object.visitEachChild (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45876:118)
at assignPositionsToNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77425:30)
at visitNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45562:23)
at Object.visitEachChild (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45872:50)
at assignPositionsToNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77425:30)
at visitNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45562:23)
at Object.visitEachChild (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45816:46)
at assignPositionsToNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77425:30)
at Object.visitNodes (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45599:48)
at assignPositionsToNodeArray (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77432:30)
at Object.visitEachChild (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45794:45)
at assignPositionsToNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77425:30)
at visitNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45562:23)
at visitFunctionBody (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45645:23)
at Object.visitEachChild (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:45684:510)
at assignPositionsToNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77425:30)
at getNonformattedText (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77401:52)
at ChangeTracker.getFormattedTextOfNode (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77368:40)
at ChangeTracker.computeNewText (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77362:33)
at /Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77338:118
at Map.forEach (native)
at ChangeTracker.getChanges (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77333:32)
at extractFunctionInScope (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:81665:43)
at getFunctionExtractionAtIndex (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:81404:24)
at Object.getEditsForAction (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:81072:28)
at Object.getEditsForRefactor (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:77709:41)
at Object.getEditsForRefactor (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:83928:32)
at IOSession.Session.getEditsForRefactor (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:90792:59)
at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:89745:61)
at /Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:90985:88
at IOSession.Session.executeWithRequestId (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:90976:28)
at IOSession.Session.executeCommand (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:90985:33)
at IOSession.Session.onMessage (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:91005:35)
at Interface.<anonymous> (/Users/matb/projects/san/node_modules/typescript/lib/tsserver.js:92206:27)
at emitOne (events.js:96:13)
at Interface.emit (events.js:191:7)
at Interface._onLine (readline.js:241:10)
at Interface._normalWrite (readline.js:384:12)
at Socket.ondata (readline.js:101:10)
at emitOne (events.js:96:13)
at Socket.emit (events.js:191:7)
at readableAddChunk (_stream_readable.js:178:18)
at Socket.Readable.push (_stream_readable.js:136:10)
at Pipe.onread (net.js:560:20)
Playground Link:
Related Issues: