diff --git a/changelog_unreleased/typescript/12896.md b/changelog_unreleased/typescript/12896.md index d1b07bd0d..0a3d95ee6 100644 --- a/changelog_unreleased/typescript/12896.md +++ b/changelog_unreleased/typescript/12896.md @@ -1,4 +1,4 @@ -#### [HIGHLIGHT]Support TypeScript 4.7 (#12896, #12897, #12898, #12900, #12921, #12924 by @sosukesuzuki) +#### [HIGHLIGHT]Support TypeScript 4.7 (#12896, #12897, #12898, #12900, #12921, #12924, #12959 by @sosukesuzuki) Support [TypeScript 4.7](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7) new features! diff --git a/changelog_unreleased/vue/12895.md b/changelog_unreleased/vue/12895.md new file mode 100644 index 000000000..8a4eeaff3 --- /dev/null +++ b/changelog_unreleased/vue/12895.md @@ -0,0 +1,19 @@ +#### Avoid printing attribute per line in Vue SFC blocks (#12895 by @sosukesuzuki) + + +```vue + + + + + + + + +``` diff --git a/package.json b/package.json index f4e5154d4..855ea4ef7 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "@babel/parser": "7.18.4", "@glimmer/syntax": "0.84.2", "@iarna/toml": "2.2.5", - "@typescript-eslint/typescript-estree": "5.26.0", + "@typescript-eslint/typescript-estree": "5.27.0", "acorn": "8.7.1", "acorn-jsx": "5.3.2", "angular-estree-parser": "2.5.0", @@ -103,7 +103,7 @@ "cross-env": "7.0.3", "cspell": "6.0.0", "enquirer": "2.3.6", - "esbuild": "0.14.41", + "esbuild": "0.14.42", "esbuild-visualizer": "0.3.1", "eslint": "8.17.0", "eslint-config-prettier": "8.5.0", diff --git a/scripts/build/bundler.mjs b/scripts/build/bundler.mjs index 686303b62..ae622db7d 100644 --- a/scripts/build/bundler.mjs +++ b/scripts/build/bundler.mjs @@ -201,7 +201,9 @@ function* getEsbuildOptions(bundle, buildOptions) { }), buildOptions.reports && esbuildPluginVisualizer({ formats: buildOptions.reports }), - esbuildPluginThrowWarnings(), + esbuildPluginThrowWarnings({ + allowDynamicRequire: bundle.target === "node", + }), ].filter(Boolean), minify: shouldMinify, legalComments: "none", diff --git a/scripts/build/esbuild-plugins/throw-warnings.mjs b/scripts/build/esbuild-plugins/throw-warnings.mjs index 7148d1f1c..85c5a47ba 100644 --- a/scripts/build/esbuild-plugins/throw-warnings.mjs +++ b/scripts/build/esbuild-plugins/throw-warnings.mjs @@ -1,19 +1,71 @@ -const ignoredWarnings = new Set([ - // Duplicated case clause - "This case clause will never be evaluated because it duplicates an earlier case clause", -]); +// https://github.com/evanw/esbuild/commit/1916318ca7f803253dbdae0942af1c9a6d3a6910 +const ESBUILD_MESSAGE_IDS = [ + "assign-to-constant", + "call-import-namespace", + "commonjs-variable-in-esm", + "delete-super-property", + "direct-eval", + "duplicate-case", + "duplicate-object-key", + "empty-import-meta", + "equals-nan", + "equals-negative-zero", + "equals-new-object", + "html-comment-in-js", + "impossible-typeof", + "private-name-will-throw", + "semicolon-after-return", + "suspicious-boolean-not", + "this-is-undefined-in-esm", + "unsupported-dynamic-import", + "unsupported-jsx-comment", + "unsupported-regexp", + "unsupported-require-call", + "different-path-case", + "ignored-bare-import", + "ignored-dynamic-import", + "import-is-undefined", + "package.json", + "require-resolve-not-external", + "tsconfig.json", +]; +const logOverride = Object.fromEntries( + ESBUILD_MESSAGE_IDS.map((id) => [id, "warning"]) +); -export default function esbuildPluginThrowWarnings() { +export default function esbuildPluginThrowWarnings({ allowDynamicRequire }) { return { name: "throw-warnings", setup(build) { + const options = build.initialOptions; + options.logOverride = { + ...logOverride, + ...options.logOverride, + }; + build.onEnd((result) => { if (result.errors.length > 0) { return; } for (const warning of result.warnings) { - if (ignoredWarnings.has(warning.text)) { + if ( + allowDynamicRequire && + warning.text === + 'This call to "require" will not be bundled because the argument is not a string literal' + ) { + continue; + } + + if ( + [ + "node_modules/flow-parser/flow_parser.js", + "dist/_parser-flow.js.umd.js", + "dist/_parser-flow.js.esm.mjs", + ].includes(warning.location.file) && + warning.text === + "This case clause will never be evaluated because it duplicates an earlier case clause" + ) { continue; } diff --git a/scripts/release/__tests__/steps/publish-to-npm.spec.js b/scripts/release/__tests__/steps/publish-to-npm.spec.js index d663e0e7e..ced6df5ef 100644 --- a/scripts/release/__tests__/steps/publish-to-npm.spec.js +++ b/scripts/release/__tests__/steps/publish-to-npm.spec.js @@ -1,4 +1,4 @@ -import { getReleaseUrl } from "../../steps/publish-to-npm.js"; +import { getReleaseUrl } from "../../steps/show-instructions-after-npm-publish.js"; describe("publish-to-npm", () => { describe("getReleaseUrl", () => { diff --git a/scripts/release/__tests__/steps/version-check.spec.js b/scripts/release/__tests__/steps/version-check.spec.js new file mode 100644 index 000000000..478f3a532 --- /dev/null +++ b/scripts/release/__tests__/steps/version-check.spec.js @@ -0,0 +1,15 @@ +import { isVersionReleased } from "../../steps/wait-for-bot-release.js"; + +describe("isVersionReleased", () => { + test("returns true for existing version", async () => { + const result = await isVersionReleased("1.0.0"); + expect(result).toBe(true); + }); + test("rejects true for non-existing version", async () => { + await expect( + isVersionReleased("999.0.0") + ).rejects.toThrowErrorMatchingInlineSnapshot( + '"prettier@999.0.0 doesn\'t exit."' + ); + }); +}); diff --git a/scripts/release/release.js b/scripts/release/release.js index 56bec2599..9f78aeda8 100644 --- a/scripts/release/release.js +++ b/scripts/release/release.js @@ -15,8 +15,9 @@ async function run() { const params = minimist(process.argv.slice(2), { string: ["version"], - boolean: ["dry"], + boolean: ["dry", "manual"], alias: { v: "version" }, + default: { manual: false }, }); const { stdout: previousVersion } = await runGit([ @@ -39,16 +40,21 @@ async function run() { "./steps/validate-new-version.js", "./steps/check-git-status.js", "./steps/install-dependencies.js", - "./steps/run-tests.js", + params.manual && "./steps/run-tests.js", "./steps/update-version.js", - "./steps/generate-bundles.js", + params.manual && "./steps/generate-bundles.js", "./steps/update-changelog.js", "./steps/push-to-git.js", - "./steps/publish-to-npm.js", + params.manual + ? "./steps/publish-to-npm.js" + : "./steps/wait-for-bot-release.js", + "./steps/show-instructions-after-npm-publish.js", "./steps/update-dependents-count.js", "./steps/bump-prettier.js", "./steps/post-publish-steps.js", - ].map((step) => importDefault(step)) + ] + .filter(Boolean) + .map((step) => importDefault(step)) ); try { diff --git a/scripts/release/steps/publish-to-npm.js b/scripts/release/steps/publish-to-npm.js index 59fbd90d2..775c0e439 100644 --- a/scripts/release/steps/publish-to-npm.js +++ b/scripts/release/steps/publish-to-npm.js @@ -1,16 +1,6 @@ -import chalk from "chalk"; -import outdent from "outdent"; import { execa } from "execa"; -import semver from "semver"; import enquirer from "enquirer"; -import { - getBlogPostInfo, - getChangelogContent, - logPromise, - waitForEnter, -} from "../utils.js"; - -const outdentString = outdent.string; +import { logPromise } from "../utils.js"; /** * Retry "npm publish" when to enter OTP is failed. @@ -37,53 +27,10 @@ async function retryNpmPublish() { } } -export function getReleaseUrl(version, previousVersion) { - const semverDiff = semver.diff(version, previousVersion); - const isPatch = semverDiff === "patch"; - let body; - if (isPatch) { - const urlToChangelog = - "https://github.com/prettier/prettier/blob/main/CHANGELOG.md#" + - version.split(".").join(""); - body = `🔗 [Changelog](${urlToChangelog})`; - } else { - const blogPostInfo = getBlogPostInfo(version); - body = getChangelogContent({ - version, - previousVersion, - body: `🔗 [Release note](https://prettier.io/${blogPostInfo.path})`, - }); - } - body = encodeURIComponent(body); - return `https://github.com/prettier/prettier/releases/new?tag=${version}&title=${version}&body=${body}`; -} - -export default async function publishToNpm({ dry, version, previousVersion }) { +export default async function publishToNpm({ dry }) { if (dry) { return; } await logPromise("Publishing to npm", retryNpmPublish()); - - const releaseUrl = getReleaseUrl(version, previousVersion); - - console.log( - outdentString(chalk` - {green.bold Prettier ${version} published!} - - {yellow.bold Some manual steps are necessary.} - - {bold.underline Create a GitHub Release} - - Go to {cyan.underline ${releaseUrl}} - - Press {bgGreen.black Publish release } - - {bold.underline Test the new release} - - In a new session, run {yellow npm i prettier@latest} in another directory - - Test the API and CLI - - After that, we can proceed to bump this repo's Prettier dependency. - Press ENTER to continue. - `) - ); - await waitForEnter(); } diff --git a/scripts/release/steps/show-instructions-after-npm-publish.js b/scripts/release/steps/show-instructions-after-npm-publish.js new file mode 100644 index 000000000..5a015ca5f --- /dev/null +++ b/scripts/release/steps/show-instructions-after-npm-publish.js @@ -0,0 +1,58 @@ +import chalk from "chalk"; +import outdent from "outdent"; +import semver from "semver"; +import { + getBlogPostInfo, + getChangelogContent, + waitForEnter, +} from "../utils.js"; + +const outdentString = outdent.string; + +export function getReleaseUrl(version, previousVersion) { + const semverDiff = semver.diff(version, previousVersion); + const isPatch = semverDiff === "patch"; + let body; + if (isPatch) { + const urlToChangelog = + "https://github.com/prettier/prettier/blob/main/CHANGELOG.md#" + + version.split(".").join(""); + body = `🔗 [Changelog](${urlToChangelog})`; + } else { + const blogPostInfo = getBlogPostInfo(version); + body = getChangelogContent({ + version, + previousVersion, + body: `🔗 [Release note](https://prettier.io/${blogPostInfo.path})`, + }); + } + body = encodeURIComponent(body); + return `https://github.com/prettier/prettier/releases/new?tag=${version}&title=${version}&body=${body}`; +} + +export default async function showInstructionsAfterNpmPublish({ + version, + previousVersion, +}) { + const releaseUrl = getReleaseUrl(version, previousVersion); + + console.log( + outdentString(chalk` + {green.bold Prettier ${version} published!} + + {yellow.bold Some manual steps are necessary.} + + {bold.underline Create a GitHub Release} + - Go to {cyan.underline ${releaseUrl}} + - Press {bgGreen.black Publish release } + + {bold.underline Test the new release} + - In a new session, run {yellow npm i prettier@latest} in another directory + - Test the API and CLI + + After that, we can proceed to bump this repo's Prettier dependency. + Press ENTER to continue. + `) + ); + await waitForEnter(); +} diff --git a/scripts/release/steps/wait-for-bot-release.js b/scripts/release/steps/wait-for-bot-release.js new file mode 100644 index 000000000..c17a97338 --- /dev/null +++ b/scripts/release/steps/wait-for-bot-release.js @@ -0,0 +1,78 @@ +import chalk from "chalk"; +import outdent from "outdent"; +import fetch from "node-fetch"; +import { waitForEnter, logPromise } from "../utils.js"; + +const outdentString = outdent.string; + +export async function isVersionReleased(version) { + const response = await fetch("https://registry.npmjs.org/prettier/"); + const result = await response.json(); + const versionExists = version in result.time; + + if (!versionExists) { + throw new Error(`prettier@${version} doesn't exit.`); + } + + return versionExists; +} + +async function checkBotPermission() { + const response = await fetch("https://registry.npmjs.org/prettier/"); + const { maintainers } = await response.json(); + + return maintainers.some(({ name }) => name === "prettier-bot"); +} + +checkBotPermission(); + +const sleep = () => + new Promise((resolve) => { + setTimeout(resolve, 30_000); + }); + +export default async function waitForBotRelease({ dry, version }) { + if (dry) { + return; + } + + if (!(await checkBotPermission())) { + console.log( + outdentString(chalk/* indent */ ` + 1. Go to {green.underline https://www.npmjs.com/package/prettier/access} + 2. Add "{yellow prettier-bot}" as prettier package maintainer. + + Press ENTER to continue. + `) + ); + + await waitForEnter(); + } + + console.log( + outdentString(chalk/* indent */ ` + 1. Go to {green.underline https://github.com/prettier/release-workflow/actions/workflows/release.yml} + 2. Click "{green Run workflow}" button, type "{yellow.underline ${version}}" in "Version to release", uncheck all checkboxes, hit the "{bgGreen Run workflow}" button. + + Press ENTER to continue. + `) + ); + + await waitForEnter(); + + let released = false; + while (!released) { + try { + released = await logPromise( + "Checking release status", + isVersionReleased(version) + ); + } catch { + // No op + } + + if (!released) { + await logPromise("Wait for 30s", sleep()); + } + } +} diff --git a/src/language-html/print/tag.js b/src/language-html/print/tag.js index fbb1f6d6a..c1f112670 100644 --- a/src/language-html/print/tag.js +++ b/src/language-html/print/tag.js @@ -19,6 +19,7 @@ import { isPreLikeNode, hasPrettierIgnore, shouldPreserveContent, + isVueSfcBlock, } from "../utils/index.js"; function printClosingTag(node, options) { @@ -253,8 +254,11 @@ function printAttributes(path, options, print) { node.attrs[0].fullName === "src" && node.children.length === 0; - const attributeLine = - options.singleAttributePerLine && node.attrs.length > 1 ? hardline : line; + const shouldPrintAttributePerLine = + options.singleAttributePerLine && + node.attrs.length > 1 && + !isVueSfcBlock(node, options); + const attributeLine = shouldPrintAttributePerLine ? hardline : line; /** @type {Doc[]} */ const parts = [ diff --git a/src/language-html/utils/index.js b/src/language-html/utils/index.js index ffd49110e..acf6e2667 100644 --- a/src/language-html/utils/index.js +++ b/src/language-html/utils/index.js @@ -667,6 +667,7 @@ export { isVueScriptTag, isVueSlotAttribute, isVueSfcBindingsAttribute, + isVueSfcBlock, isDanglingSpaceSensitiveNode, isIndentationSensitiveNode, isLeadingSpaceSensitiveNode, diff --git a/src/main/parser.js b/src/main/parser.js index fdff76264..644948b94 100644 --- a/src/main/parser.js +++ b/src/main/parser.js @@ -57,11 +57,7 @@ function callPluginParseFunction(originalText, opts) { const parsers = getParsers(opts); // Create a new object {parserName: parseFn}. Uses defineProperty() to only call - // the parsers getters when actually calling the parser `parse` function. const parsersForCustomParserApi = Object.defineProperties( - {}, - Object.fromEntries( - Object.keys(parsers).map((parserName) => [ parserName, { enumerable: true, diff --git a/tests/format/misc/typescript-babel-only/__snapshots__/jsfmt.spec.js.snap b/tests/format/misc/typescript-babel-only/__snapshots__/jsfmt.spec.js.snap index 0bab1a843..9a2dd84d4 100644 --- a/tests/format/misc/typescript-babel-only/__snapshots__/jsfmt.spec.js.snap +++ b/tests/format/misc/typescript-babel-only/__snapshots__/jsfmt.spec.js.snap @@ -184,22 +184,6 @@ type Foo = ================================================================================ `; -exports[`ts-4.7-instantiation-expression.ts format 1`] = ` -====================================options===================================== -parsers: ["babel-ts"] -printWidth: 80 - | printWidth -=====================================input====================================== -// typeof -let x: typeof y.z; - -=====================================output===================================== -// typeof -let x: typeof y.z; - -================================================================================ -`; - exports[`tuple-labeled-ts.ts format 1`] = ` ====================================options===================================== parsers: ["babel-ts"] diff --git a/tests/format/typescript/instantiation-expression/__snapshots__/jsfmt.spec.js.snap b/tests/format/typescript/instantiation-expression/__snapshots__/jsfmt.spec.js.snap index 29fb2537b..974c9bdab 100644 --- a/tests/format/typescript/instantiation-expression/__snapshots__/jsfmt.spec.js.snap +++ b/tests/format/typescript/instantiation-expression/__snapshots__/jsfmt.spec.js.snap @@ -68,3 +68,17 @@ new A(); ================================================================================ `; + +exports[`typeof.ts format 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +let x: typeof y.z; + +=====================================output===================================== +let x: typeof y.z; + +================================================================================ +`; diff --git a/tests/format/misc/typescript-babel-only/ts-4.7-instantiation-expression.ts b/tests/format/typescript/instantiation-expression/typeof.ts similarity index 68% rename from tests/format/misc/typescript-babel-only/ts-4.7-instantiation-expression.ts rename to tests/format/typescript/instantiation-expression/typeof.ts index f5e71be1f..7287d407d 100644 --- a/tests/format/misc/typescript-babel-only/ts-4.7-instantiation-expression.ts +++ b/tests/format/typescript/instantiation-expression/typeof.ts @@ -1,2 +1 @@ -// typeof let x: typeof y.z; diff --git a/tests/format/vue/single-attribute-per-line/__snapshots__/jsfmt.spec.js.snap b/tests/format/vue/single-attribute-per-line/__snapshots__/jsfmt.spec.js.snap index 0a2ce5116..7da8e503a 100644 --- a/tests/format/vue/single-attribute-per-line/__snapshots__/jsfmt.spec.js.snap +++ b/tests/format/vue/single-attribute-per-line/__snapshots__/jsfmt.spec.js.snap @@ -1,5 +1,152 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`sfc-blocks.vue - {"singleAttributePerLine":true} format 1`] = ` +====================================options===================================== +parsers: ["vue"] +printWidth: 80 +singleAttributePerLine: true + | printWidth +=====================================input====================================== + + + + + + + + + + + + + + + + + + +=====================================output===================================== + + + + + + + + + + + + + + + + + + +================================================================================ +`; + +exports[`sfc-blocks.vue format 1`] = ` +====================================options===================================== +parsers: ["vue"] +printWidth: 80 + | printWidth +=====================================input====================================== + + + + + + + + + + + + + + + + + + +=====================================output===================================== + + + + + + + + + + + + + + + + + + +================================================================================ +`; + exports[`single-attribute-per-line.vue - {"singleAttributePerLine":true} format 1`] = ` ====================================options===================================== parsers: ["vue"] diff --git a/tests/format/vue/single-attribute-per-line/sfc-blocks.vue b/tests/format/vue/single-attribute-per-line/sfc-blocks.vue new file mode 100644 index 000000000..9118346d5 --- /dev/null +++ b/tests/format/vue/single-attribute-per-line/sfc-blocks.vue @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + diff --git a/yarn.lock b/yarn.lock index 0560fb9df..5614d955b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1552,6 +1552,13 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:5.27.0": + version: 5.27.0 + resolution: "@typescript-eslint/types@npm:5.27.0" + checksum: d19802bb7bc8202885a47118e196ad9a26b686f00da5aa71a84974c1e838c5e3a36f54116605c46ffe909ccf856a49623f2a095fd05243b4fe4fecfe5cecb89c + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:5.26.0": version: 5.26.0 resolution: "@typescript-eslint/typescript-estree@npm:5.26.0" @@ -1570,6 +1577,24 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/typescript-estree@npm:5.27.0": + version: 5.27.0 + resolution: "@typescript-eslint/typescript-estree@npm:5.27.0" + dependencies: + "@typescript-eslint/types": 5.27.0 + "@typescript-eslint/visitor-keys": 5.27.0 + debug: ^4.3.4 + globby: ^11.1.0 + is-glob: ^4.0.3 + semver: ^7.3.7 + tsutils: ^3.21.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: a0f14c332cd293a100399172c9ae498c230c8c205ab74565ea2de08a0bd860af829a9c4dde1888df89667fa0bc29048bc33993eb9445d2689fa2dfcec55c4915 + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:5.26.0, @typescript-eslint/utils@npm:^5.10.0": version: 5.26.0 resolution: "@typescript-eslint/utils@npm:5.26.0" @@ -1596,6 +1621,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:5.27.0": + version: 5.27.0 + resolution: "@typescript-eslint/visitor-keys@npm:5.27.0" + dependencies: + "@typescript-eslint/types": 5.27.0 + eslint-visitor-keys: ^3.3.0 + checksum: 7781f35e25a09d0986b4ba97c707102394cf94738a92d68eca6382b00ffba1b0fac3e937ca4ee6266295dd40ec837a61889fd715f594549f2c3d837594999c29 + languageName: node + linkType: hard + "abbrev@npm:1": version: 1.1.1 resolution: "abbrev@npm:1.1.1" @@ -2920,121 +2955,121 @@ __metadata: languageName: node linkType: hard -"esbuild-android-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-android-64@npm:0.14.41" +"esbuild-android-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-android-64@npm:0.14.42" conditions: os=android & cpu=x64 languageName: node linkType: hard -"esbuild-android-arm64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-android-arm64@npm:0.14.41" +"esbuild-android-arm64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-android-arm64@npm:0.14.42" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"esbuild-darwin-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-darwin-64@npm:0.14.41" +"esbuild-darwin-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-darwin-64@npm:0.14.42" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"esbuild-darwin-arm64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-darwin-arm64@npm:0.14.41" +"esbuild-darwin-arm64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-darwin-arm64@npm:0.14.42" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"esbuild-freebsd-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-freebsd-64@npm:0.14.41" +"esbuild-freebsd-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-freebsd-64@npm:0.14.42" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"esbuild-freebsd-arm64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-freebsd-arm64@npm:0.14.41" +"esbuild-freebsd-arm64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-freebsd-arm64@npm:0.14.42" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"esbuild-linux-32@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-32@npm:0.14.41" +"esbuild-linux-32@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-32@npm:0.14.42" conditions: os=linux & cpu=ia32 languageName: node linkType: hard -"esbuild-linux-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-64@npm:0.14.41" +"esbuild-linux-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-64@npm:0.14.42" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"esbuild-linux-arm64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-arm64@npm:0.14.41" +"esbuild-linux-arm64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-arm64@npm:0.14.42" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"esbuild-linux-arm@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-arm@npm:0.14.41" +"esbuild-linux-arm@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-arm@npm:0.14.42" conditions: os=linux & cpu=arm languageName: node linkType: hard -"esbuild-linux-mips64le@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-mips64le@npm:0.14.41" +"esbuild-linux-mips64le@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-mips64le@npm:0.14.42" conditions: os=linux & cpu=mips64el languageName: node linkType: hard -"esbuild-linux-ppc64le@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-ppc64le@npm:0.14.41" +"esbuild-linux-ppc64le@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-ppc64le@npm:0.14.42" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard -"esbuild-linux-riscv64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-riscv64@npm:0.14.41" +"esbuild-linux-riscv64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-riscv64@npm:0.14.42" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard -"esbuild-linux-s390x@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-linux-s390x@npm:0.14.41" +"esbuild-linux-s390x@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-linux-s390x@npm:0.14.42" conditions: os=linux & cpu=s390x languageName: node linkType: hard -"esbuild-netbsd-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-netbsd-64@npm:0.14.41" +"esbuild-netbsd-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-netbsd-64@npm:0.14.42" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard -"esbuild-openbsd-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-openbsd-64@npm:0.14.41" +"esbuild-openbsd-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-openbsd-64@npm:0.14.42" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard -"esbuild-sunos-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-sunos-64@npm:0.14.41" +"esbuild-sunos-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-sunos-64@npm:0.14.42" conditions: os=sunos & cpu=x64 languageName: node linkType: hard @@ -3052,51 +3087,51 @@ __metadata: languageName: node linkType: hard -"esbuild-windows-32@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-windows-32@npm:0.14.41" +"esbuild-windows-32@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-windows-32@npm:0.14.42" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"esbuild-windows-64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-windows-64@npm:0.14.41" +"esbuild-windows-64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-windows-64@npm:0.14.42" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"esbuild-windows-arm64@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild-windows-arm64@npm:0.14.41" +"esbuild-windows-arm64@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild-windows-arm64@npm:0.14.42" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"esbuild@npm:0.14.41": - version: 0.14.41 - resolution: "esbuild@npm:0.14.41" +"esbuild@npm:0.14.42": + version: 0.14.42 + resolution: "esbuild@npm:0.14.42" dependencies: - esbuild-android-64: 0.14.41 - esbuild-android-arm64: 0.14.41 - esbuild-darwin-64: 0.14.41 - esbuild-darwin-arm64: 0.14.41 - esbuild-freebsd-64: 0.14.41 - esbuild-freebsd-arm64: 0.14.41 - esbuild-linux-32: 0.14.41 - esbuild-linux-64: 0.14.41 - esbuild-linux-arm: 0.14.41 - esbuild-linux-arm64: 0.14.41 - esbuild-linux-mips64le: 0.14.41 - esbuild-linux-ppc64le: 0.14.41 - esbuild-linux-riscv64: 0.14.41 - esbuild-linux-s390x: 0.14.41 - esbuild-netbsd-64: 0.14.41 - esbuild-openbsd-64: 0.14.41 - esbuild-sunos-64: 0.14.41 - esbuild-windows-32: 0.14.41 - esbuild-windows-64: 0.14.41 - esbuild-windows-arm64: 0.14.41 + esbuild-android-64: 0.14.42 + esbuild-android-arm64: 0.14.42 + esbuild-darwin-64: 0.14.42 + esbuild-darwin-arm64: 0.14.42 + esbuild-freebsd-64: 0.14.42 + esbuild-freebsd-arm64: 0.14.42 + esbuild-linux-32: 0.14.42 + esbuild-linux-64: 0.14.42 + esbuild-linux-arm: 0.14.42 + esbuild-linux-arm64: 0.14.42 + esbuild-linux-mips64le: 0.14.42 + esbuild-linux-ppc64le: 0.14.42 + esbuild-linux-riscv64: 0.14.42 + esbuild-linux-s390x: 0.14.42 + esbuild-netbsd-64: 0.14.42 + esbuild-openbsd-64: 0.14.42 + esbuild-sunos-64: 0.14.42 + esbuild-windows-32: 0.14.42 + esbuild-windows-64: 0.14.42 + esbuild-windows-arm64: 0.14.42 dependenciesMeta: esbuild-android-64: optional: true @@ -3140,7 +3175,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: d36375235610aa23b7d0e4045a9927102db500369ba88ceee30e3997bfc1e7f25c8fc2e44b77e09ce4e6b88314e466a85503d55587db16a55a8c98673ba3fad9 + checksum: e036278177bdb3f5a58fd7a56f67afa7ae603e0458b0dcc75901e0fa86b07587a63c2b447653d400c1bdf9d56e93b0d1011b6a83fc3c973e752c3cc75baabb91 languageName: node linkType: hard @@ -6632,7 +6667,7 @@ __metadata: "@types/estree": 0.0.51 "@types/jest": 28.1.1 "@typescript-eslint/eslint-plugin": 5.26.0 - "@typescript-eslint/typescript-estree": 5.26.0 + "@typescript-eslint/typescript-estree": 5.27.0 acorn: 8.7.1 acorn-jsx: 5.3.2 angular-estree-parser: 2.5.0 @@ -6653,7 +6688,7 @@ __metadata: editorconfig: 0.15.3 editorconfig-to-prettier: 0.2.0 enquirer: 2.3.6 - esbuild: 0.14.41 + esbuild: 0.14.42 esbuild-visualizer: 0.3.1 escape-string-regexp: 5.0.0 eslint: 8.17.0