eslint-linter-browserify 9.1.1 → 9.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/linter.cjs CHANGED
@@ -17382,7 +17382,7 @@ function requireLodash_merge () {
17382
17382
  }
17383
17383
 
17384
17384
  var name = "eslint";
17385
- var version = "9.1.1";
17385
+ var version = "9.2.0";
17386
17386
  var author = "Nicholas C. Zakas <nicholas+npm@nczconsulting.com>";
17387
17387
  var description$2 = "An AST-based pattern checker for JavaScript.";
17388
17388
  var bin = {
@@ -17437,7 +17437,7 @@ var dependencies$2 = {
17437
17437
  "@eslint-community/eslint-utils": "^4.2.0",
17438
17438
  "@eslint-community/regexpp": "^4.6.1",
17439
17439
  "@eslint/eslintrc": "^3.0.2",
17440
- "@eslint/js": "9.1.1",
17440
+ "@eslint/js": "9.2.0",
17441
17441
  "@humanwhocodes/config-array": "^0.13.0",
17442
17442
  "@humanwhocodes/module-importer": "^1.0.1",
17443
17443
  "@humanwhocodes/retry": "^0.2.3",
@@ -17472,6 +17472,7 @@ var dependencies$2 = {
17472
17472
  var devDependencies = {
17473
17473
  "@babel/core": "^7.4.3",
17474
17474
  "@babel/preset-env": "^7.4.3",
17475
+ "@eslint-community/eslint-plugin-eslint-comments": "^4.3.0",
17475
17476
  "@types/estree": "^1.0.5",
17476
17477
  "@types/node": "^20.11.5",
17477
17478
  "@wdio/browser-runner": "^8.14.6",
@@ -17488,12 +17489,11 @@ var devDependencies = {
17488
17489
  ejs: "^3.0.2",
17489
17490
  eslint: "file:.",
17490
17491
  "eslint-config-eslint": "file:packages/eslint-config-eslint",
17491
- "eslint-plugin-eslint-comments": "^3.2.0",
17492
17492
  "eslint-plugin-eslint-plugin": "^6.0.0",
17493
17493
  "eslint-plugin-internal-rules": "file:tools/internal-rules",
17494
- "eslint-plugin-jsdoc": "^46.9.0",
17495
- "eslint-plugin-n": "^16.6.0",
17496
- "eslint-plugin-unicorn": "^49.0.0",
17494
+ "eslint-plugin-jsdoc": "^48.2.3",
17495
+ "eslint-plugin-n": "^17.2.0",
17496
+ "eslint-plugin-unicorn": "^52.0.0",
17497
17497
  "eslint-release": "^3.2.2",
17498
17498
  eslump: "^3.0.0",
17499
17499
  esprima: "^4.0.1",
@@ -41603,7 +41603,7 @@ function requireSourceCode$1 () {
41603
41603
  * https://github.com/eslint/eslint/issues/16302
41604
41604
  */
41605
41605
  const configGlobals = Object.assign(
41606
- {},
41606
+ Object.create(null), // https://github.com/eslint/eslint/issues/18363
41607
41607
  getGlobalsForEcmaVersion(languageOptions.ecmaVersion),
41608
41608
  languageOptions.sourceType === "commonjs" ? globals.commonjs : void 0,
41609
41609
  languageOptions.globals
@@ -49715,25 +49715,6 @@ function requireCamelcase () {
49715
49715
  return camelcase;
49716
49716
  }
49717
49717
 
49718
- /**
49719
- * @fileoverview Pattern for detecting any letter (even letters outside of ASCII).
49720
- * NOTE: This file was generated using this script in JSCS based on the Unicode 7.0.0 standard: https://github.com/jscs-dev/node-jscs/blob/f5ed14427deb7e7aac84f3056a5aab2d9f3e563e/publish/helpers/generate-patterns.js
49721
- * Do not edit this file by hand-- please use https://github.com/mathiasbynens/regenerate to regenerate the regular expression exported from this file.
49722
- * @author Kevin Partington
49723
- * @license MIT License (from JSCS). See below.
49724
- */
49725
-
49726
- var letters;
49727
- var hasRequiredLetters;
49728
-
49729
- function requireLetters () {
49730
- if (hasRequiredLetters) return letters;
49731
- hasRequiredLetters = 1;
49732
-
49733
- letters = /[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B2\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDE00-\uDE11\uDE13-\uDE2B\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDE00-\uDE2F\uDE44\uDE80-\uDEAA]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D]|\uD87E[\uDC00-\uDE1D]/u;
49734
- return letters;
49735
- }
49736
-
49737
49718
  /**
49738
49719
  * @fileoverview enforce or disallow capitalization of the first letter of a comment
49739
49720
  * @author Kevin Partington
@@ -49750,7 +49731,6 @@ function requireCapitalizedComments () {
49750
49731
  // Requirements
49751
49732
  //------------------------------------------------------------------------------
49752
49733
 
49753
- const LETTER_PATTERN = requireLetters();
49754
49734
  const astUtils = requireAstUtils();
49755
49735
 
49756
49736
  //------------------------------------------------------------------------------
@@ -49759,7 +49739,8 @@ function requireCapitalizedComments () {
49759
49739
 
49760
49740
  const DEFAULT_IGNORE_PATTERN = astUtils.COMMENTS_IGNORE_PATTERN,
49761
49741
  WHITESPACE = /\s/gu,
49762
- MAYBE_URL = /^\s*[^:/?#\s]+:\/\/[^?#]/u; // TODO: Combine w/ max-len pattern?
49742
+ MAYBE_URL = /^\s*[^:/?#\s]+:\/\/[^?#]/u, // TODO: Combine w/ max-len pattern?
49743
+ LETTER_PATTERN = /\p{L}/u;
49763
49744
 
49764
49745
  /*
49765
49746
  * Base schema body for defining the basic capitalization rule, ignorePattern,
@@ -49975,7 +49956,8 @@ function requireCapitalizedComments () {
49975
49956
  return true;
49976
49957
  }
49977
49958
 
49978
- const firstWordChar = commentWordCharsOnly[0];
49959
+ // Get the first Unicode character (1 or 2 code units).
49960
+ const [firstWordChar] = commentWordCharsOnly;
49979
49961
 
49980
49962
  if (!LETTER_PATTERN.test(firstWordChar)) {
49981
49963
  return true;
@@ -50015,12 +49997,14 @@ function requireCapitalizedComments () {
50015
49997
  messageId,
50016
49998
  fix(fixer) {
50017
49999
  const match = comment.value.match(LETTER_PATTERN);
50000
+ const char = match[0];
50018
50001
 
50019
- return fixer.replaceTextRange(
50002
+ // Offset match.index by 2 to account for the first 2 characters that start the comment (// or /*)
50003
+ const charIndex = comment.range[0] + match.index + 2;
50020
50004
 
50021
- // Offset match.index by 2 to account for the first 2 characters that start the comment (// or /*)
50022
- [comment.range[0] + match.index + 2, comment.range[0] + match.index + 3],
50023
- capitalize === "always" ? match[0].toLocaleUpperCase() : match[0].toLocaleLowerCase()
50005
+ return fixer.replaceTextRange(
50006
+ [charIndex, charIndex + char.length],
50007
+ capitalize === "always" ? char.toLocaleUpperCase() : char.toLocaleLowerCase()
50024
50008
  );
50025
50009
  }
50026
50010
  });
@@ -67670,9 +67654,12 @@ function requireNoCaseDeclarations () {
67670
67654
  url: "https://eslint.org/docs/latest/rules/no-case-declarations"
67671
67655
  },
67672
67656
 
67657
+ hasSuggestions: true,
67658
+
67673
67659
  schema: [],
67674
67660
 
67675
67661
  messages: {
67662
+ addBrackets: "Add {} brackets around the case block.",
67676
67663
  unexpected: "Unexpected lexical declaration in case block."
67677
67664
  }
67678
67665
  },
@@ -67704,7 +67691,16 @@ function requireNoCaseDeclarations () {
67704
67691
  if (isLexicalDeclaration(statement)) {
67705
67692
  context.report({
67706
67693
  node: statement,
67707
- messageId: "unexpected"
67694
+ messageId: "unexpected",
67695
+ suggest: [
67696
+ {
67697
+ messageId: "addBrackets",
67698
+ fix: fixer => [
67699
+ fixer.insertTextBefore(node.consequent[0], "{ "),
67700
+ fixer.insertTextAfter(node.consequent.at(-1), " }")
67701
+ ]
67702
+ }
67703
+ ]
67708
67704
  });
67709
67705
  }
67710
67706
  }
@@ -117097,7 +117093,7 @@ function requireLinter () {
117097
117093
  */
117098
117094
  function resolveGlobals(providedGlobals, enabledEnvironments) {
117099
117095
  return Object.assign(
117100
- {},
117096
+ Object.create(null),
117101
117097
  ...enabledEnvironments.filter(env => env.globals).map(env => env.globals),
117102
117098
  providedGlobals
117103
117099
  );
package/linter.js CHANGED
@@ -17384,7 +17384,7 @@
17384
17384
  }
17385
17385
 
17386
17386
  var name = "eslint";
17387
- var version = "9.1.1";
17387
+ var version = "9.2.0";
17388
17388
  var author = "Nicholas C. Zakas <nicholas+npm@nczconsulting.com>";
17389
17389
  var description$2 = "An AST-based pattern checker for JavaScript.";
17390
17390
  var bin = {
@@ -17439,7 +17439,7 @@
17439
17439
  "@eslint-community/eslint-utils": "^4.2.0",
17440
17440
  "@eslint-community/regexpp": "^4.6.1",
17441
17441
  "@eslint/eslintrc": "^3.0.2",
17442
- "@eslint/js": "9.1.1",
17442
+ "@eslint/js": "9.2.0",
17443
17443
  "@humanwhocodes/config-array": "^0.13.0",
17444
17444
  "@humanwhocodes/module-importer": "^1.0.1",
17445
17445
  "@humanwhocodes/retry": "^0.2.3",
@@ -17474,6 +17474,7 @@
17474
17474
  var devDependencies = {
17475
17475
  "@babel/core": "^7.4.3",
17476
17476
  "@babel/preset-env": "^7.4.3",
17477
+ "@eslint-community/eslint-plugin-eslint-comments": "^4.3.0",
17477
17478
  "@types/estree": "^1.0.5",
17478
17479
  "@types/node": "^20.11.5",
17479
17480
  "@wdio/browser-runner": "^8.14.6",
@@ -17490,12 +17491,11 @@
17490
17491
  ejs: "^3.0.2",
17491
17492
  eslint: "file:.",
17492
17493
  "eslint-config-eslint": "file:packages/eslint-config-eslint",
17493
- "eslint-plugin-eslint-comments": "^3.2.0",
17494
17494
  "eslint-plugin-eslint-plugin": "^6.0.0",
17495
17495
  "eslint-plugin-internal-rules": "file:tools/internal-rules",
17496
- "eslint-plugin-jsdoc": "^46.9.0",
17497
- "eslint-plugin-n": "^16.6.0",
17498
- "eslint-plugin-unicorn": "^49.0.0",
17496
+ "eslint-plugin-jsdoc": "^48.2.3",
17497
+ "eslint-plugin-n": "^17.2.0",
17498
+ "eslint-plugin-unicorn": "^52.0.0",
17499
17499
  "eslint-release": "^3.2.2",
17500
17500
  eslump: "^3.0.0",
17501
17501
  esprima: "^4.0.1",
@@ -41605,7 +41605,7 @@
41605
41605
  * https://github.com/eslint/eslint/issues/16302
41606
41606
  */
41607
41607
  const configGlobals = Object.assign(
41608
- {},
41608
+ Object.create(null), // https://github.com/eslint/eslint/issues/18363
41609
41609
  getGlobalsForEcmaVersion(languageOptions.ecmaVersion),
41610
41610
  languageOptions.sourceType === "commonjs" ? globals.commonjs : void 0,
41611
41611
  languageOptions.globals
@@ -49717,25 +49717,6 @@
49717
49717
  return camelcase;
49718
49718
  }
49719
49719
 
49720
- /**
49721
- * @fileoverview Pattern for detecting any letter (even letters outside of ASCII).
49722
- * NOTE: This file was generated using this script in JSCS based on the Unicode 7.0.0 standard: https://github.com/jscs-dev/node-jscs/blob/f5ed14427deb7e7aac84f3056a5aab2d9f3e563e/publish/helpers/generate-patterns.js
49723
- * Do not edit this file by hand-- please use https://github.com/mathiasbynens/regenerate to regenerate the regular expression exported from this file.
49724
- * @author Kevin Partington
49725
- * @license MIT License (from JSCS). See below.
49726
- */
49727
-
49728
- var letters;
49729
- var hasRequiredLetters;
49730
-
49731
- function requireLetters () {
49732
- if (hasRequiredLetters) return letters;
49733
- hasRequiredLetters = 1;
49734
-
49735
- letters = /[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B2\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDE00-\uDE11\uDE13-\uDE2B\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDE00-\uDE2F\uDE44\uDE80-\uDEAA]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D]|\uD87E[\uDC00-\uDE1D]/u;
49736
- return letters;
49737
- }
49738
-
49739
49720
  /**
49740
49721
  * @fileoverview enforce or disallow capitalization of the first letter of a comment
49741
49722
  * @author Kevin Partington
@@ -49752,7 +49733,6 @@
49752
49733
  // Requirements
49753
49734
  //------------------------------------------------------------------------------
49754
49735
 
49755
- const LETTER_PATTERN = requireLetters();
49756
49736
  const astUtils = requireAstUtils();
49757
49737
 
49758
49738
  //------------------------------------------------------------------------------
@@ -49761,7 +49741,8 @@
49761
49741
 
49762
49742
  const DEFAULT_IGNORE_PATTERN = astUtils.COMMENTS_IGNORE_PATTERN,
49763
49743
  WHITESPACE = /\s/gu,
49764
- MAYBE_URL = /^\s*[^:/?#\s]+:\/\/[^?#]/u; // TODO: Combine w/ max-len pattern?
49744
+ MAYBE_URL = /^\s*[^:/?#\s]+:\/\/[^?#]/u, // TODO: Combine w/ max-len pattern?
49745
+ LETTER_PATTERN = /\p{L}/u;
49765
49746
 
49766
49747
  /*
49767
49748
  * Base schema body for defining the basic capitalization rule, ignorePattern,
@@ -49977,7 +49958,8 @@
49977
49958
  return true;
49978
49959
  }
49979
49960
 
49980
- const firstWordChar = commentWordCharsOnly[0];
49961
+ // Get the first Unicode character (1 or 2 code units).
49962
+ const [firstWordChar] = commentWordCharsOnly;
49981
49963
 
49982
49964
  if (!LETTER_PATTERN.test(firstWordChar)) {
49983
49965
  return true;
@@ -50017,12 +49999,14 @@
50017
49999
  messageId,
50018
50000
  fix(fixer) {
50019
50001
  const match = comment.value.match(LETTER_PATTERN);
50002
+ const char = match[0];
50020
50003
 
50021
- return fixer.replaceTextRange(
50004
+ // Offset match.index by 2 to account for the first 2 characters that start the comment (// or /*)
50005
+ const charIndex = comment.range[0] + match.index + 2;
50022
50006
 
50023
- // Offset match.index by 2 to account for the first 2 characters that start the comment (// or /*)
50024
- [comment.range[0] + match.index + 2, comment.range[0] + match.index + 3],
50025
- capitalize === "always" ? match[0].toLocaleUpperCase() : match[0].toLocaleLowerCase()
50007
+ return fixer.replaceTextRange(
50008
+ [charIndex, charIndex + char.length],
50009
+ capitalize === "always" ? char.toLocaleUpperCase() : char.toLocaleLowerCase()
50026
50010
  );
50027
50011
  }
50028
50012
  });
@@ -67672,9 +67656,12 @@
67672
67656
  url: "https://eslint.org/docs/latest/rules/no-case-declarations"
67673
67657
  },
67674
67658
 
67659
+ hasSuggestions: true,
67660
+
67675
67661
  schema: [],
67676
67662
 
67677
67663
  messages: {
67664
+ addBrackets: "Add {} brackets around the case block.",
67678
67665
  unexpected: "Unexpected lexical declaration in case block."
67679
67666
  }
67680
67667
  },
@@ -67706,7 +67693,16 @@
67706
67693
  if (isLexicalDeclaration(statement)) {
67707
67694
  context.report({
67708
67695
  node: statement,
67709
- messageId: "unexpected"
67696
+ messageId: "unexpected",
67697
+ suggest: [
67698
+ {
67699
+ messageId: "addBrackets",
67700
+ fix: fixer => [
67701
+ fixer.insertTextBefore(node.consequent[0], "{ "),
67702
+ fixer.insertTextAfter(node.consequent.at(-1), " }")
67703
+ ]
67704
+ }
67705
+ ]
67710
67706
  });
67711
67707
  }
67712
67708
  }
@@ -117099,7 +117095,7 @@
117099
117095
  */
117100
117096
  function resolveGlobals(providedGlobals, enabledEnvironments) {
117101
117097
  return Object.assign(
117102
- {},
117098
+ Object.create(null),
117103
117099
  ...enabledEnvironments.filter(env => env.globals).map(env => env.globals),
117104
117100
  providedGlobals
117105
117101
  );