Dear all, As we all know, TypeScript would bring a lot of convivence to front-end development by providing a static type system. Unfortunately, most of Wikimedia's front-end codebases do not ship with TypeScript definitions.
To address this problem, recently, I have been working on writing the TypeScript definitions of OOjs and OOUI. Definitions of the former have been published to DefinitelyTyped, which is an official store for TypeScript definitions, and npm (https://www.npmjs.com/package/@types/oojs) while those for the latter are still work in progress. During the development, some challenges arose: 1. Currently I am the only owner of @types/oojs npm package. This means that any contributions to that package are required to be approved by me, and for contributions from myself they are required to be approved by a DefinitelyTyped maintainer, which could be a slow procedure. I believe it would help a lot if maintainers of OOjs/OOUI or other Wikimedians would like to be another owner, which also reduces the bus factor. 2. The TypeScript compiler cannot recognize OO.inheritClass() calls and extend the class in the type system correctly, thus you need to use type assertions to set up the type correctly. This would bring inconvenience for classes like OO.ui.Dialog which heavily use inheritance. I am writing to seek solutions to these problems. Best regards, diskdance _______________________________________________ Wikitech-l mailing list -- wikitech-l@lists.wikimedia.org To unsubscribe send an email to wikitech-l-le...@lists.wikimedia.org https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/