19ce3a3fcSopenharmony_ci 29ce3a3fcSopenharmony_ci# TypeScript 39ce3a3fcSopenharmony_ci 49ce3a3fcSopenharmony_ci[](https://github.com/microsoft/TypeScript/actions?query=workflow%3ACI) 59ce3a3fcSopenharmony_ci[](https://dev.azure.com/typescript/TypeScript/_build?definitionId=7) 69ce3a3fcSopenharmony_ci[](https://www.npmjs.com/package/typescript) 79ce3a3fcSopenharmony_ci[](https://www.npmjs.com/package/typescript) 89ce3a3fcSopenharmony_ci 99ce3a3fcSopenharmony_ci[TypeScript](https://www.typescriptlang.org/) is a language for application-scale JavaScript. TypeScript adds optional types to JavaScript that support tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript. Try it out at the [playground](https://www.typescriptlang.org/play/), and stay up to date via [our blog](https://blogs.msdn.microsoft.com/typescript) and [Twitter account](https://twitter.com/typescript). 109ce3a3fcSopenharmony_ci 119ce3a3fcSopenharmony_ciFind others who are using TypeScript at [our community page](https://www.typescriptlang.org/community/). 129ce3a3fcSopenharmony_ci 139ce3a3fcSopenharmony_ci## Installing 149ce3a3fcSopenharmony_ci 159ce3a3fcSopenharmony_ciFor the latest stable version: 169ce3a3fcSopenharmony_ci 179ce3a3fcSopenharmony_ci```bash 189ce3a3fcSopenharmony_cinpm install -g typescript 199ce3a3fcSopenharmony_ci``` 209ce3a3fcSopenharmony_ci 219ce3a3fcSopenharmony_ciFor our nightly builds: 229ce3a3fcSopenharmony_ci 239ce3a3fcSopenharmony_ci```bash 249ce3a3fcSopenharmony_cinpm install -g typescript@next 259ce3a3fcSopenharmony_ci``` 269ce3a3fcSopenharmony_ci 279ce3a3fcSopenharmony_ci## Contribute 289ce3a3fcSopenharmony_ci 299ce3a3fcSopenharmony_ciThere are many ways to [contribute](https://github.com/microsoft/TypeScript/blob/main/CONTRIBUTING.md) to TypeScript. 309ce3a3fcSopenharmony_ci* [Submit bugs](https://github.com/microsoft/TypeScript/issues) and help us verify fixes as they are checked in. 319ce3a3fcSopenharmony_ci* Review the [source code changes](https://github.com/microsoft/TypeScript/pulls). 329ce3a3fcSopenharmony_ci* Engage with other TypeScript users and developers on [StackOverflow](https://stackoverflow.com/questions/tagged/typescript). 339ce3a3fcSopenharmony_ci* Help each other in the [TypeScript Community Discord](https://discord.gg/typescript). 349ce3a3fcSopenharmony_ci* Join the [#typescript](https://twitter.com/search?q=%23TypeScript) discussion on Twitter. 359ce3a3fcSopenharmony_ci* [Contribute bug fixes](https://github.com/microsoft/TypeScript/blob/main/CONTRIBUTING.md). 369ce3a3fcSopenharmony_ci* Read the archived language specification ([docx](https://github.com/microsoft/TypeScript/blob/main/doc/TypeScript%20Language%20Specification%20-%20ARCHIVED.docx?raw=true), 379ce3a3fcSopenharmony_ci [pdf](https://github.com/microsoft/TypeScript/blob/main/doc/TypeScript%20Language%20Specification%20-%20ARCHIVED.pdf?raw=true), [md](https://github.com/microsoft/TypeScript/blob/main/doc/spec-ARCHIVED.md)). 389ce3a3fcSopenharmony_ci 399ce3a3fcSopenharmony_ciThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see 409ce3a3fcSopenharmony_cithe [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) 419ce3a3fcSopenharmony_ciwith any additional questions or comments. 429ce3a3fcSopenharmony_ci 439ce3a3fcSopenharmony_ci## Documentation 449ce3a3fcSopenharmony_ci 459ce3a3fcSopenharmony_ci* [TypeScript in 5 minutes](https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html) 469ce3a3fcSopenharmony_ci* [Programming handbook](https://www.typescriptlang.org/docs/handbook/intro.html) 479ce3a3fcSopenharmony_ci* [Homepage](https://www.typescriptlang.org/) 489ce3a3fcSopenharmony_ci 499ce3a3fcSopenharmony_ci## Roadmap 509ce3a3fcSopenharmony_ci 519ce3a3fcSopenharmony_ciFor details on our planned features and future direction please refer to our [roadmap](https://github.com/microsoft/TypeScript/wiki/Roadmap). 529ce3a3fcSopenharmony_ci 539ce3a3fcSopenharmony_ci## Changes 549ce3a3fcSopenharmony_ci 559ce3a3fcSopenharmony_ciWe made the following code modifications to support the ETS development paradigm. 569ce3a3fcSopenharmony_ci 579ce3a3fcSopenharmony_ci### October 2021 589ce3a3fcSopenharmony_ci 599ce3a3fcSopenharmony_ci* [x] Support custom component `struct` syntax, and add `StructDeclaration` and `EtsComponentExpression` node type. 609ce3a3fcSopenharmony_ci 619ce3a3fcSopenharmony_ci### November 2021 629ce3a3fcSopenharmony_ci 639ce3a3fcSopenharmony_ci* [x] Support `gotoDefinition` for custom component name and arguments. 649ce3a3fcSopenharmony_ci* [x] Support completion of lifecycle for `StructDeclaration` type. 659ce3a3fcSopenharmony_ci* [x] Support `@Builder` decorator for function and method. 669ce3a3fcSopenharmony_ci 679ce3a3fcSopenharmony_ci### January 2022 689ce3a3fcSopenharmony_ci 699ce3a3fcSopenharmony_ci* [x] Optimize eTS language support. 709ce3a3fcSopenharmony_ci* [x] Support `@BuilderParam` decorator and custom container lambda syntax. 719ce3a3fcSopenharmony_ci* [x] Add jsDoc and displayParts info in `getCompletionAtPosition` interface. 729ce3a3fcSopenharmony_ci* [x] Support eTS language ScriptKind and Extension. 739ce3a3fcSopenharmony_ci* [x] Add `PropertyAccessExpressionConditionCheck` for eTS. 749ce3a3fcSopenharmony_ci 759ce3a3fcSopenharmony_ci### February 2022 769ce3a3fcSopenharmony_ci 779ce3a3fcSopenharmony_ci* [x] Support `@Styles` decorator and related syntax. 789ce3a3fcSopenharmony_ci* [x] Add check for `struct` name contain reserved tag name. 799ce3a3fcSopenharmony_ci* [x] Support `stateStyles` property. 809ce3a3fcSopenharmony_ci* [x] Performance optimization for eTS completion. 819ce3a3fcSopenharmony_ci* [x] Support `@Extend` and `@Styles` decorators for function.