This is a runtime library for TypeScript that contains all of the TypeScript helper functions.
This library is primarily used by the --importHelpers
flag in TypeScript. When using --importHelpers
, a module
that uses helper functions like __extends
and
__assign
in the following emitted file:
var __assign = (this && this.__assign) || Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
= arguments[i];
s for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
= s[p];
t[p]
}return t;
;
}.x = {};
exports.y = __assign({}, exports.x); exports
will instead be emitted as something like the following:
var tslib_1 = require("tslib");
.x = {};
exports.y = tslib_1.__assign({}, exports.x); exports
Because this can avoid duplicate declarations of things like
__extends
, __assign
, etc., this means
delivering users smaller files on average, as well as less runtime
overhead. For optimized bundles with TypeScript, you should absolutely
consider using tslib
and --importHelpers
.
For the latest stable version, run:
# TypeScript 3.9.2 or later
npm install tslib
# TypeScript 3.8.4 or earlier
npm install tslib@^1
# TypeScript 2.3.2 or earlier
npm install tslib@1.6.1
# TypeScript 3.9.2 or later
yarn add tslib
# TypeScript 3.8.4 or earlier
yarn add tslib@^1
# TypeScript 2.3.2 or earlier
yarn add tslib@1.6.1
# TypeScript 3.9.2 or later
bower install tslib
# TypeScript 3.8.4 or earlier
bower install tslib@^1
# TypeScript 2.3.2 or earlier
bower install tslib@1.6.1
# TypeScript 3.9.2 or later
jspm install tslib
# TypeScript 3.8.4 or earlier
jspm install tslib@^1
# TypeScript 2.3.2 or earlier
jspm install tslib@1.6.1
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@2.x.y/tslib.d.ts"]
}
}
}
package.json
and bower.json
git tag [version]
git push --tags
Done.
There are many ways to contribute to TypeScript.