Revision 61cb06ce401ea9d7ace005ea1c770517d4497427 authored by Wesley Wigham on 26 September 2019, 21:27:16 UTC, committed by GitHub on 26 September 2019, 21:27:16 UTC
* Allow allowJs and declaration to be used together

This intorduces a new symbol-based declaration emitter - currently this
is only used for JSON and JavaScript, as the output is likely worse than
what the other declaration emitter is capable of. In addition, it is
still incomplete - it does not yet support serializaing namespaces.

* Add tests for various import/export forms, add notes on export as namespace and fix export * from

* Tests & fixes for computed names

* Add test with current @enum tag behavior

* fix declaration emit for jsdoc @enum tags

* Small adjustments to base class serialization to fix bugs in it

* Guard against type/type parameter confusion when using typeParameterToName a bit

* Integrate feedback from PR

* Fix issue with export= declarations visibility calculation and type declaration emit that impacted all forms of declaration emit

* Only make one merged getCommonJsExportEquals symbol for a symbol

* Support preserving type reference directives in js declarations

* Skip declare mdoifiers for namespace members in ambient contexts

* FAKE ALIASES AND NAMESPACES EVERYWHERE

* Dont do namespace sugar when type members contain keyword names

* Fix json source file export modifier under new output

* Such clean nested aliasing, very wow

* Fix lint

* Add visibility errors, reuse type nodes where possible

* Suppoer having correctly named import types in bundled js declaration emit & adjust binding to allow namespaces with aliases to merge when the aliases look to be type-only

* Better support for module.exports = class expression

* Fix discovered crash bug

* Allow export assigned class expressions to be reachable symbols from external declarations

* Add missing semicolon

* Support @enum tag post-merge

* preserve comments on signatures and declarations where possible

* Basic support for js classy functions

* Add example we should do better with

* Prototype assignments make things a bit wonky, but the example from the PR seems OK

* Make a ton of changes to support the new way js classes are bound

* Remove some old comments, fix import and export default names

* Fix bug in object define handling and add tests for object define property declaration emit

* Fix organization nits from PR comments

* Preserve comments from jsdoc declarations on properties and js declaration type aliases

* Merge export declarations with identical specifiers

* Remove completed TODO comment

* Split lint

* Remove now-unused function

* PR feedback

* Add some project references tests, remove some checks from project refs codepaths that are now invalid

* Update project references tests again

* Merge and update project references tests

* Rename case

* Update test to include declaration output

* Remove yet another project refernces redirect extension check

* Update comment

* Add additional import ref to test

* Add shorthand prop to test

* Fix comment text

* Extract var to temp

* Simplify function and add whitespace

* Update project refs test to use incremental edit entry

* Stylistic refactors in the symbol serializer

* Another round of PR feedback, mostly style, small bugfix with constructors, and test showing bug in export assigned class expression name shadowing

