* Treat `...` in jsdoc type as creating a synthetic rest parameter -- not as an array type
* Change type parsing so `...T[]` parses as `...(T[])` and not `(...T)[]`
* Replace the last parameter with ...args, and make access to it potentially undefined
* Code review
* Update JSX intrinsic element test to match babel’s
* Update baseline
* Move regex out of isIntrinsicJsxName
* Switch to non-regex intrinsic name test
* add types for escape and unescape methods #18813
although the issue is marked working as expected, it is important to mention that most major browsers maintain support for escape and unescape, and some javascript codebases moving to typescript may have escape and unescape in them. They are valid JavaScript, and thus they should be included in the global definition.
* add escape and unescape types to lib in tests
* update tests to turn CI green
* Break out of speculative parsing on bad parameter initializer
* Remove uses of 'finally'
* give up -> stop
* Do without exceptions
* Remove `resetAfterSpeculation`
* Use Fail and FailList objects
* Remove `inSpeculation` parameter to parseDelimitedList
* Don't use `createNodeArray`, it's not always in scope
* Move Fail and FailList inside initializeState
* More code review
* More code review
If there is a test.json in the directory, it expects to find a
submodule in the directory. The submodule should have the same name as
the directory itself. test.json contains a list of global types that
need to be available, or the empty list if none.
* Consider the commonjs module indicator as an indicator that something is effectively an external module
* Only use commonjs module indicator when targeting commonjs
so that error message refers to prop name instead of param name.
Changed getter errors for similar case so they also refer to prop name.
Fixed bug where static getters wouldn't output their specific error.
Fixes#1976
* import fix: suggest import..require where supported if synthetic defaults are unavailable
* Add tests for import..require fix when targeting CommonJS, AMD, and UMD modules
* fix failing tests
* improve import code fixes for UMD modules
- use default import under --allowSyntheticDefaultImports
- import..require support
- make make quick fix info match resulting import
- make diagnostics
* Address PR feedback:
- extract test for synethetic default imports into getAllowSyntheticDefaultImports in core.ts
- use getAllowSyntheticDefaultImports in checker.ts and importFixes.ts
- move compilerOptions to top level destructuring
* add tests
* remove `import =` quick fix and supporting code.
* update feature tests
* remove errant whitespace
* Consistently use "JSX Attribute" completion kind
* Update tests and fix bug
* Fix bug: In a JsxOpeningElement, if at an Identifier we are not at an attribute but at the tag itself.
If at a GreaterThanToken, we are about to fill in an attribute.