Security News
The Dark Side of Open Source
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
tslib
Advanced tools
Package description
The tslib package is a runtime library for TypeScript that includes helper functions used by TypeScript emitted code when using various advanced features of the language such as async/await, for...of, spread, rest, and decorators. It is intended to be used with TypeScript's `importHelpers` flag to reduce code duplication and save on bundle size.
Async/Await
Provides a helper function for handling asynchronous operations using async/await syntax in environments that do not natively support these features.
__awaiter(this, void 0, void 0, function* () { const result = yield someAsyncFunction(); return result; })
Spread and Rest
Offers a helper function to handle spread and rest operations with arrays, allowing for the combination and copying of arrays.
__spreadArrays([1, 2], [3, 4])
Decorators
Includes helper functions for applying decorators to classes and methods, which are a TypeScript feature for adding annotations and a meta-programming syntax for class declarations and members.
__decorate([decoratorsArray], target, key, desc)
Generators
Provides a helper function for working with generators and the yield keyword, enabling the use of generator functions in environments that do not support them natively.
__generator(this, function (_a) { switch (_a.label) { case 0: _a.trys.push([0, 2, , 3]); return [4 /*yield*/, someGeneratorFunction()]; case 1: _a.sent(); return [3 /*break*/, 3]; case 2: _a.sent(); return [3 /*break*/, 3]; case 3: return [2 /*return*/]; } });
A modular standard library for JavaScript, core-js includes polyfills for ECMAScript features. It is similar to tslib in that it provides functionality to support newer language features on older environments, but it is more comprehensive and includes polyfills for a wider range of ECMAScript features.
Part of the Babel toolchain, babel-runtime is similar to tslib in that it provides a set of helpers for Babel-transpiled code to avoid duplicating helper code across multiple files. It is used in conjunction with Babel's transform-runtime plugin.
A standalone runtime for Regenerator-compiled generator and async functions. It is similar to tslib in providing support for generators and async functions, but it is focused specifically on the transformation of these features by the Regenerator compiler.
Readme
This is a runtime library for TypeScript that contains all of the TypeScript helper functions.
For the latest stable version:
npm install tslib
bower install tslib
jspm install npm:tslib
Set the importHelpers
compiler option on the command line:
tsc --importHelpers file.ts
or in your tsconfig.json:
{
"compilerOptions": {
"importHelpers": true
}
}
You will need to add a paths
mapping for tslib
, e.g. For Bower users:
{
"compilerOptions": {
"module": "amd",
"importHelpers": true,
"baseUrl": "./",
"paths": {
"tslib" : ["bower_components/tslib/tslib.d.ts"]
}
}
}
For JSPM users:
{
"compilerOptions": {
"module": "System",
"importHelpers": true,
"baseUrl": "./",
"paths": {
"tslib" : ["jspm_packages/npm/tslib@1.3.0/tslib.d.ts"]
}
}
}
There are many ways to contribute to TypeScript.
FAQs
Runtime library for TypeScript helper functions
The npm package tslib receives a total of 238,316,136 weekly downloads. As such, tslib popularity was classified as popular.
We found that tslib demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 8 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
Research
Security News
The Socket Research team found this npm package includes code for collecting sensitive developer information, including your operating system username, Git username, and Git email.
Security News
OpenJS is warning of social engineering takeovers targeting open source projects after receiving a credible attempt on the foundation.