19ce3a3fcSopenharmony_ci
29ce3a3fcSopenharmony_ci# TypeScript
39ce3a3fcSopenharmony_ci
49ce3a3fcSopenharmony_ci[![GitHub Actions CI](https://github.com/microsoft/TypeScript/workflows/CI/badge.svg)](https://github.com/microsoft/TypeScript/actions?query=workflow%3ACI)
59ce3a3fcSopenharmony_ci[![Devops Build Status](https://dev.azure.com/typescript/TypeScript/_apis/build/status/Typescript/node10)](https://dev.azure.com/typescript/TypeScript/_build?definitionId=7)
69ce3a3fcSopenharmony_ci[![npm version](https://badge.fury.io/js/typescript.svg)](https://www.npmjs.com/package/typescript)
79ce3a3fcSopenharmony_ci[![Downloads](https://img.shields.io/npm/dm/typescript.svg)](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.