* Use x instead of index
1 parent 62a4357
History
File Mode Size
cs
de
es
fr
it
ja
ko
pl
pt-br
ru
tr
zh-cn
zh-tw
.gitattributes -rw-r--r-- 13 bytes
README.md -rw-r--r-- 270 bytes
cancellationToken.js -rw-r--r-- 2.9 KB
diagnosticMessages.generated.json -rw-r--r-- 142.1 KB
lib.d.ts -rw-r--r-- 1001 bytes
lib.dom.d.ts -rw-r--r-- 818.0 KB
lib.dom.iterable.d.ts -rw-r--r-- 13.5 KB
lib.es2015.collection.d.ts -rw-r--r-- 2.8 KB
lib.es2015.core.d.ts -rw-r--r-- 19.4 KB
lib.es2015.d.ts -rw-r--r-- 1.2 KB
lib.es2015.generator.d.ts -rw-r--r-- 2.5 KB
lib.es2015.iterable.d.ts -rw-r--r-- 14.6 KB
lib.es2015.promise.d.ts -rw-r--r-- 7.0 KB
lib.es2015.proxy.d.ts -rw-r--r-- 1.9 KB
lib.es2015.reflect.d.ts -rw-r--r-- 1.9 KB
lib.es2015.symbol.d.ts -rw-r--r-- 1.6 KB
lib.es2015.symbol.wellknown.d.ts -rw-r--r-- 10.0 KB
lib.es2016.array.include.d.ts -rw-r--r-- 4.8 KB
lib.es2016.d.ts -rw-r--r-- 937 bytes
lib.es2016.full.d.ts -rw-r--r-- 1.0 KB
lib.es2017.d.ts -rw-r--r-- 1.1 KB
lib.es2017.full.d.ts -rw-r--r-- 1.0 KB
lib.es2017.intl.d.ts -rw-r--r-- 1.2 KB
lib.es2017.object.d.ts -rw-r--r-- 2.4 KB
lib.es2017.sharedmemory.d.ts -rw-r--r-- 6.0 KB
lib.es2017.string.d.ts -rw-r--r-- 2.3 KB
lib.es2017.typedarrays.d.ts -rw-r--r-- 1.4 KB
lib.es2018.asyncgenerator.d.ts -rw-r--r-- 2.7 KB
lib.es2018.asynciterable.d.ts -rw-r--r-- 1.7 KB
lib.es2018.d.ts -rw-r--r-- 1.1 KB
lib.es2018.full.d.ts -rw-r--r-- 1.0 KB
lib.es2018.intl.d.ts -rw-r--r-- 1.8 KB
lib.es2018.promise.d.ts -rw-r--r-- 1.3 KB
lib.es2018.regexp.d.ts -rw-r--r-- 1.2 KB
lib.es2019.array.d.ts -rw-r--r-- 7.5 KB
lib.es2019.d.ts -rw-r--r-- 1.0 KB
lib.es2019.full.d.ts -rw-r--r-- 1.0 KB
lib.es2019.object.d.ts -rw-r--r-- 1.5 KB
lib.es2019.string.d.ts -rw-r--r-- 1.3 KB
lib.es2019.symbol.d.ts -rw-r--r-- 1002 bytes
lib.es2020.d.ts -rw-r--r-- 979 bytes
lib.es2020.full.d.ts -rw-r--r-- 1.0 KB
lib.es2020.string.d.ts -rw-r--r-- 1.2 KB
lib.es2020.symbol.wellknown.d.ts -rw-r--r-- 1.4 KB
lib.es5.d.ts -rw-r--r-- 198.0 KB
lib.es6.d.ts -rw-r--r-- 1.0 KB
lib.esnext.array.d.ts -rw-r--r-- 7.5 KB
lib.esnext.asynciterable.d.ts -rw-r--r-- 1.5 KB
lib.esnext.bigint.d.ts -rw-r--r-- 30.0 KB
lib.esnext.d.ts -rw-r--r-- 967 bytes
lib.esnext.full.d.ts -rw-r--r-- 1.0 KB
lib.esnext.intl.d.ts -rw-r--r-- 1.2 KB
lib.esnext.symbol.d.ts -rw-r--r-- 1002 bytes
lib.scripthost.d.ts -rw-r--r-- 9.2 KB
lib.webworker.d.ts -rw-r--r-- 244.3 KB
lib.webworker.importscripts.d.ts -rw-r--r-- 1.0 KB
protocol.d.ts -rw-r--r-- 85.4 KB
tsc.js -rw-r--r-- 4.1 MB
tsserver.js -rw-r--r-- 7.5 MB
tsserverlibrary.d.ts -rw-r--r-- 416.7 KB
tsserverlibrary.js -rw-r--r-- 7.5 MB
typesMap.json -rw-r--r-- 16.4 KB
typescript.d.ts -rw-r--r-- 292.5 KB
typescript.js -rw-r--r-- 7.0 MB
typescriptServices.d.ts -rw-r--r-- 292.5 KB
typescriptServices.js -rw-r--r-- 7.0 MB
typingsInstaller.js -rw-r--r-- 5.4 MB
watchGuard.js -rw-r--r-- 1.1 KB

README.md

back to top