This release implements the new auto-accessor syntax from the upcoming JavaScript decorators proposal. The auto-accessor syntax looks like this:
class Foo {
accessor foo;
static accessor bar;
}
new Foo().foo = Foo.bar;
This syntax is not yet a part of JavaScript but it was added to TypeScript in version 4.9. More information about this feature can be found in microsoft/TypeScript#49705. Auto-accessors will be transformed if the target is set to something other than esnext:
// Output (with --target=esnext)
class Foo {
accessor foo;
static accessor bar;
}
new Foo().foo = Foo.bar;
// Output (with --target=es2022)
class Foo {
#foo;
get foo() {
return this.#foo;
}
set foo(_) {
this.#foo = ;
}
static #bar;
static get bar() {
return this.#bar;
}
static set bar() {
this.#bar = _;
}
}
new Foo().foo = Foo.bar;
// Output (with --target=es2021)
var _foo, _bar;
class Foo {
constructor() {
__privateAdd(this, _foo, void 0);
}
get foo() {
return __privateGet(this, _foo);
This release implements the new auto-accessor syntax from the upcoming JavaScript decorators proposal. The auto-accessor syntax looks like this:
class Foo {
accessor foo;
static accessor bar;
}
new Foo().foo = Foo.bar;
This syntax is not yet a part of JavaScript but it was added to TypeScript in version 4.9. More information about this feature can be found in microsoft/TypeScript#49705. Auto-accessors will be transformed if the target is set to something other than esnext:
// Output (with --target=esnext)
class Foo {
accessor foo;
static accessor bar;
}
new Foo().foo = Foo.bar;
// Output (with --target=es2022)
class Foo {
#foo;
get foo() {
return this.#foo;
}
set foo(_) {
this.#foo = ;
}
static #bar;
static get bar() {
return this.#bar;
}
static set bar() {
this.#bar = _;
}
}
new Foo().foo = Foo.bar;
// Output (with --target=es2021)
var _foo, _bar;
class Foo {
constructor() {
__privateAdd(this, _foo, void 0);
}
get foo() {
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps esbuild from 0.17.19 to 0.18.5.
Release notes
Sourced from esbuild's releases.
... (truncated)
Changelog
Sourced from esbuild's changelog.
... (truncated)
Commits
931be1b
publish 0.18.5 to npmd46e491
fix #3009: release notes for auto-accessor support0252c7b
fix decorators on auto-accessors and add a testc12b289
check lowering target for js decorators in ts1ca08b0
implement lowering for auto-accessors8ffb21e
pull out field lowering into helperf52f600
pull out method lowering into helper092f635
move class-related lowering code to another file56698ab
rename private symbols so generating them is safe109c94e
warn about duplicate class membersDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)