From 3af4a78266ccf21b341e078716e53e23618a90b9 Mon Sep 17 00:00:00 2001 From: Joe Hildebrand Date: Wed, 31 Jul 2024 22:32:21 -0500 Subject: [PATCH 1/5] Update dependencies. Deal with lint changes. --- .eslintrc.cjs | 42 - .mocharc.cjs | 9 +- eslint.config.js | 40 + lib/EastAsianWidth.js | 6 +- lib/LineBreak.js | 6 +- lib/index.js | 7 +- lib/state.js | 2 +- package.json | 23 +- pnpm-lock.yaml | 2394 +++++++++++++++++++++----------------- test/conformance.test.js | 37 + test/index.test.js | 8 +- test/lists.test.js | 83 ++ test/rules.test.js | 136 +-- test/state.test.js | 1 + test/utils.js | 17 + tools/generate_data.js | 5 +- 16 files changed, 1571 insertions(+), 1245 deletions(-) delete mode 100644 .eslintrc.cjs create mode 100644 eslint.config.js create mode 100644 test/conformance.test.js create mode 100644 test/lists.test.js create mode 100644 test/utils.js diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index 5950d79..0000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,42 +0,0 @@ -"use strict"; - -module.exports = { - root: true, - extends: ["@peggyjs"], - ignorePatterns: [ - "docs/", - "node_modules/", - ], - overrides: [ - { - files: ["*.js", "*.cjs"], - rules: { - "no-eq-null": "off", - "eqeqeq": ["error", "always", { "null": "ignore" }], - "no-unused-vars": ["error", { "argsIgnorePattern": "^_" }], - }, - }, - { - files: ["*.js"], - parserOptions: { - sourceType: "module", - ecmaVersion: 2022, - }, - }, - { - files: ["test/*.js"], - env: { - mocha: true, - }, - rules: { - "prefer-arrow-callback": "off", - }, - }, - { - files: ["lib/EastAsianWidth.js", "lib/LineBreak.js"], - rules: { - "@stylistic/object-curly-spacing": "off", - }, - }, - ], -}; diff --git a/.mocharc.cjs b/.mocharc.cjs index 35920b9..17d4405 100644 --- a/.mocharc.cjs +++ b/.mocharc.cjs @@ -1,7 +1,6 @@ -'use strict' +"use strict"; module.exports = { - reporter: 'progress', - timeout: '30000' -} - + reporter: "progress", + timeout: "30000", +}; diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..a8f9c13 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,40 @@ +import cjs from "@peggyjs/eslint-config/flat/cjs.js"; +import mocha from "@peggyjs/eslint-config/flat/mocha.js"; +import mod from "@peggyjs/eslint-config/flat/module.js"; + +export default [ + { + ignores: [ + "coverage/**", + "docs/**", + "node_modules/**", + "**/*.d.ts", + ], + }, + mod, + { + languageOptions: { + ecmaVersion: 2022, + }, + rules: { + "no-unused-vars": ["error", { + argsIgnorePattern: "^_", + caughtErrorsIgnorePattern: "^(_|ignore)", + destructuredArrayIgnorePattern: "^_", + varsIgnorePattern: "^_[^_]", + reportUsedIgnorePattern: true, + }], + }, + }, + cjs, + mocha, + { + files: [ + "lib/EastAsianWidth.js", + "lib/LineBreak.js", + ], + rules: { + "@stylistic/object-curly-spacing": "off", + }, + }, +]; diff --git a/lib/EastAsianWidth.js b/lib/EastAsianWidth.js index 2926206..b348e6d 100644 --- a/lib/EastAsianWidth.js +++ b/lib/EastAsianWidth.js @@ -2,9 +2,9 @@ import {UnicodeTrie} from "@cto.af/unicode-trie"; export const version = "15.1.0"; export const inputFileDate = new Date("2023-07-28T23:34:08.000Z"); -export const generatedDate = new Date("2024-03-07T04:49:31.912Z"); +export const generatedDate = new Date("2024-08-01T00:57:44.717Z"); export const EastAsianWidth = UnicodeTrie.fromBase64( - `AAAEAAAAAAD/////tQIAAB+LCABbR+llAgPtmj9IHzEUx8+fbam1FLoUCh1aaCl0cSoODgou + `AAAEAAAAAAD/////tQIAAB+LCACI3apmAgPtmj9IHzEUx8+fbam1FLoUCh1aaCl0cSoODgou iougOAgu4iRO4iQiiDgoCoK4OYi66aabo5M4KKiToC7ioIPoIgjiN5qTeNz9LucvL8l57wcf ksu/l7x7SV4uv+VSEKyCdbAJwucihUwy+wqsj2JwZLCtY3CWkHdRYdtX4FbG70F1dRB8AF/A N/AD/Ab/QB0Q5f4jbJBxGzRLWW2WZHZATjhfu5V4lF7k7cp4P+KDsuxApM4wnkeVtHElPoW4 @@ -17,7 +17,7 @@ export const EastAsianWidth = UnicodeTrie.fromBase64( Ul+25z+FzaTZti/7P5UsX/ydPPhbPvXBlU5MyjPRlm3btS3D5VzPy3nIRf9tjL/S9tLOPjb0 RpGvq2+dfIpx2/RpXM/71+g8qawPfn+S7Zn41kCxXvjwrYdC9mv8LVf7lYv57fM7dXmeoZRt eu2n8hfz9C58PleZ3vts7tUuv/ln9Zd19l/dOWja93J5XnPh31Ptf76t8VTrsmn/3PSa8QCh - pJTR4EkAAB+LCABbR+llAgOLVvJT0lGKVIoFANHfAiwJAAAA` + pJTR4EkAAB+LCACI3apmAgOLVvJT0lGKVIoFANHfAiwJAAAA` ); /** diff --git a/lib/LineBreak.js b/lib/LineBreak.js index 8eb7599..d3b7951 100644 --- a/lib/LineBreak.js +++ b/lib/LineBreak.js @@ -2,9 +2,9 @@ import {UnicodeTrie} from "@cto.af/unicode-trie"; export const version = "15.1.0"; export const inputFileDate = new Date("2023-07-28T13:19:22.000Z"); -export const generatedDate = new Date("2024-03-07T04:49:31.942Z"); +export const generatedDate = new Date("2024-08-01T00:57:44.748Z"); export const LineBreak = UnicodeTrie.fromBase64( - `AAgOAAEAAAD/////3RMAAB+LCABbR+llAgPtnQnwl0UZx1/B8EIlvFFR0DARUTHNK/PIi7KS + `AAgOAAEAAAD/////3RMAAB+LCACI3apmAgPtnQnwl0UZx1/B8EIlvFFR0DARUTHNK/PIi7KS tJLUAq8EnRKYSnE00AmRMgknJQui8Ric1GhEMyPNEUHTEUoHrAQt0TKFRFMHHe374D7Nzrrv vnvv+/f/e2c+s++99+6zu8/uLu5ZVUvAcvAM2HjDquoDtge7gkFgqId5APgEOAacCEaAkWA0 GGP4bhy4WLr+FrgUXA6mgelgJpgD5oJ54B5wH1gkffcoeAL8FfwD/Au8Av4D3gTVh+BX0Ads @@ -98,7 +98,7 @@ export const LineBreak = UnicodeTrie.fromBase64( Ezq75f3QY+O753UsO+ruy3tJ68JB9zw3+2pQ3Ve3P7aJGG5zsc/FPTr3qe/a+kV+PyRt6Uyb PKTucR97fCPX2EnqcZkUfmtKt6nKQFP6TVn25QpHH3tMeT3Xvv7yXsnyeLXJHzHizLXcdbUz drqKHe6p7c9d7oT+J5f9ddTJO771fGi6dJURcsplqezQyTIh9pnkoxCZsIQMHCq/ph5DTN2e - D+0PbcM+8iXXQ8mhc+Jy/A9RMxgScCMBAB+LCABbR+llAgMdjksWgyAMRffCuKN2BZFSgSqi + D+0PbcM+8iXXQ8mhc+Jy/A9RMxgScCMBAB+LCACI3apmAgMdjksWgyAMRffCuKN2BZFSgSqi KP6O+9+GuU7uSfJeXnKabTMv4yaF7RWNKLof1Z8ZQslY8I2LQjpFRsiDYkC1IBSF39kACbPF nEALJJDc4KMtXItUsYIZMynC8Yo5fGmZVb461geRmDdyUjytI9VSeQT/Ib9lhiA8OBHoenPd OuNFhvcAAAA=` diff --git a/lib/index.js b/lib/index.js index ba3beba..8643c89 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,4 +1,3 @@ -/* eslint-disable new-cap */ import { BreakerState, eot, sot } from "./state.js"; import { LineBreak, names as LineBreakClasses } from "./LineBreak.js"; import { Break } from "./break.js"; @@ -917,7 +916,7 @@ export function Example7_13(state) { * @type {BreakRule} */ export function Example7_25(state) { - if (state.ex7pos != null) { + if (state.ex7pos !== null) { if (state.cur.len >= state.ex7pos) { state.ex7pos = null; // Keep going in this function, the cur char might start a new sequence. @@ -999,11 +998,11 @@ export function Example7_25(state) { } } // Got to the end of the string. Did we find anything? - if (firstClCp != null) { + if (firstClCp !== null) { state.ex7pos = firstClCp; return NO_BREAK; } - if (lastNuSyIs != null) { + if (lastNuSyIs !== null) { state.ex7pos = lastNuSyIs; return NO_BREAK; } diff --git a/lib/state.js b/lib/state.js index 81115bb..1270bd3 100644 --- a/lib/state.js +++ b/lib/state.js @@ -250,7 +250,7 @@ export class BreakerState { pn += ` RI: ${this.RI}`; } - if (this.ex7pos != null) { + if (this.ex7pos !== null) { pn += ` ex7: ${this.ex7pos}`; } diff --git a/package.json b/package.json index 6d7eac9..3896b51 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "clean": "rimraf coverage/ docs/ types/ lib/EastAsianWidth.js lib/LineBreak.js", "docs": "typedoc", "test": "c8 mocha", - "lint": "eslint . --ext js,cjs", + "lint": "eslint .", "types": "tsc", "trie": "node tools/generate_data.js", "prebuild": "npm run clean", @@ -28,19 +28,20 @@ "repository": "cto-af/linebreak", "license": "MIT", "devDependencies": { - "@peggyjs/eslint-config": "3.2.4", - "@types/node": "20.11.25", - "c8": "9.1.0", - "eslint": "8.57.0", - "mocha": "10.3.0", - "rimraf": "5.0.5", - "typedoc": "0.25.11", - "typescript": "5.4.2" + "@peggyjs/eslint-config": "4.0.3", + "@types/node": "22.0.2", + "c8": "10.1.2", + "eslint": "9.8.0", + "eslint-plugin-mocha": "10.5.0", + "mocha": "10.7.0", + "rimraf": "6.0.1", + "typedoc": "0.26.5", + "typescript": "5.5.4" }, "dependencies": { - "@cto.af/unicode-trie": "2.0.0" + "@cto.af/unicode-trie": "2.0.1" }, - "packageManager": "pnpm@8.15.4", + "packageManager": "pnpm@9.6.0", "engines": { "node": ">=18" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 52fc43f..435da1d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,81 +1,1005 @@ -lockfileVersion: '6.0' +lockfileVersion: '9.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false -dependencies: - '@cto.af/unicode-trie': - specifier: 2.0.0 - version: 2.0.0 - -devDependencies: - '@peggyjs/eslint-config': - specifier: 3.2.4 - version: 3.2.4(eslint@8.57.0)(typescript@5.4.2) - '@types/node': - specifier: 20.11.25 - version: 20.11.25 - c8: - specifier: 9.1.0 - version: 9.1.0 - eslint: - specifier: 8.57.0 - version: 8.57.0 - mocha: - specifier: 10.3.0 - version: 10.3.0 - rimraf: - specifier: 5.0.5 - version: 5.0.5 - typedoc: - specifier: 0.25.11 - version: 0.25.11(typescript@5.4.2) - typescript: - specifier: 5.4.2 - version: 5.4.2 +importers: + + .: + dependencies: + '@cto.af/unicode-trie': + specifier: 2.0.1 + version: 2.0.1 + devDependencies: + '@peggyjs/eslint-config': + specifier: 4.0.3 + version: 4.0.3(eslint@9.8.0)(typescript@5.5.4) + '@types/node': + specifier: 22.0.2 + version: 22.0.2 + c8: + specifier: 10.1.2 + version: 10.1.2 + eslint: + specifier: 9.8.0 + version: 9.8.0 + eslint-plugin-mocha: + specifier: 10.5.0 + version: 10.5.0(eslint@9.8.0) + mocha: + specifier: 10.7.0 + version: 10.7.0 + rimraf: + specifier: 6.0.1 + version: 6.0.1 + typedoc: + specifier: 0.26.5 + version: 0.26.5(typescript@5.5.4) + typescript: + specifier: 5.5.4 + version: 5.5.4 + +packages: + + '@aashutoshrathi/word-wrap@1.2.6': + resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} + engines: {node: '>=0.10.0'} + + '@bcoe/v8-coverage@0.2.3': + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + + '@cto.af/unicode-trie@2.0.1': + resolution: {integrity: sha512-/L+xazfY+8+/+j2nozYRHoGxFaF+QRMgD/lyOgiui6bV3ROfxoq/IirueGbeDAk0srlT8G+tkakfbDqyxHCLqw==} + engines: {node: '>=18'} + + '@eslint-community/eslint-utils@4.4.0': + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.11.0': + resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.17.1': + resolution: {integrity: sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.1.0': + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.8.0': + resolution: {integrity: sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.4': + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.3.0': + resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} + engines: {node: '>=18.18'} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@istanbuljs/schema@0.1.3': + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.4.15': + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@peggyjs/eslint-config@4.0.3': + resolution: {integrity: sha512-6cjxn4+9c2o5CzWB/rAvGSB8nFxWDQeyqIcjDGoAq6G+c2cC60+tvtoUVwXJvlt8IATl23gAR+x8ZjtCZ9jZJQ==} + engines: {node: '>=18'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@shikijs/core@1.12.0': + resolution: {integrity: sha512-mc1cLbm6UQ8RxLc0dZES7v5rkH+99LxQp/ZvTqV3NLyYsO/fD6JhEflP1H5b2SDq9gI0+0G36AVZWxvounfR9w==} + + '@stylistic/eslint-plugin-js@2.6.0': + resolution: {integrity: sha512-6oN0Djdy8gTRhx2qS1m4P+CeDKqmZZwc4ibgzzJS+8iBW3Ts1c2mAvi+OH6TN4bt0AHm0FnDv2+KtTqqueMATw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.40.0' + + '@stylistic/eslint-plugin-jsx@2.6.0': + resolution: {integrity: sha512-Hm7YODwBwAsYtacY9hR5ONiBS7K9og4YZFjBr8mfqsmlCYVFje1HsOKG+tylePkwcu0Qhi+lY86cP3rlV4PhAA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.40.0' + + '@stylistic/eslint-plugin-plus@2.6.0': + resolution: {integrity: sha512-9GfLF08zx/pNFpQQlNMz6f4IixoS8zdSBFdJLWLTorMilNUjd4dDuA5ej4Z32+mTZf4u6lduzQcUrAYiGKTLTg==} + peerDependencies: + eslint: '*' + + '@stylistic/eslint-plugin-ts@2.6.0': + resolution: {integrity: sha512-9ooVm+BRNqdyI/p10eKGAdbdLKU5lllc7mX4Xqp76hKDsh5cCxmZM6zMgK3CLKkYrW0RUunFORkg8dAnmc1qIA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.40.0' + + '@stylistic/eslint-plugin@2.6.0': + resolution: {integrity: sha512-BYzdgwz/4WgDTGmkPMKXFLRBKnYNVnmgD4NDsDCGJulqLFLF6sW1gr6gAJSFnkxwsdhEg+GApF4m5e3OMDpd6g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.40.0' + + '@types/eslint@9.6.0': + resolution: {integrity: sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg==} + + '@types/estree@1.0.5': + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + + '@types/istanbul-lib-coverage@2.0.6': + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/node@22.0.2': + resolution: {integrity: sha512-yPL6DyFwY5PiMVEwymNeqUTKsDczQBJ/5T7W/46RwLU/VH+AA8aT5TZkvBviLKLbbm0hlfftEkGrNzfRk/fofQ==} + + '@types/unist@3.0.2': + resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} + + '@typescript-eslint/scope-manager@8.0.0': + resolution: {integrity: sha512-V0aa9Csx/ZWWv2IPgTfY7T4agYwJyILESu/PVqFtTFz9RIS823mAze+NbnBI8xiwdX3iqeQbcTYlvB04G9wyQw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/types@8.0.0': + resolution: {integrity: sha512-wgdSGs9BTMWQ7ooeHtu5quddKKs5Z5dS+fHLbrQI+ID0XWJLODGMHRfhwImiHoeO2S5Wir2yXuadJN6/l4JRxw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.0.0': + resolution: {integrity: sha512-5b97WpKMX+Y43YKi4zVcCVLtK5F98dFls3Oxui8LbnmRsseKenbbDinmvxrWegKDMmlkIq/XHuyy0UGLtpCDKg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/utils@8.0.0': + resolution: {integrity: sha512-k/oS/A/3QeGLRvOWCg6/9rATJL5rec7/5s1YmdS0ZU6LHveJyGFwBvLhSRBv6i9xaj7etmosp+l+ViN1I9Aj/Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + '@typescript-eslint/visitor-keys@8.0.0': + resolution: {integrity: sha512-oN0K4nkHuOyF3PVMyETbpP5zp6wfyOvm7tWhTMfoqxSSsPmJIh6JNASuZDlODE8eE+0EB9uar+6+vxr9DBTYOA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.12.1: + resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + binary-extensions@2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + c8@10.1.2: + resolution: {integrity: sha512-Qr6rj76eSshu5CgRYvktW0uM0CFY0yi4Fd5D0duDXO6sYinyopmftUiJVuzBQxQcwQLor7JWDVRP+dUfCmzgJw==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + monocart-coverage-reports: ^2 + peerDependenciesMeta: + monocart-coverage-reports: + optional: true + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chokidar@3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + + debug@4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.3.6: + resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} + engines: {node: '>=0.3.1'} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + escalade@3.1.2: + resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + eslint-plugin-mocha@10.5.0: + resolution: {integrity: sha512-F2ALmQVPT1GoP27O1JTZGrV9Pqg8k79OeIuvw63UxMtQKREZtmkK1NFgkZQ2TW7L2JSSFKHFPTtHu5z8R9QNRw==} + engines: {node: '>=14.0.0'} + peerDependencies: + eslint: '>=7.0.0' + + eslint-scope@8.0.2: + resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-utils@3.0.0: + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' + + eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.0.0: + resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.8.0: + resolution: {integrity: sha512-K8qnZ/QJzT2dLKdZJVX6W4XOwBzutMYmt0lqUS+JdXgd+HTYFlonFgkJ8s44d/zMPPCnOOk0kMWCApCPhiOy9A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + + espree@10.1.0: + resolution: {integrity: sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + esquery@1.5.0: + resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + + fflate@0.8.2: + resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + + foreground-child@3.1.1: + resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + engines: {node: '>=14'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + + glob@11.0.0: + resolution: {integrity: sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==} + engines: {node: 20 || >=22} + hasBin: true + + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + deprecated: Glob versions prior to v9 are no longer supported + + globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@15.8.0: + resolution: {integrity: sha512-VZAJ4cewHTExBWDHR6yptdIBlx9YSSZuwojj9Nt5mBRXQzrKakDsVKQ1J63sklLvzAJm0X5+RpO4i3Y2hcOnFw==} + engines: {node: '>=18'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + html-escaper@2.0.2: + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + + ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + + import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} + + istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} + + istanbul-reports@3.1.7: + resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} + engines: {node: '>=8'} + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + jackspeak@4.0.1: + resolution: {integrity: sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==} + engines: {node: 20 || >=22} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + lru-cache@10.2.0: + resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} + engines: {node: 14 || >=16.14} + + lru-cache@11.0.0: + resolution: {integrity: sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==} + engines: {node: 20 || >=22} + + lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + + lunr@2.3.9: + resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} + + make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} + + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} + hasBin: true + + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromatch@4.0.5: + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} + + minimatch@10.0.1: + resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} + engines: {node: 20 || >=22} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + mocha@10.7.0: + resolution: {integrity: sha512-v8/rBWr2VO5YkspYINnvu81inSz2y3ODJrhO175/Exzor1RcEZZkizgE2A+w/CAXXoESS8Kys5E62dOHGHzULA==} + engines: {node: '>= 14.0.0'} + hasBin: true + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + optionator@0.9.3: + resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} + engines: {node: '>= 0.8.0'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + package-json-from-dist@1.0.0: + resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-scurry@2.0.0: + resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} + engines: {node: 20 || >=22} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + rambda@7.5.0: + resolution: {integrity: sha512-y/M9weqWAH4iopRd7EHDEQQvpFPHj1AA3oHozE9tfITHUtTR7Z9PSlIRRG2l1GuW7sefC1cXFfIcF+cgnShdBA==} + + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rimraf@6.0.1: + resolution: {integrity: sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==} + engines: {node: 20 || >=22} + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + semver@7.6.0: + resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} + engines: {node: '>=10'} + hasBin: true + + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + shiki@1.12.0: + resolution: {integrity: sha512-BuAxWOm5JhRcbSOl7XCei8wGjgJJonnV0oipUupPY58iULxUGyHhW5CF+9FRMuM1pcJ5cGEJGll1LusX6FwpPA==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} -packages: + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} - /@aashutoshrathi/word-wrap@1.2.6: - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - dev: true + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} - /@bcoe/v8-coverage@0.2.3: - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - dev: true + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} - /@cto.af/unicode-trie@2.0.0: - resolution: {integrity: sha512-mFj4uMV44WsvLiTa3Rl/o8VCNBIod0oyyVf4vW5nCProaO/Pxz/CUL9TSsPb6hoPsSrJLekRB+2QcfF6Defxcg==} + test-exclude@7.0.1: + resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} engines: {node: '>=18'} + + text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + ts-api-utils@1.3.0: + resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + typedoc@0.26.5: + resolution: {integrity: sha512-Vn9YKdjKtDZqSk+by7beZ+xzkkr8T8CYoiasqyt4TTRFy5+UHzL/mF/o4wGBjRF+rlWQHDb0t6xCpA3JNL5phg==} + engines: {node: '>= 18'} + hasBin: true + peerDependencies: + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x + + typescript@5.5.4: + resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} + engines: {node: '>=14.17'} + hasBin: true + + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + + undici-types@6.11.1: + resolution: {integrity: sha512-mIDEX2ek50x0OlRgxryxsenE5XaQD4on5U2inY7RApK3SOJpofyw7uW2AyfMKkhAxXIceo2DeWGVGwyvng1GNQ==} + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + v8-to-istanbul@9.2.0: + resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} + engines: {node: '>=10.12.0'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + + yaml@2.5.0: + resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} + engines: {node: '>= 14'} + hasBin: true + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@aashutoshrathi/word-wrap@1.2.6': {} + + '@bcoe/v8-coverage@0.2.3': {} + + '@cto.af/unicode-trie@2.0.1': dependencies: fflate: 0.8.2 - dev: false - /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + '@eslint-community/eslint-utils@4.4.0(eslint@9.8.0)': dependencies: - eslint: 8.57.0 + eslint: 9.8.0 eslint-visitor-keys: 3.4.3 - dev: true - /@eslint-community/regexpp@4.10.0: - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - dev: true + '@eslint-community/regexpp@4.11.0': {} - /@eslint/eslintrc@2.1.4: - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint/config-array@0.17.1': + dependencies: + '@eslint/object-schema': 2.1.4 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/eslintrc@3.1.0': dependencies: ajv: 6.12.6 - debug: 4.3.4(supports-color@8.1.1) - espree: 9.6.1 - globals: 13.24.0 + debug: 4.3.4 + espree: 10.1.0 + globals: 14.0.0 ignore: 5.3.1 import-fresh: 3.3.0 js-yaml: 4.1.0 @@ -83,396 +1007,223 @@ packages: strip-json-comments: 3.1.1 transitivePeerDependencies: - supports-color - dev: true - /@eslint/js@8.57.0: - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true + '@eslint/js@9.8.0': {} - /@humanwhocodes/config-array@0.11.14: - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4(supports-color@8.1.1) - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true + '@eslint/object-schema@2.1.4': {} - /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - dev: true + '@humanwhocodes/module-importer@1.0.1': {} - /@humanwhocodes/object-schema@2.0.2: - resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} - dev: true + '@humanwhocodes/retry@0.3.0': {} - /@isaacs/cliui@8.0.2: - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} + '@isaacs/cliui@8.0.2': dependencies: string-width: 5.1.2 - string-width-cjs: /string-width@4.2.3 + string-width-cjs: string-width@4.2.3 strip-ansi: 7.1.0 - strip-ansi-cjs: /strip-ansi@6.0.1 + strip-ansi-cjs: strip-ansi@6.0.1 wrap-ansi: 8.1.0 - wrap-ansi-cjs: /wrap-ansi@7.0.0 - dev: true + wrap-ansi-cjs: wrap-ansi@7.0.0 - /@istanbuljs/schema@0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} - dev: true + '@istanbuljs/schema@0.1.3': {} - /@jridgewell/resolve-uri@3.1.2: - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} - engines: {node: '>=6.0.0'} - dev: true + '@jridgewell/resolve-uri@3.1.2': {} - /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - dev: true + '@jridgewell/sourcemap-codec@1.4.15': {} - /@jridgewell/trace-mapping@0.3.25: - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@jridgewell/trace-mapping@0.3.25': dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - dev: true - /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 - dev: true - /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - dev: true + '@nodelib/fs.stat@2.0.5': {} - /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + '@nodelib/fs.walk@1.2.8': dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - dev: true - /@peggyjs/eslint-config@3.2.4(eslint@8.57.0)(typescript@5.4.2): - resolution: {integrity: sha512-Mj6F0U2Sf8Pc3c9HA3N+4GswSWf4yaeiRQV7AmdUZNLUzieDllMLf9QWzV/vSkjo/FiDa9Yu2DOTmiEdpxJ5nA==} - engines: {node: '>=18'} - peerDependencies: - '@typescript-eslint/eslint-plugin': ~7 - '@typescript-eslint/parser': ~7 - eslint: ~8 - eslint-plugin-mocha: ~10 - typescript: ~5 - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - '@typescript-eslint/parser': - optional: true - eslint-plugin-mocha: - optional: true - typescript: - optional: true + '@peggyjs/eslint-config@4.0.3(eslint@9.8.0)(typescript@5.5.4)': dependencies: - '@stylistic/eslint-plugin': 1.6.2(eslint@8.57.0)(typescript@5.4.2) - eslint: 8.57.0 - globals: 14.0.0 - typescript: 5.4.2 + '@stylistic/eslint-plugin': 2.6.0(eslint@9.8.0)(typescript@5.5.4) + globals: 15.8.0 transitivePeerDependencies: + - eslint - supports-color - dev: true + - typescript - /@pkgjs/parseargs@0.11.0: - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - requiresBuild: true - dev: true + '@pkgjs/parseargs@0.11.0': optional: true - /@stylistic/eslint-plugin-js@1.6.2(eslint@8.57.0): - resolution: {integrity: sha512-ndT6X2KgWGxv8101pdMOxL8pihlYIHcOv3ICd70cgaJ9exwkPn8hJj4YQwslxoAlre1TFHnXd/G1/hYXgDrjIA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' + '@shikijs/core@1.12.0': dependencies: - '@types/eslint': 8.56.5 - acorn: 8.11.3 - escape-string-regexp: 4.0.0 - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - dev: true + '@types/hast': 3.0.4 - /@stylistic/eslint-plugin-jsx@1.6.2(eslint@8.57.0): - resolution: {integrity: sha512-hbbouazSJbHD/fshBIOLh9JgtSphKNoTCfHLSNBjAkXLK+GR4i2jhEZZF9P0mtXrNuy2WWInmpq/g0pfWBmSBA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' + '@stylistic/eslint-plugin-js@2.6.0(eslint@9.8.0)': + dependencies: + '@types/eslint': 9.6.0 + acorn: 8.12.1 + eslint: 9.8.0 + eslint-visitor-keys: 4.0.0 + espree: 10.1.0 + + '@stylistic/eslint-plugin-jsx@2.6.0(eslint@9.8.0)': dependencies: - '@stylistic/eslint-plugin-js': 1.6.2(eslint@8.57.0) - '@types/eslint': 8.56.5 - eslint: 8.57.0 + '@stylistic/eslint-plugin-js': 2.6.0(eslint@9.8.0) + '@types/eslint': 9.6.0 + eslint: 9.8.0 estraverse: 5.3.0 - picomatch: 4.0.1 - dev: true + picomatch: 4.0.2 - /@stylistic/eslint-plugin-plus@1.6.2(eslint@8.57.0)(typescript@5.4.2): - resolution: {integrity: sha512-EDMwa6gzKw4bXRqdIAUvZDfIgwotbjJs8o+vYE22chAYtVAnA0Pcq+cPx0Uk35t2gvJWb5OaLDjqA6oy1tD0jg==} - peerDependencies: - eslint: '*' + '@stylistic/eslint-plugin-plus@2.6.0(eslint@9.8.0)(typescript@5.5.4)': dependencies: - '@types/eslint': 8.56.5 - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.2) - eslint: 8.57.0 + '@types/eslint': 9.6.0 + '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.5.4) + eslint: 9.8.0 transitivePeerDependencies: - supports-color - typescript - dev: true - /@stylistic/eslint-plugin-ts@1.6.2(eslint@8.57.0)(typescript@5.4.2): - resolution: {integrity: sha512-FizV58em0OjO/xFHRIy/LJJVqzxCNmYC/xVtKDf8aGDRgZpLo+lkaBKfBrbMkAGzhBKbYj+iLEFI4WEl6aVZGQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' + '@stylistic/eslint-plugin-ts@2.6.0(eslint@9.8.0)(typescript@5.5.4)': dependencies: - '@stylistic/eslint-plugin-js': 1.6.2(eslint@8.57.0) - '@types/eslint': 8.56.5 - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.2) - eslint: 8.57.0 + '@stylistic/eslint-plugin-js': 2.6.0(eslint@9.8.0) + '@types/eslint': 9.6.0 + '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.5.4) + eslint: 9.8.0 transitivePeerDependencies: - supports-color - typescript - dev: true - /@stylistic/eslint-plugin@1.6.2(eslint@8.57.0)(typescript@5.4.2): - resolution: {integrity: sha512-EFnVcKOE5HTiMlVwisL9hHjz8a69yBbJRscWF/z+/vl6M4ew8NVrBlY8ea7KdV8QtyCY4Yapmsbg5ZDfhWlEgg==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' + '@stylistic/eslint-plugin@2.6.0(eslint@9.8.0)(typescript@5.5.4)': dependencies: - '@stylistic/eslint-plugin-js': 1.6.2(eslint@8.57.0) - '@stylistic/eslint-plugin-jsx': 1.6.2(eslint@8.57.0) - '@stylistic/eslint-plugin-plus': 1.6.2(eslint@8.57.0)(typescript@5.4.2) - '@stylistic/eslint-plugin-ts': 1.6.2(eslint@8.57.0)(typescript@5.4.2) - '@types/eslint': 8.56.5 - eslint: 8.57.0 + '@stylistic/eslint-plugin-js': 2.6.0(eslint@9.8.0) + '@stylistic/eslint-plugin-jsx': 2.6.0(eslint@9.8.0) + '@stylistic/eslint-plugin-plus': 2.6.0(eslint@9.8.0)(typescript@5.5.4) + '@stylistic/eslint-plugin-ts': 2.6.0(eslint@9.8.0)(typescript@5.5.4) + '@types/eslint': 9.6.0 + eslint: 9.8.0 transitivePeerDependencies: - supports-color - typescript - dev: true - /@types/eslint@8.56.5: - resolution: {integrity: sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==} + '@types/eslint@9.6.0': dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 - dev: true - /@types/estree@1.0.5: - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - dev: true + '@types/estree@1.0.5': {} - /@types/istanbul-lib-coverage@2.0.6: - resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} - dev: true + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.2 - /@types/json-schema@7.0.15: - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - dev: true + '@types/istanbul-lib-coverage@2.0.6': {} + + '@types/json-schema@7.0.15': {} - /@types/node@20.11.25: - resolution: {integrity: sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==} + '@types/node@22.0.2': dependencies: - undici-types: 5.26.5 - dev: true + undici-types: 6.11.1 - /@types/semver@7.5.8: - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - dev: true + '@types/unist@3.0.2': {} - /@typescript-eslint/scope-manager@6.21.0: - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/scope-manager@8.0.0': dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 - dev: true + '@typescript-eslint/types': 8.0.0 + '@typescript-eslint/visitor-keys': 8.0.0 - /@typescript-eslint/types@6.21.0: - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} - engines: {node: ^16.0.0 || >=18.0.0} - dev: true + '@typescript-eslint/types@8.0.0': {} - /@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.2): - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + '@typescript-eslint/typescript-estree@8.0.0(typescript@5.5.4)': dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4(supports-color@8.1.1) + '@typescript-eslint/types': 8.0.0 + '@typescript-eslint/visitor-keys': 8.0.0 + debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - minimatch: 9.0.3 + minimatch: 9.0.5 semver: 7.6.0 - ts-api-utils: 1.2.1(typescript@5.4.2) - typescript: 5.4.2 + ts-api-utils: 1.3.0(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 transitivePeerDependencies: - supports-color - dev: true - /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.4.2): - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + '@typescript-eslint/utils@8.0.0(eslint@9.8.0)(typescript@5.5.4)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.2) - eslint: 8.57.0 - semver: 7.6.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0) + '@typescript-eslint/scope-manager': 8.0.0 + '@typescript-eslint/types': 8.0.0 + '@typescript-eslint/typescript-estree': 8.0.0(typescript@5.5.4) + eslint: 9.8.0 transitivePeerDependencies: - supports-color - typescript - dev: true - /@typescript-eslint/visitor-keys@6.21.0: - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/visitor-keys@8.0.0': dependencies: - '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/types': 8.0.0 eslint-visitor-keys: 3.4.3 - dev: true - - /@ungap/structured-clone@1.2.0: - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - dev: true - /acorn-jsx@5.3.2(acorn@8.11.3): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + acorn-jsx@5.3.2(acorn@8.12.1): dependencies: - acorn: 8.11.3 - dev: true + acorn: 8.12.1 - /acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true + acorn@8.12.1: {} - /ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ajv@6.12.6: dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 - dev: true - /ansi-colors@4.1.1: - resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} - engines: {node: '>=6'} - dev: true - - /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - dev: true + ansi-colors@4.1.3: {} - /ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - dev: true + ansi-regex@5.0.1: {} - /ansi-sequence-parser@1.1.1: - resolution: {integrity: sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==} - dev: true + ansi-regex@6.0.1: {} - /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} + ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 - dev: true - /ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - dev: true + ansi-styles@6.2.1: {} - /anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} + anymatch@3.1.3: dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 - dev: true - /argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - dev: true + argparse@2.0.1: {} - /array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - dev: true + array-union@2.1.0: {} - /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - dev: true + balanced-match@1.0.2: {} - /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - dev: true + binary-extensions@2.2.0: {} - /brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 - dev: true - /brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + brace-expansion@2.0.1: dependencies: balanced-match: 1.0.2 - dev: true - /braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} + braces@3.0.2: dependencies: fill-range: 7.0.1 - dev: true - /browser-stdout@1.3.1: - resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} - dev: true + browser-stdout@1.3.1: {} - /c8@9.1.0: - resolution: {integrity: sha512-mBWcT5iqNir1zIkzSPyI3NCR9EZCVI3WUD+AVO17MVWTSFNyUueXE82qTeampNtTr+ilN/5Ua3j24LgbCKjDVg==} - engines: {node: '>=14.14.0'} - hasBin: true + c8@10.1.2: dependencies: '@bcoe/v8-coverage': 0.2.3 '@istanbuljs/schema': 0.1.3 @@ -481,33 +1232,21 @@ packages: istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-reports: 3.1.7 - test-exclude: 6.0.0 + test-exclude: 7.0.1 v8-to-istanbul: 9.2.0 yargs: 17.7.2 yargs-parser: 21.1.1 - dev: true - /callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - dev: true + callsites@3.1.0: {} - /camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - dev: true + camelcase@6.3.0: {} - /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} + chalk@4.1.2: dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 - dev: true - /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} + chokidar@3.5.3: dependencies: anymatch: 3.1.3 braces: 3.0.2 @@ -518,164 +1257,118 @@ packages: readdirp: 3.6.0 optionalDependencies: fsevents: 2.3.3 - dev: true - /cliui@7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + cliui@7.0.4: dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - dev: true - /cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} + cliui@8.0.1: dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - dev: true - /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} + color-convert@2.0.1: dependencies: color-name: 1.1.4 - dev: true - /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - dev: true + color-name@1.1.4: {} - /concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - dev: true + concat-map@0.0.1: {} - /convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: true + convert-source-map@2.0.0: {} - /cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} + cross-spawn@7.0.3: dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 - dev: true - /debug@4.3.4(supports-color@8.1.1): - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true + debug@4.3.4: + dependencies: + ms: 2.1.2 + + debug@4.3.6(supports-color@8.1.1): dependencies: ms: 2.1.2 + optionalDependencies: supports-color: 8.1.1 - dev: true - /decamelize@4.0.0: - resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} - engines: {node: '>=10'} - dev: true + decamelize@4.0.0: {} - /deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - dev: true + deep-is@0.1.4: {} - /diff@5.0.0: - resolution: {integrity: sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==} - engines: {node: '>=0.3.1'} - dev: true + diff@5.2.0: {} - /dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 - dev: true - /doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - dependencies: - esutils: 2.0.3 - dev: true + eastasianwidth@0.2.0: {} - /eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - dev: true + emoji-regex@8.0.0: {} - /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - dev: true + emoji-regex@9.2.2: {} - /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - dev: true + entities@4.5.0: {} - /escalade@3.1.2: - resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} - engines: {node: '>=6'} - dev: true + escalade@3.1.2: {} - /escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - dev: true + escape-string-regexp@4.0.0: {} - /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-plugin-mocha@10.5.0(eslint@9.8.0): + dependencies: + eslint: 9.8.0 + eslint-utils: 3.0.0(eslint@9.8.0) + globals: 13.24.0 + rambda: 7.5.0 + + eslint-scope@8.0.2: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 - dev: true - /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true + eslint-utils@3.0.0(eslint@9.8.0): + dependencies: + eslint: 9.8.0 + eslint-visitor-keys: 2.1.0 - /eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true + eslint-visitor-keys@2.1.0: {} + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.0.0: {} + + eslint@9.8.0: dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0) + '@eslint-community/regexpp': 4.11.0 + '@eslint/config-array': 0.17.1 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.8.0 '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.3.0 '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.4(supports-color@8.1.1) - doctrine: 3.0.0 + debug: 4.3.4 escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 + eslint-scope: 8.0.2 + eslint-visitor-keys: 4.0.0 + espree: 10.1.0 esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 + file-entry-cache: 8.0.0 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 ignore: 5.3.1 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 - js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 levn: 0.4.1 lodash.merge: 4.6.2 @@ -686,202 +1379,122 @@ packages: text-table: 0.2.0 transitivePeerDependencies: - supports-color - dev: true - /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + espree@10.1.0: dependencies: - acorn: 8.11.3 - acorn-jsx: 5.3.2(acorn@8.11.3) - eslint-visitor-keys: 3.4.3 - dev: true + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 4.0.0 - /esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} + esquery@1.5.0: dependencies: estraverse: 5.3.0 - dev: true - /esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} + esrecurse@4.3.0: dependencies: estraverse: 5.3.0 - dev: true - /estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - dev: true + estraverse@5.3.0: {} - /esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - dev: true + esutils@2.0.3: {} - /fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - dev: true + fast-deep-equal@3.1.3: {} - /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} + fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 - dev: true - /fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - dev: true + fast-json-stable-stringify@2.1.0: {} - /fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - dev: true + fast-levenshtein@2.0.6: {} - /fastq@1.17.1: - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + fastq@1.17.1: dependencies: reusify: 1.0.4 - dev: true - /fflate@0.8.2: - resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} - dev: false + fflate@0.8.2: {} - /file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} + file-entry-cache@8.0.0: dependencies: - flat-cache: 3.2.0 - dev: true + flat-cache: 4.0.1 - /fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} + fill-range@7.0.1: dependencies: to-regex-range: 5.0.1 - dev: true - /find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} + find-up@5.0.0: dependencies: locate-path: 6.0.0 path-exists: 4.0.0 - dev: true - /flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} + flat-cache@4.0.1: dependencies: flatted: 3.3.1 keyv: 4.5.4 - rimraf: 3.0.2 - dev: true - /flat@5.0.2: - resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} - hasBin: true - dev: true + flat@5.0.2: {} - /flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - dev: true + flatted@3.3.1: {} - /foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} - engines: {node: '>=14'} + foreground-child@3.1.1: dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 - dev: true - /fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - dev: true + fs.realpath@1.0.0: {} - /fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - requiresBuild: true - dev: true + fsevents@2.3.3: optional: true - /get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - dev: true + get-caller-file@2.0.5: {} - /glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 - dev: true - /glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} + glob-parent@6.0.2: dependencies: is-glob: 4.0.3 - dev: true - /glob@10.3.10: - resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true + glob@10.4.5: dependencies: foreground-child: 3.1.1 - jackspeak: 2.3.6 - minimatch: 9.0.3 - minipass: 7.0.4 - path-scurry: 1.10.1 - dev: true + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.0 + path-scurry: 1.11.1 - /glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + glob@11.0.0: dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true + foreground-child: 3.1.1 + jackspeak: 4.0.1 + minimatch: 10.0.1 + minipass: 7.1.2 + package-json-from-dist: 1.0.0 + path-scurry: 2.0.0 - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} + glob@8.1.0: dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 5.0.1 + minimatch: 5.1.6 once: 1.4.0 - dev: true - /globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} + globals@13.24.0: dependencies: type-fest: 0.20.2 - dev: true - /globals@14.0.0: - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} - engines: {node: '>=18'} - dev: true + globals@14.0.0: {} - /globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} + globals@15.8.0: {} + + globby@11.1.0: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -889,310 +1502,196 @@ packages: ignore: 5.3.1 merge2: 1.4.1 slash: 3.0.0 - dev: true - - /graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - dev: true - /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - dev: true + has-flag@4.0.0: {} - /he@1.2.0: - resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} - hasBin: true - dev: true + he@1.2.0: {} - /html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - dev: true + html-escaper@2.0.2: {} - /ignore@5.3.1: - resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} - engines: {node: '>= 4'} - dev: true + ignore@5.3.1: {} - /import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} + import-fresh@3.3.0: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 - dev: true - /imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - dev: true + imurmurhash@0.1.4: {} - /inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + inflight@1.0.6: dependencies: once: 1.4.0 wrappy: 1.0.2 - dev: true - /inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - dev: true + inherits@2.0.4: {} - /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} + is-binary-path@2.1.0: dependencies: binary-extensions: 2.2.0 - dev: true - /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - dev: true + is-extglob@2.1.1: {} - /is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - dev: true + is-fullwidth-code-point@3.0.0: {} - /is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} + is-glob@4.0.3: dependencies: is-extglob: 2.1.1 - dev: true - /is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - dev: true + is-number@7.0.0: {} - /is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - dev: true + is-path-inside@3.0.3: {} - /is-plain-obj@2.1.0: - resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} - engines: {node: '>=8'} - dev: true + is-plain-obj@2.1.0: {} - /is-unicode-supported@0.1.0: - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} - engines: {node: '>=10'} - dev: true + is-unicode-supported@0.1.0: {} - /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - dev: true + isexe@2.0.0: {} - /istanbul-lib-coverage@3.2.2: - resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} - engines: {node: '>=8'} - dev: true + istanbul-lib-coverage@3.2.2: {} - /istanbul-lib-report@3.0.1: - resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} - engines: {node: '>=10'} + istanbul-lib-report@3.0.1: dependencies: istanbul-lib-coverage: 3.2.2 make-dir: 4.0.0 supports-color: 7.2.0 - dev: true - /istanbul-reports@3.1.7: - resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} - engines: {node: '>=8'} + istanbul-reports@3.1.7: dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - dev: true - /jackspeak@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} - engines: {node: '>=14'} + jackspeak@3.4.3: dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - dev: true - /js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true + jackspeak@4.0.1: dependencies: - argparse: 2.0.1 - dev: true + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 - /json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - dev: true + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 - /json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - dev: true + json-buffer@3.0.1: {} - /json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - dev: true + json-schema-traverse@0.4.1: {} - /jsonc-parser@3.2.1: - resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} - dev: true + json-stable-stringify-without-jsonify@1.0.1: {} - /keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + keyv@4.5.4: dependencies: json-buffer: 3.0.1 - dev: true - /levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} + levn@0.4.1: dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 - dev: true - /locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + + locate-path@6.0.0: dependencies: p-locate: 5.0.0 - dev: true - /lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - dev: true + lodash.merge@4.6.2: {} - /log-symbols@4.1.0: - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} - engines: {node: '>=10'} + log-symbols@4.1.0: dependencies: chalk: 4.1.2 is-unicode-supported: 0.1.0 - dev: true - /lru-cache@10.2.0: - resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} - engines: {node: 14 || >=16.14} - dev: true + lru-cache@10.2.0: {} - /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} + lru-cache@11.0.0: {} + + lru-cache@6.0.0: dependencies: yallist: 4.0.0 - dev: true - /lunr@2.3.9: - resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} - dev: true + lunr@2.3.9: {} - /make-dir@4.0.0: - resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} - engines: {node: '>=10'} + make-dir@4.0.0: dependencies: semver: 7.6.0 - dev: true - /marked@4.3.0: - resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==} - engines: {node: '>= 12'} - hasBin: true - dev: true + markdown-it@14.1.0: + dependencies: + argparse: 2.0.1 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 - /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - dev: true + mdurl@2.0.0: {} - /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} + merge2@1.4.1: {} + + micromatch@4.0.5: dependencies: braces: 3.0.2 picomatch: 2.3.1 - dev: true - /minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + minimatch@10.0.1: + dependencies: + brace-expansion: 2.0.1 + + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 - dev: true - /minimatch@5.0.1: - resolution: {integrity: sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==} - engines: {node: '>=10'} + minimatch@5.1.6: dependencies: brace-expansion: 2.0.1 - dev: true - /minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 - dev: true - /minipass@7.0.4: - resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} - engines: {node: '>=16 || 14 >=14.17'} - dev: true + minipass@7.1.2: {} - /mocha@10.3.0: - resolution: {integrity: sha512-uF2XJs+7xSLsrmIvn37i/wnc91nw7XjOQB8ccyx5aEgdnohr7n+rEiZP23WkCYHjilR6+EboEnbq/ZQDz4LSbg==} - engines: {node: '>= 14.0.0'} - hasBin: true + mocha@10.7.0: dependencies: - ansi-colors: 4.1.1 + ansi-colors: 4.1.3 browser-stdout: 1.3.1 chokidar: 3.5.3 - debug: 4.3.4(supports-color@8.1.1) - diff: 5.0.0 + debug: 4.3.6(supports-color@8.1.1) + diff: 5.2.0 escape-string-regexp: 4.0.0 find-up: 5.0.0 glob: 8.1.0 he: 1.2.0 js-yaml: 4.1.0 log-symbols: 4.1.0 - minimatch: 5.0.1 + minimatch: 5.1.6 ms: 2.1.3 - serialize-javascript: 6.0.0 + serialize-javascript: 6.0.2 strip-json-comments: 3.1.1 supports-color: 8.1.1 - workerpool: 6.2.1 + workerpool: 6.5.1 yargs: 16.2.0 - yargs-parser: 20.2.4 + yargs-parser: 20.2.9 yargs-unparser: 2.0.0 - dev: true - /ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - dev: true + ms@2.1.2: {} - /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - dev: true + ms@2.1.3: {} - /natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - dev: true + natural-compare@1.4.0: {} - /normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - dev: true + normalize-path@3.0.0: {} - /once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + once@1.4.0: dependencies: wrappy: 1.0.2 - dev: true - /optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} + optionator@0.9.3: dependencies: '@aashutoshrathi/word-wrap': 1.2.6 deep-is: 0.1.4 @@ -1200,384 +1699,214 @@ packages: levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 - dev: true - /p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} + p-limit@3.1.0: dependencies: yocto-queue: 0.1.0 - dev: true - /p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} + p-locate@5.0.0: dependencies: p-limit: 3.1.0 - dev: true - /parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} + package-json-from-dist@1.0.0: {} + + parent-module@1.0.1: dependencies: callsites: 3.1.0 - dev: true - /path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - dev: true - - /path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - dev: true + path-exists@4.0.0: {} - /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - dev: true + path-key@3.1.1: {} - /path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} - engines: {node: '>=16 || 14 >=14.17'} + path-scurry@1.11.1: dependencies: lru-cache: 10.2.0 - minipass: 7.0.4 - dev: true + minipass: 7.1.2 - /path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - dev: true + path-scurry@2.0.0: + dependencies: + lru-cache: 11.0.0 + minipass: 7.1.2 - /picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - dev: true + path-type@4.0.0: {} - /picomatch@4.0.1: - resolution: {integrity: sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg==} - engines: {node: '>=12'} - dev: true + picomatch@2.3.1: {} - /prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - dev: true + picomatch@4.0.2: {} - /punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - dev: true + prelude-ls@1.2.1: {} - /queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - dev: true + punycode.js@2.3.1: {} - /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + rambda@7.5.0: {} + + randombytes@2.1.0: dependencies: safe-buffer: 5.2.1 - dev: true - /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} + readdirp@3.6.0: dependencies: picomatch: 2.3.1 - dev: true - /require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - dev: true - - /resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - dev: true + require-directory@2.1.1: {} - /reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - dev: true + resolve-from@4.0.0: {} - /rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - hasBin: true - dependencies: - glob: 7.2.3 - dev: true + reusify@1.0.4: {} - /rimraf@5.0.5: - resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} - engines: {node: '>=14'} - hasBin: true + rimraf@6.0.1: dependencies: - glob: 10.3.10 - dev: true + glob: 11.0.0 + package-json-from-dist: 1.0.0 - /run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 - dev: true - /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - dev: true + safe-buffer@5.2.1: {} - /semver@7.6.0: - resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} - engines: {node: '>=10'} - hasBin: true + semver@7.6.0: dependencies: lru-cache: 6.0.0 - dev: true - /serialize-javascript@6.0.0: - resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} + serialize-javascript@6.0.2: dependencies: randombytes: 2.1.0 - dev: true - /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 - dev: true - /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - dev: true + shebang-regex@3.0.0: {} - /shiki@0.14.7: - resolution: {integrity: sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==} + shiki@1.12.0: dependencies: - ansi-sequence-parser: 1.1.1 - jsonc-parser: 3.2.1 - vscode-oniguruma: 1.7.0 - vscode-textmate: 8.0.0 - dev: true + '@shikijs/core': 1.12.0 + '@types/hast': 3.0.4 - /signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - dev: true + signal-exit@4.1.0: {} - /slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - dev: true + slash@3.0.0: {} - /string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} + string-width@4.2.3: dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - dev: true - /string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} + string-width@5.1.2: dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 - dev: true - /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 - dev: true - /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} + strip-ansi@7.1.0: dependencies: ansi-regex: 6.0.1 - dev: true - /strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - dev: true + strip-json-comments@3.1.1: {} - /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} + supports-color@7.2.0: dependencies: has-flag: 4.0.0 - dev: true - /supports-color@8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} + supports-color@8.1.1: dependencies: has-flag: 4.0.0 - dev: true - /test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} + test-exclude@7.0.1: dependencies: '@istanbuljs/schema': 0.1.3 - glob: 7.2.3 - minimatch: 3.1.2 - dev: true + glob: 10.4.5 + minimatch: 9.0.5 - /text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - dev: true + text-table@0.2.0: {} - /to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} + to-regex-range@5.0.1: dependencies: is-number: 7.0.0 - dev: true - /ts-api-utils@1.2.1(typescript@5.4.2): - resolution: {integrity: sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' + ts-api-utils@1.3.0(typescript@5.5.4): dependencies: - typescript: 5.4.2 - dev: true + typescript: 5.5.4 - /type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} + type-check@0.4.0: dependencies: prelude-ls: 1.2.1 - dev: true - /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - dev: true + type-fest@0.20.2: {} - /typedoc@0.25.11(typescript@5.4.2): - resolution: {integrity: sha512-5MbI1W/FOG6oXsd8bdssQidSTeKh8Kt3xA5uKVzI+K99uzP8EGN45uPnPvQesyaWdD+89s4wCQdtWEd8QUbiRg==} - engines: {node: '>= 16'} - hasBin: true - peerDependencies: - typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x + typedoc@0.26.5(typescript@5.5.4): dependencies: lunr: 2.3.9 - marked: 4.3.0 - minimatch: 9.0.3 - shiki: 0.14.7 - typescript: 5.4.2 - dev: true - - /typescript@5.4.2: - resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} - engines: {node: '>=14.17'} - hasBin: true - dev: true + markdown-it: 14.1.0 + minimatch: 9.0.5 + shiki: 1.12.0 + typescript: 5.5.4 + yaml: 2.5.0 - /undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - dev: true + typescript@5.5.4: {} - /uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + uc.micro@2.1.0: {} + + undici-types@6.11.1: {} + + uri-js@4.4.1: dependencies: punycode: 2.3.1 - dev: true - /v8-to-istanbul@9.2.0: - resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} - engines: {node: '>=10.12.0'} + v8-to-istanbul@9.2.0: dependencies: '@jridgewell/trace-mapping': 0.3.25 '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 - dev: true - - /vscode-oniguruma@1.7.0: - resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==} - dev: true - /vscode-textmate@8.0.0: - resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==} - dev: true - - /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true + which@2.0.2: dependencies: isexe: 2.0.0 - dev: true - /workerpool@6.2.1: - resolution: {integrity: sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==} - dev: true + workerpool@6.5.1: {} - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 - dev: true - /wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} + wrap-ansi@8.1.0: dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 - dev: true - /wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - dev: true + wrappy@1.0.2: {} - /y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - dev: true + y18n@5.0.8: {} - /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - dev: true + yallist@4.0.0: {} - /yargs-parser@20.2.4: - resolution: {integrity: sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==} - engines: {node: '>=10'} - dev: true + yaml@2.5.0: {} - /yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} - dev: true + yargs-parser@20.2.9: {} - /yargs-unparser@2.0.0: - resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} - engines: {node: '>=10'} + yargs-parser@21.1.1: {} + + yargs-unparser@2.0.0: dependencies: camelcase: 6.3.0 decamelize: 4.0.0 flat: 5.0.2 is-plain-obj: 2.1.0 - dev: true - /yargs@16.2.0: - resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} - engines: {node: '>=10'} + yargs@16.2.0: dependencies: cliui: 7.0.4 escalade: 3.1.2 @@ -1585,12 +1914,9 @@ packages: require-directory: 2.1.1 string-width: 4.2.3 y18n: 5.0.8 - yargs-parser: 20.2.4 - dev: true + yargs-parser: 20.2.9 - /yargs@17.7.2: - resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} - engines: {node: '>=12'} + yargs@17.7.2: dependencies: cliui: 8.0.1 escalade: 3.1.2 @@ -1599,9 +1925,5 @@ packages: string-width: 4.2.3 y18n: 5.0.8 yargs-parser: 21.1.1 - dev: true - /yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - dev: true + yocto-queue@0.1.0: {} diff --git a/test/conformance.test.js b/test/conformance.test.js new file mode 100644 index 0000000..a0ddfe4 --- /dev/null +++ b/test/conformance.test.js @@ -0,0 +1,37 @@ +import { assertBreaks } from "./utils.js"; + +describe("conformance tests use example 7", () => { + const opts = { + string: true, + example7: true, + }; + + it("has a new LB13", () => { + assertBreaks("9}", [2], opts); // NU CL + assertBreaks("a}", [2], opts); // AL CL + assertBreaks("9)", [2], opts); // NU CP + assertBreaks("a)", [2], opts); // AL CP + assertBreaks("9!", [2], opts); // NU EX + assertBreaks("a!", [2], opts); // AL EX + assertBreaks("9,", [2], opts); // NU IS + assertBreaks("a,", [2], opts); // AL IS + assertBreaks("9/", [2], opts); // NU SY + assertBreaks("a/", [2], opts); // AL SY + }); + + it("has a new LB25", () => { + assertBreaks("$9", [2], opts); + assertBreaks("%9", [2], opts); + assertBreaks("$(9", [3], opts); + assertBreaks("$-9", [3], opts); + assertBreaks("$-a", [2, 3], opts); + assertBreaks("$\x01", [2], opts); + assertBreaks("9999999\xb4", [7, 8], opts); + assertBreaks("9)\xb4", [2, 3], opts); + assertBreaks("9%\xb4", [2, 3], opts); + assertBreaks("9\xb4", [1, 2], opts); + assertBreaks("9)%\xb4", [3, 4], opts); + assertBreaks("(9\xb4", [2, 3], opts); + assertBreaks("aa", [2], opts); + }); +}); diff --git a/test/index.test.js b/test/index.test.js index 13fb8b9..863b367 100644 --- a/test/index.test.js +++ b/test/index.test.js @@ -1,4 +1,4 @@ -/* eslint-disable max-len */ +/* eslint-disable mocha/no-setup-in-describe */ import { Rules } from "../lib/index.js"; import assert from "assert"; import fs from "fs"; @@ -11,11 +11,11 @@ import fs from "fs"; // matches that specification, a test file has been made available in // [Tests14]." -describe("unicode line break tests", function() { +describe("unicode line break tests", () => { const data = fs.readFileSync(new URL("LineBreakTest.txt", import.meta.url), "utf8"); const lines = data.split("\n"); - return lines.forEach((line, i) => { + lines.forEach((line, i) => { const rowNumber = i + 1; if (!line || /^#/.test(line)) { return; } @@ -45,9 +45,7 @@ describe("unicode line break tests", function() { ); }); }); -}); -describe("options", () => { it("generates strings", () => { const breaker = new Rules({ string: true, diff --git a/test/lists.test.js b/test/lists.test.js new file mode 100644 index 0000000..3006891 --- /dev/null +++ b/test/lists.test.js @@ -0,0 +1,83 @@ +import { PASS, Rules } from "../lib/index.js"; +import assert from "node:assert/strict"; +import { assertBreaks } from "./utils.js"; + +const rc = new Rules(); +const numRules = rc.rules.length; + +describe("rule list manipulation", () => { + it("removes", () => { + const r = new Rules(); + const rem = r.removeRule("LB25"); + assert.equal(r.rules.length, numRules - 1); + assert.equal(rem.length, 1); + assert.equal(r.rules.findIndex(r => r.name === "LB25"), -1); + assert.deepEqual(r.removeRule(), []); + assert.deepEqual(r.removeRule("BAD_RULE_NAME"), []); + }); + + function newRule() { + return PASS; + } + + it("adds after", () => { + const r = new Rules(); + const lb2 = r.rules.findIndex(r => r.name === "LB02"); + r.addRuleAfter("LB02"); + assert.equal(r.rules.length, numRules); + assert.throws(() => r.addRuleAfter("BAD_RULE_NAME")); + const i = r.addRuleAfter("LB02", newRule); + assert.equal(r.rules.length, numRules + 1); + assert.equal(i, lb2 + 1); + assert.equal(r.rules[i], newRule); + }); + + it("adds before", () => { + const r = new Rules(); + const lb2 = r.rules.findIndex(r => r.name === "LB02"); + r.addRuleBefore("LB02"); + assert.equal(r.rules.length, numRules); + assert.equal(r.rules.length, numRules); + assert.throws(() => r.addRuleBefore("BAD_RULE_NAME")); + const i = r.addRuleBefore("LB02", newRule); + assert.equal(r.rules.length, numRules + 1); + assert.equal(i, lb2); + assert.equal(r.rules[i], newRule); + }); + + it("replaces", () => { + const r = new Rules(); + const lb2 = r.rules.findIndex(r => r.name === "LB02"); + const lr = r.replaceRule("LB02"); + // Put it back + r.rules.splice(lb2, 0, ...lr); + assert.equal(r.rules.findIndex(r => r.name === "LB02"), lb2); + assert.throws(() => r.replaceRule("BAD_RULE_NAME")); + r.replaceRule("LB02", newRule); + assert.equal(r.rules.length, numRules); + assert.equal(r.rules[lb2], newRule); + }); + + it("does verbose logging", () => { + const old = console.log; + const res = []; + console.log = (...args) => res.push(args); + assertBreaks("a b", [2, 3], { verbose: true }); + console.log = old; + }); + + it("handles bad rule lists", () => { + const r = new Rules(); + r.rules = []; + assert.deepEqual([...r.breaks("a b")], []); + }); + + it("uses extra properties", () => { + const r = new Rules(); + r.rules.unshift(state => { + state.setProp("foo", true); + return PASS; + }); + assert.deepEqual([...r.breaks("a")].map(b => b.props), [{ foo: true }]); + }); +}); diff --git a/test/rules.test.js b/test/rules.test.js index 6480f3f..fd29f7f 100644 --- a/test/rules.test.js +++ b/test/rules.test.js @@ -1,20 +1,6 @@ -import { PASS, Rules } from "../lib/index.js"; -import { LineBreak } from "../lib/LineBreak.js"; -import assert from "assert/strict"; - -function assertBreaks(str, expected, opts) { - const r = new Rules(opts); - const actual = [...r.breaks(str)].map(b => b.position); - assert.deepEqual( - actual, - expected, - JSON.stringify(str) + " " - + [...str].map(c => { - const cp = c.codePointAt(0); - return cp.toString(16).padStart(4, 0) + ":" + LineBreak.values[LineBreak.get(cp)]; - }).join(" ") - ); -} +import { Rules } from "../lib/index.js"; +import assert from "node:assert/strict"; +import { assertBreaks } from "./utils.js"; describe("Run rules in order", () => { it("produces one break for an empty string", () => { @@ -166,119 +152,3 @@ describe("Run rules in order", () => { assert.throws(() => [...r.breaks(" ")]); }); }); - -describe("rule list manipulation", () => { - const rc = new Rules(); - const numRules = rc.rules.length; - - it("removes", () => { - const r = new Rules(); - const rem = r.removeRule("LB25"); - assert.equal(r.rules.length, numRules - 1); - assert.equal(rem.length, 1); - assert.equal(r.rules.findIndex(r => r.name === "LB25"), -1); - assert.deepEqual(r.removeRule(), []); - assert.deepEqual(r.removeRule("BAD_RULE_NAME"), []); - }); - - function newRule() { - return PASS; - } - - it("adds after", () => { - const r = new Rules(); - const lb2 = r.rules.findIndex(r => r.name === "LB02"); - r.addRuleAfter("LB02"); - assert.equal(r.rules.length, numRules); - assert.throws(() => r.addRuleAfter("BAD_RULE_NAME")); - const i = r.addRuleAfter("LB02", newRule); - assert.equal(r.rules.length, numRules + 1); - assert.equal(i, lb2 + 1); - assert.equal(r.rules[i], newRule); - }); - - it("adds before", () => { - const r = new Rules(); - const lb2 = r.rules.findIndex(r => r.name === "LB02"); - r.addRuleBefore("LB02"); - assert.equal(r.rules.length, numRules); - assert.equal(r.rules.length, numRules); - assert.throws(() => r.addRuleBefore("BAD_RULE_NAME")); - const i = r.addRuleBefore("LB02", newRule); - assert.equal(r.rules.length, numRules + 1); - assert.equal(i, lb2); - assert.equal(r.rules[i], newRule); - }); - - it("replaces", () => { - const r = new Rules(); - const lb2 = r.rules.findIndex(r => r.name === "LB02"); - const lr = r.replaceRule("LB02"); - // Put it back - r.rules.splice(lb2, 0, ...lr); - assert.equal(r.rules.findIndex(r => r.name === "LB02"), lb2); - assert.throws(() => r.replaceRule("BAD_RULE_NAME")); - r.replaceRule("LB02", newRule); - assert.equal(r.rules.length, numRules); - assert.equal(r.rules[lb2], newRule); - }); - - it("does verbose logging", () => { - const old = console.log; - const res = []; - console.log = (...args) => res.push(args); - assertBreaks("a b", [2, 3], { verbose: true }); - console.log = old; - }); - - it("handles bad rule lists", () => { - const r = new Rules(); - r.rules = []; - assert.deepEqual([...r.breaks("a b")], []); - }); - - it("uses extra properties", () => { - const r = new Rules(); - r.rules.unshift(state => { - state.setProp("foo", true); - return PASS; - }); - assert.deepEqual([...r.breaks("a")].map(b => b.props), [{ foo: true }]); - }); -}); - -describe("conformance tests use example 7", () => { - const opts = { - string: true, - example7: true, - }; - - it("has a new LB13", () => { - assertBreaks("9}", [2], opts); // NU CL - assertBreaks("a}", [2], opts); // AL CL - assertBreaks("9)", [2], opts); // NU CP - assertBreaks("a)", [2], opts); // AL CP - assertBreaks("9!", [2], opts); // NU EX - assertBreaks("a!", [2], opts); // AL EX - assertBreaks("9,", [2], opts); // NU IS - assertBreaks("a,", [2], opts); // AL IS - assertBreaks("9/", [2], opts); // NU SY - assertBreaks("a/", [2], opts); // AL SY - }); - - it("has a new LB25", () => { - assertBreaks("$9", [2], opts); - assertBreaks("%9", [2], opts); - assertBreaks("$(9", [3], opts); - assertBreaks("$-9", [3], opts); - assertBreaks("$-a", [2, 3], opts); - assertBreaks("$\x01", [2], opts); - assertBreaks("9999999\xb4", [7, 8], opts); - assertBreaks("9)\xb4", [2, 3], opts); - assertBreaks("9%\xb4", [2, 3], opts); - assertBreaks("9\xb4", [1, 2], opts); - assertBreaks("9)%\xb4", [3, 4], opts); - assertBreaks("(9\xb4", [2, 3], opts); - assertBreaks("aa", [2], opts); - }); -}); diff --git a/test/state.test.js b/test/state.test.js index 8e355d1..3a0ed9f 100644 --- a/test/state.test.js +++ b/test/state.test.js @@ -14,6 +14,7 @@ describe("manage parsing state", () => { assert.equal(state.cur.len, 0); assert.deepEqual([...state.codePoints(0)].map(c => c.len), [1, 2, 3]); }); + it("iterates from the middle", () => { const str = "123"; const state = new BreakerState(str); diff --git a/test/utils.js b/test/utils.js new file mode 100644 index 0000000..210e85a --- /dev/null +++ b/test/utils.js @@ -0,0 +1,17 @@ +import { LineBreak } from "../lib/LineBreak.js"; +import { Rules } from "../lib/index.js"; +import assert from "node:assert/strict"; + +export function assertBreaks(str, expected, opts) { + const r = new Rules(opts); + const actual = [...r.breaks(str)].map(b => b.position); + assert.deepEqual( + actual, + expected, + JSON.stringify(str) + " " + + [...str].map(c => { + const cp = c.codePointAt(0); + return cp.toString(16).padStart(4, 0) + ":" + LineBreak.values[LineBreak.get(cp)]; + }).join(" ") + ); +} diff --git a/tools/generate_data.js b/tools/generate_data.js index 4e3a478..42f3c1f 100644 --- a/tools/generate_data.js +++ b/tools/generate_data.js @@ -14,10 +14,11 @@ async function processFile(name, defaultValue, errValue, transform) { const OUTPUT = path.resolve(__dirname, "..", "lib", `${name}.js`); // Cache data in local file. Requires Node v18+. + // eslint-disable-next-line no-useless-assignment let txt = null; try { txt = await fs.readFile(INPUT, "utf8"); - } catch (e) { + } catch (ignored) { const res = await fetch(`https://www.unicode.org/Public/UCD/latest/ucd/${name}.txt`); txt = await res.text(); fs.writeFile(INPUT, txt, "utf8"); @@ -36,7 +37,7 @@ async function processFile(name, defaultValue, errValue, transform) { ); for (const match of matches) { const val = transform(match[3]); - if (val == null) { + if (val === null) { continue; } const start = parseInt(match[1], 16); From a00252f7c9d5f010ac7259d86fc97a741aefa5bb Mon Sep 17 00:00:00 2001 From: Joe Hildebrand Date: Wed, 31 Jul 2024 22:33:34 -0500 Subject: [PATCH 2/5] Update docs --- docs/assets/icons.js | 31 ++--- docs/assets/icons.svg | 2 +- docs/assets/main.js | 9 +- docs/assets/navigation.js | 2 +- docs/assets/search.js | 2 +- docs/assets/style.css | 108 ++++++++++++------ docs/classes/break.Break.html | 12 +- docs/classes/index.Rules.html | 33 +++--- docs/classes/state.BreakerChar.html | 16 +-- docs/classes/state.BreakerState.html | 29 ----- docs/functions/index.Example7_13.html | 4 +- docs/functions/index.Example7_25.html | 4 +- docs/functions/index.LB02.html | 4 +- docs/functions/index.LB03.html | 4 +- docs/functions/index.LB04.html | 4 +- docs/functions/index.LB05.html | 4 +- docs/functions/index.LB06.html | 4 +- docs/functions/index.LB07.html | 4 +- docs/functions/index.LB08.html | 4 +- docs/functions/index.LB08a.html | 4 +- docs/functions/index.LB09.html | 4 +- docs/functions/index.LB10.html | 4 +- docs/functions/index.LB11.html | 4 +- docs/functions/index.LB12.html | 4 +- docs/functions/index.LB12a.html | 4 +- docs/functions/index.LB13.html | 4 +- docs/functions/index.LB14.html | 4 +- docs/functions/index.LB15a.html | 4 +- docs/functions/index.LB15b.html | 4 +- docs/functions/index.LB16.html | 4 +- docs/functions/index.LB17.html | 4 +- docs/functions/index.LB18.html | 4 +- docs/functions/index.LB19.html | 4 +- docs/functions/index.LB20.html | 4 +- docs/functions/index.LB21.html | 4 +- docs/functions/index.LB21a.html | 4 +- docs/functions/index.LB21b.html | 4 +- docs/functions/index.LB22.html | 4 +- docs/functions/index.LB23.html | 4 +- docs/functions/index.LB23a.html | 4 +- docs/functions/index.LB24.html | 4 +- docs/functions/index.LB25.html | 4 +- docs/functions/index.LB26.html | 4 +- docs/functions/index.LB27.html | 4 +- docs/functions/index.LB28.html | 4 +- docs/functions/index.LB28a.html | 4 +- docs/functions/index.LB29.html | 4 +- docs/functions/index.LB30.html | 4 +- docs/functions/index.LB30a.html | 4 +- docs/functions/index.LB30b.html | 4 +- docs/functions/index.LB31.html | 4 +- docs/functions/index.LBspacesStop.html | 4 +- docs/functions/state.resolve.html | 4 +- docs/index.html | 34 +++--- docs/interfaces/index.RulesOptions.html | 16 +-- docs/modules/EastAsianWidth.html | 4 +- docs/modules/LineBreak.html | 4 +- docs/modules/break.html | 4 +- docs/modules/index.html | 5 +- docs/modules/state.html | 5 +- docs/types/index.BreakRule.html | 2 +- .../EastAsianWidth.EastAsianWidth.html | 2 +- .../EastAsianWidth.generatedDate.html | 2 +- .../EastAsianWidth.inputFileDate.html | 2 +- docs/variables/EastAsianWidth.names.html | 2 +- docs/variables/EastAsianWidth.values.html | 2 +- docs/variables/EastAsianWidth.version.html | 2 +- docs/variables/LineBreak.LineBreak.html | 2 +- docs/variables/LineBreak.generatedDate.html | 2 +- docs/variables/LineBreak.inputFileDate.html | 2 +- docs/variables/LineBreak.names.html | 2 +- docs/variables/LineBreak.values.html | 2 +- docs/variables/LineBreak.version.html | 2 +- docs/variables/index.MAY_BREAK.html | 4 +- docs/variables/index.MUST_BREAK.html | 4 +- docs/variables/index.NO_BREAK.html | 4 +- docs/variables/index.PASS.html | 4 +- docs/variables/state.eot.html | 2 +- docs/variables/state.sot.html | 2 +- 79 files changed, 271 insertions(+), 263 deletions(-) delete mode 100644 docs/classes/state.BreakerState.html diff --git a/docs/assets/icons.js b/docs/assets/icons.js index b79c9e8..e88e8ca 100644 --- a/docs/assets/icons.js +++ b/docs/assets/icons.js @@ -1,15 +1,18 @@ -(function(svg) { - svg.innerHTML = ``; - svg.style.display = 'none'; - if (location.protocol === 'file:') { - if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', updateUseElements); - else updateUseElements() - function updateUseElements() { - document.querySelectorAll('use').forEach(el => { - if (el.getAttribute('href').includes('#icon-')) { - el.setAttribute('href', el.getAttribute('href').replace(/.*#/, '#')); - } - }); - } +(function() { + addIcons(); + function addIcons() { + if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons); + const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg")); + svg.innerHTML = `""`; + svg.style.display = "none"; + if (location.protocol === "file:") updateUseElements(); } -})(document.body.appendChild(document.createElementNS('http://www.w3.org/2000/svg', 'svg'))) \ No newline at end of file + + function updateUseElements() { + document.querySelectorAll("use").forEach(el => { + if (el.getAttribute("href").includes("#icon-")) { + el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#")); + } + }); + } +})() \ No newline at end of file diff --git a/docs/assets/icons.svg b/docs/assets/icons.svg index 7dead61..e371b8b 100644 --- a/docs/assets/icons.svg +++ b/docs/assets/icons.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/assets/main.js b/docs/assets/main.js index 1daeb69..3572881 100644 --- a/docs/assets/main.js +++ b/docs/assets/main.js @@ -1,8 +1,9 @@ "use strict"; -"use strict";(()=>{var Ce=Object.create;var ne=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var Me=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Fe=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Oe(e))!Re.call(t,i)&&i!==n&&ne(t,i,{get:()=>e[i],enumerable:!(r=Pe(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Ce(_e(t)):{},Fe(e||!t||!t.__esModule?ne(n,"default",{value:t,enumerable:!0}):n,t));var ae=Me((se,oe)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var d=t.utils.clone(n)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(n+=r[u+1]*i[d+1],u+=2,d+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),y=s.str.charAt(1),p;y in s.node.edges?p=s.node.edges[y]:(p=new t.TokenSet,s.node.edges[y]=p),s.str.length==1&&(p.final=!0),i.push({node:p,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;l1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof se=="object"?oe.exports=n():e.lunr=n()}(this,function(){return t})})()});var re=[];function G(t,e){re.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible()),document.body.style.display||(this.scrollToHash(),this.updateIndexVisibility())}createComponents(e){re.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}showPage(){document.body.style.display&&(document.body.style.removeProperty("display"),this.scrollToHash(),this.updateIndexVisibility())}scrollToHash(){if(location.hash){let e=document.getElementById(location.hash.substring(1));if(!e)return;e.scrollIntoView({behavior:"instant",block:"start"})}}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e&&!e.checkVisibility()){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r}}updateIndexVisibility(){let e=document.querySelector(".tsd-index-content"),n=e?.open;e&&(e.open=!0),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let i=Array.from(r.querySelectorAll(".tsd-index-link")).every(s=>s.offsetParent==null);r.style.display=i?"none":"block"}),e&&(e.open=n)}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(n&&n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let r=document.createElement("p");r.classList.add("warning"),r.textContent="This member is normally hidden due to your filter settings.",n.prepend(r)}}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent="Copied!",e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent="Copy"},100)},1e3)})})}};var ie=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var de=De(ae());async function le(t,e){if(!window.searchData)return;let n=await fetch(window.searchData),r=new Blob([await n.arrayBuffer()]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();t.data=i,t.index=de.Index.load(i.index),e.classList.remove("loading"),e.classList.add("ready")}function he(){let t=document.getElementById("tsd-search");if(!t)return;let e={base:t.dataset.base+"/"},n=document.getElementById("tsd-search-script");t.classList.add("loading"),n&&(n.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),n.addEventListener("load",()=>{le(e,t)}),le(e,t));let r=document.querySelector("#tsd-search input"),i=document.querySelector("#tsd-search .results");if(!r||!i)throw new Error("The input field or the result list wrapper was not found");let s=!1;i.addEventListener("mousedown",()=>s=!0),i.addEventListener("mouseup",()=>{s=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{s||(s=!1,t.classList.remove("has-focus"))}),Ae(t,i,r,e)}function Ae(t,e,n,r){n.addEventListener("input",ie(()=>{Ne(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ve(e,n):s.key=="Escape"?n.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),n.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!n.matches(":focus")&&s.key==="/"&&(n.focus(),s.preventDefault())})}function Ne(t,e,n,r){if(!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s;if(i){let o=i.split(" ").map(a=>a.length?`*${a}*`:"").join(" ");s=r.index.search(o)}else s=[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o`,d=ce(l.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(d+=` (score: ${s[o].score.toFixed(2)})`),l.parent&&(d=` - ${ce(l.parent,i)}.${d}`);let y=document.createElement("li");y.classList.value=l.classes??"";let p=document.createElement("a");p.href=r.base+l.url,p.innerHTML=u+d,y.append(p),e.appendChild(y)}}function ue(t,e){let n=t.querySelector(".current");if(!n)n=t.querySelector(e==1?"li:first-child":"li:last-child"),n&&n.classList.add("current");else{let r=n;if(e===1)do r=r.nextElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);else do r=r.previousElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);r&&(n.classList.remove("current"),r.classList.add("current"))}}function Ve(t,e){let n=t.querySelector(".current");if(n||(n=t.querySelector("li:first-child")),n){let r=n.querySelector("a");r&&(window.location.href=r.href),e.blur()}}function ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(K(t.substring(s))),i.join("")}var He={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>He[e])}var I=class{constructor(e){this.el=e.el,this.app=e.app}};var F="mousedown",fe="mousemove",H="mouseup",J={x:0,y:0},pe=!1,ee=!1,Be=!1,D=!1,me=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(me?"is-mobile":"not-mobile");me&&"ontouchstart"in document.documentElement&&(Be=!0,F="touchstart",fe="touchmove",H="touchend");document.addEventListener(F,t=>{ee=!0,D=!1;let e=F=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(fe,t=>{if(ee&&!D){let e=F=="touchstart"?t.targetTouches[0]:t,n=J.x-(e.pageX||0),r=J.y-(e.pageY||0);D=Math.sqrt(n*n+r*r)>10}});document.addEventListener(H,()=>{ee=!1});document.addEventListener("click",t=>{pe&&(t.preventDefault(),t.stopImmediatePropagation(),pe=!1)});var X=class extends I{constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener(H,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(F,n=>this.onDocumentPointerDown(n)),document.addEventListener(H,n=>this.onDocumentPointerUp(n))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(e){D||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!D&&this.active&&e.target.closest(".col-sidebar")){let n=e.target.closest("a");if(n){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),n.href.substring(0,r.length)==r&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var ye=document.head.appendChild(document.createElement("style"));ye.dataset.for="filters";var Y=class extends I{constructor(e){super(e),this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),ye.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } -`,this.app.updateIndexVisibility()}fromLocalStorage(){let e=Q.getItem(this.key);return e?e==="true":this.el.checked}setLocalStorage(e){Q.setItem(this.key,e.toString()),this.value=e,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),this.app.updateIndexVisibility()}};var Z=class extends I{constructor(e){super(e),this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let n=Q.getItem(this.key);this.el.open=n?n==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update());let r=this.summary.querySelector("a");r&&r.addEventListener("click",()=>{location.assign(r.href)}),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ge(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ve(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ve(t.value)})}function ve(t){document.documentElement.dataset.theme=t}var Le;function be(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",xe),xe())}async function xe(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let n=await(await fetch(window.navigationData)).arrayBuffer(),r=new Blob([n]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();Le=t.dataset.base+"/",t.innerHTML="";for(let s of i)we(s,t,[]);window.app.createComponents(t),window.app.showPage(),window.app.ensureActivePageVisible()}function we(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-index-accordion`:"tsd-index-accordion",s.dataset.key=i.join("$");let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.innerHTML='',Ee(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let l=a.appendChild(document.createElement("ul"));l.className="tsd-nested-navigation";for(let u of t.children)we(u,l,i)}else Ee(t,r,t.class)}function Ee(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));r.href=Le+t.path,n&&(r.className=n),location.pathname===r.pathname&&r.classList.add("current"),t.kind&&(r.innerHTML=``),r.appendChild(document.createElement("span")).textContent=t.text}else e.appendChild(document.createElement("span")).textContent=t.text}G(X,"a[data-toggle]");G(Z,".tsd-index-accordion");G(Y,".tsd-filter-item input[type=checkbox]");var Se=document.getElementById("tsd-theme");Se&&ge(Se);var je=new U;Object.defineProperty(window,"app",{value:je});he();be();})(); +window.translations={"copy":"Copy","copied":"Copied!","normally_hidden":"This member is normally hidden due to your filter settings."}; +"use strict";(()=>{var Pe=Object.create;var ie=Object.defineProperty;var Oe=Object.getOwnPropertyDescriptor;var _e=Object.getOwnPropertyNames;var Re=Object.getPrototypeOf,Me=Object.prototype.hasOwnProperty;var Fe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var De=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of _e(e))!Me.call(t,i)&&i!==n&&ie(t,i,{get:()=>e[i],enumerable:!(r=Oe(e,i))||r.enumerable});return t};var Ae=(t,e,n)=>(n=t!=null?Pe(Re(t)):{},De(e||!t||!t.__esModule?ie(n,"default",{value:t,enumerable:!0}):n,t));var ue=Fe((ae,le)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var d=t.utils.clone(n)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(n+=r[u+1]*i[d+1],u+=2,d+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),m=s.str.charAt(1),p;m in s.node.edges?p=s.node.edges[m]:(p=new t.TokenSet,s.node.edges[m]=p),s.str.length==1&&(p.final=!0),i.push({node:p,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;l1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof ae=="object"?le.exports=n():e.lunr=n()}(this,function(){return t})})()});var se=[];function G(t,e){se.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible()),document.body.style.display||(this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}createComponents(e){se.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}showPage(){document.body.style.display&&(document.body.style.removeProperty("display"),this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}scrollToHash(){if(location.hash){let e=document.getElementById(location.hash.substring(1));if(!e)return;e.scrollIntoView({behavior:"instant",block:"start"})}}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e&&!Ve(e)){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r,document.querySelector(".col-sidebar").scrollTop=r}}updateIndexVisibility(){let e=document.querySelector(".tsd-index-content"),n=e?.open;e&&(e.open=!0),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let i=Array.from(r.querySelectorAll(".tsd-index-link")).every(s=>s.offsetParent==null);r.style.display=i?"none":"block"}),e&&(e.open=n)}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(!n)return;let r=n.offsetParent==null,i=n;for(;i!==document.body;)i instanceof HTMLDetailsElement&&(i.open=!0),i=i.parentElement;if(n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let s=document.createElement("p");s.classList.add("warning"),s.textContent=window.translations.normally_hidden,n.prepend(s)}r&&e.scrollIntoView()}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent=window.translations.copied,e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent=window.translations.copy},100)},1e3)})})}};function Ve(t){let e=t.getBoundingClientRect(),n=Math.max(document.documentElement.clientHeight,window.innerHeight);return!(e.bottom<0||e.top-n>=0)}var oe=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var pe=Ae(ue());async function ce(t,e){if(!window.searchData)return;let n=await fetch(window.searchData),r=new Blob([await n.arrayBuffer()]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();t.data=i,t.index=pe.Index.load(i.index),e.classList.remove("loading"),e.classList.add("ready")}function fe(){let t=document.getElementById("tsd-search");if(!t)return;let e={base:t.dataset.base+"/"},n=document.getElementById("tsd-search-script");t.classList.add("loading"),n&&(n.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),n.addEventListener("load",()=>{ce(e,t)}),ce(e,t));let r=document.querySelector("#tsd-search input"),i=document.querySelector("#tsd-search .results");if(!r||!i)throw new Error("The input field or the result list wrapper was not found");i.addEventListener("mouseup",()=>{te(t)}),r.addEventListener("focus",()=>t.classList.add("has-focus")),He(t,i,r,e)}function He(t,e,n,r){n.addEventListener("input",oe(()=>{Ne(t,e,n,r)},200)),n.addEventListener("keydown",i=>{i.key=="Enter"?Be(e,t):i.key=="ArrowUp"?(de(e,n,-1),i.preventDefault()):i.key==="ArrowDown"&&(de(e,n,1),i.preventDefault())}),document.body.addEventListener("keypress",i=>{i.altKey||i.ctrlKey||i.metaKey||!n.matches(":focus")&&i.key==="/"&&(i.preventDefault(),n.focus())}),document.body.addEventListener("keyup",i=>{t.classList.contains("has-focus")&&(i.key==="Escape"||!e.matches(":focus-within")&&!n.matches(":focus"))&&(n.blur(),te(t))})}function te(t){t.classList.remove("has-focus")}function Ne(t,e,n,r){if(!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s;if(i){let o=i.split(" ").map(a=>a.length?`*${a}*`:"").join(" ");s=r.index.search(o)}else s=[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o`,d=he(l.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(d+=` (score: ${s[o].score.toFixed(2)})`),l.parent&&(d=` + ${he(l.parent,i)}.${d}`);let m=document.createElement("li");m.classList.value=l.classes??"";let p=document.createElement("a");p.href=r.base+l.url,p.innerHTML=u+d,m.append(p),p.addEventListener("focus",()=>{e.querySelector(".current")?.classList.remove("current"),m.classList.add("current")}),e.appendChild(m)}}function de(t,e,n){let r=t.querySelector(".current");if(!r)r=t.querySelector(n==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let i=r;if(n===1)do i=i.nextElementSibling??void 0;while(i instanceof HTMLElement&&i.offsetParent==null);else do i=i.previousElementSibling??void 0;while(i instanceof HTMLElement&&i.offsetParent==null);i?(r.classList.remove("current"),i.classList.add("current")):n===-1&&(r.classList.remove("current"),e.focus())}}function Be(t,e){let n=t.querySelector(".current");if(n||(n=t.querySelector("li:first-child")),n){let r=n.querySelector("a");r&&(window.location.href=r.href),te(e)}}function he(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(ee(t.substring(s,o)),`${ee(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(ee(t.substring(s))),i.join("")}var je={"&":"&","<":"<",">":">","'":"'",'"':"""};function ee(t){return t.replace(/[&<>"'"]/g,e=>je[e])}var I=class{constructor(e){this.el=e.el,this.app=e.app}};var F="mousedown",ye="mousemove",N="mouseup",J={x:0,y:0},me=!1,ne=!1,qe=!1,D=!1,ve=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(ve?"is-mobile":"not-mobile");ve&&"ontouchstart"in document.documentElement&&(qe=!0,F="touchstart",ye="touchmove",N="touchend");document.addEventListener(F,t=>{ne=!0,D=!1;let e=F=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(ye,t=>{if(ne&&!D){let e=F=="touchstart"?t.targetTouches[0]:t,n=J.x-(e.pageX||0),r=J.y-(e.pageY||0);D=Math.sqrt(n*n+r*r)>10}});document.addEventListener(N,()=>{ne=!1});document.addEventListener("click",t=>{me&&(t.preventDefault(),t.stopImmediatePropagation(),me=!1)});var X=class extends I{constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener(N,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(F,n=>this.onDocumentPointerDown(n)),document.addEventListener(N,n=>this.onDocumentPointerUp(n))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(e){D||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!D&&this.active&&e.target.closest(".col-sidebar")){let n=e.target.closest("a");if(n){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),n.href.substring(0,r.length)==r&&setTimeout(()=>this.setActive(!1),250)}}}};var re;try{re=localStorage}catch{re={getItem(){return null},setItem(){}}}var Q=re;var ge=document.head.appendChild(document.createElement("style"));ge.dataset.for="filters";var Y=class extends I{constructor(e){super(e),this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),ge.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`,this.app.updateIndexVisibility()}fromLocalStorage(){let e=Q.getItem(this.key);return e?e==="true":this.el.checked}setLocalStorage(e){Q.setItem(this.key,e.toString()),this.value=e,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),this.app.updateIndexVisibility()}};var Z=class extends I{constructor(e){super(e),this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let n=Q.getItem(this.key);this.el.open=n?n==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update());let r=this.summary.querySelector("a");r&&r.addEventListener("click",()=>{location.assign(r.href)}),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function Ee(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,xe(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),xe(t.value)})}function xe(t){document.documentElement.dataset.theme=t}var K;function we(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",Le),Le())}async function Le(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let n=await(await fetch(window.navigationData)).arrayBuffer(),r=new Blob([n]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();K=t.dataset.base,K.endsWith("/")||(K+="/"),t.innerHTML="";for(let s of i)Se(s,t,[]);window.app.createComponents(t),window.app.showPage(),window.app.ensureActivePageVisible()}function Se(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-accordion`:"tsd-accordion";let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.dataset.key=i.join("$"),o.innerHTML='',be(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let l=a.appendChild(document.createElement("ul"));l.className="tsd-nested-navigation";for(let u of t.children)Se(u,l,i)}else be(t,r,t.class)}function be(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));r.href=K+t.path,n&&(r.className=n),location.pathname===r.pathname&&r.classList.add("current"),t.kind&&(r.innerHTML=``),r.appendChild(document.createElement("span")).textContent=t.text}else e.appendChild(document.createElement("span")).textContent=t.text}G(X,"a[data-toggle]");G(Z,".tsd-accordion");G(Y,".tsd-filter-item input[type=checkbox]");var Te=document.getElementById("tsd-theme");Te&&Ee(Te);var $e=new U;Object.defineProperty(window,"app",{value:$e});fe();we();})(); /*! Bundled license information: lunr/lunr.js: diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index eb6a8fe..b84f2f3 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAE62X3W6bQBCF34XeOi07GP/d2Wl606SpQquqiqxobTY1CsaIXVuuqrx7F4hZMHCgSW8SiZnzMcA54Ln/YylxVNbMuuJSzWXAox+BrzbWwIq5/jeztjt/Hwr5oVp/v1HbUDc9BZFvzWhgrTdB6Ccismb3ncgDTwK+aoCiczj0PCjIv0QkEq6E/1H/6QGu9ANuEMV79SkIRU9upR9wI74Vsgcv6wOcAw/3vUB5IyKJRAa7qA8q76yxliXadRCJRSL4U903RamXZRpAZjCDaoH+m0cM5L/ZwyDf7AyDer0pDOMtfihRelhh1WyDVW8LnD3+dcilLAAND53RpDKAPiiO9QGyw68ZoA54d+rIMUM2HTr2sDRCVr/TKkNRv+OCUZTPxrGnY+bSOUcknqrYrW0g09g2V9c7vkSstbYyj3wbh2L8wBwDfNxHa6WdckKWmqrXPGpEkdsDRS5AXS9samekVSwG15JWsXgIxUMsBpeeVrF4BMUjLB5D8RiLJ1A86RBzrOZYPoXqKRQzG4mZjcUMihkWQ4MybFBG8JbpMpZDf8OQ6jL0N8P+Zi4e3O0Y3F1h+QrLYUAYDgiDAWE4IAwGhOGAMOhwhh1O0OGEHU7Q4YQdTgw+a13ukMNnrctYDvNFOF8EA0I4IOTg63Y6rhvmi3C+0KczrWIxjAfheBCMB+F4EIwH4XgQ/n5Qx/eDYLoIp8uB6XJwuhwbDq7LHXIYEF3GcphtB2dbxnwtpKd2MYKYLgRrXx5LP0jLXW2/RYuey3xp6Ac0zW3cm/nPh8Xd1fxz03qUI4sWsGPdfPe+dXKKHgD6ctuFOXUAyNe557UD0ioQp9tL6faelrRcmxXrS9qZ+jbOvGIgQaRE8pgapsx5aTtbldxRCSd2Cj7pvN72cGWHWjaoy/umbN7OssP9902RXG54Ur+jOabUgu5r877YiPLq42nWIG9O91XpXwTyIk6CQwpru9vGNjldF4FrEiF34UE0vTFy+UsDeFlIdHbZcPbl8/Ival/0SOUUAAA=" \ No newline at end of file +window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAE62XS2+bQBSF/wtrq2Uuxq+d3bibJk0Vt4qqyIoGM6lRMCBmbLmq8t87QMzD4MOk6caWuPd8zOMcMfPwx1LiqKyZteRSzWXAo/vAV1trYCVc/82sXezvQyE/NusftmoX6qbnIPKtGQ2szTYI/VRE1uyhF3ngacC9Dih6h0Mvg5L8S0Qi5Ur4V/rHANzoB9wgSvbqcxAKQ26jH3AjvhPSgJf3Ac6Bh3sjUNGISCKVQRyZoIrOFmtdo10HkVikgj+3fVOWjCzTAaoGVqEuQN/mkQry3+xRId/tjAr176aoGO/xQ41iYAWv2waesQXOtn8TcilLQMemM5o0BqAfimN7APlj8wHcaVEFUb+TElGWz2D2dMzc+pIuj3yXhGL8yJyK9LSPNkqv4YlWa2ryRsMuFLkGKHIB6nph02VGVsViMJesisVDKB5iMZh6VsXiERSPsHgMxWMsnkDxpEfMsZpj+RSqp1DMbCRmNhYzKGZYDA3KsEEZwSXTZSyH/oYh1WXob4b9zVw8cLdn4K6H5R6Ww4AwHBAGA8JwQBgMCMMBYdDhDDucoMMJO5ygwwk7nBjca13ukcO91mUsh/kinC+CASEcEHLwvJ2eecN8Ec4X+nRmVSyG8SAcD4LxIBwPgvEgHA/C3w/q+X4QTBfhdDkwXQ5Ol2PDgetyjxwGRJexHGbbwdmWCd8IuVJxgiBVF4DdzH8+Lu6W8y9dx/KCVLaAs/3Nj9X3Xk7ZA0Bfb/swpw4A+TZfrS4DsioQZ+fu2lXndDkotHmxfTk4U98m+U5UkCBSIn3KtqPOeW07O+S7o8ZdQ6rGRfB018gfm981RPppy9P2rApMrQXNTcSqa1ULhi6CRU2FjMOD6LJrIX9tAE6V6O2y4+3rl/VfMW0wN3wSAAA=" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 89eacda..555de5f 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "data:application/octet-stream;base64,H4sIAAAAAAAAE61cbW/jNhL+L85XNxVfJeXbbm8PKK7XFs294GAsAifWdo06tk9yclss9r+fSL3NyDOUbObTrqOZeUg+D0fkiNLXRXn4X7W4W31d/LHdbxZ3crnYr5+Lxd3iw7o6vau26/2/t5vT58Vy8VLu6j8/HzYvu6L6Hl++/Xx63tU2T7t1VRV1wMXi27KLqYagr0VZbQ/7PtrrutyuH4l4rSERd7k4rstifzpvIom43R9fTn/d7oq/rE/FNC4yj0f/vdgXZR1pMw8dmcejMxSy8JOcXojv/qmmYb1ZPNrrevcyB66xuxJvgPtpuy/el8X6j7Op0V+JnxVDqFkTYmjTVXNhQLtgGkxgTs2AAfMC8U9gnlND4YVomo/FaXyIPkPeExissoE8ZoiaQhlAHkktP07qWMisj4EHvTVvY8wY6sdR44wYmvd02Fen8uXpdCgnAW6wcQDsdjweIpG6x6xjbPe/T8P1dlcjHcvDsZoG6syuxzlU2xNMNTzUYHk1Wln892VbFptpNGB5CRpMbZviy5l6/V+D6rVDa396n8g+wqeX/ZPrfhfDXQyLt2kBF1mFIquYyDoUWcdENqHIJiayDUW2EZGr4/qpqO5Ph2MAYTCK6UMa6kMaEzkLRc6iIq+DodcxsfNQ6DwiskgCkUUSE1mEIouYyKFMImIyiZAhDuurMbFDWUrEZCkRylIiJksJExwPEzUe5jEY+zEmdigHipgcKEKZScRkJhHKTCImM4lQ9hAx2UOGsoeMyR4ylD1kTPaQIqTp+mpU7JCm66sxsUNZT8ZkPRnKTDImM0kVHGsVNdahrCdjsp4Mrc1kzNpMhvKSjMlLMpSXZExekqG8JGPykgyumGTUikmGcp6MyXkqlPNUTM5TSWg86qtRsUOZqb4aEzuUq9X1ufrDl/XzcVekD4GlE7CJxwlMfGBzGQ6oNP367v6+BxjqTA2Au3h15J9/eXj/24d3f2OjdwZXI/z93X8mIHqL6zH+ef+PKZDe5DIUWEf7zVUveoSuatLE99cuCz23jjYGmFVHA05cHejmcDxNd+fmoTUbcE7V5rtt9d2x3L421eMJVGuMsj3sw8Ppz2MxE/e2t57s5m3Tn8uKhkHU24kK4hl411qmDUWbCi5sBXB7m3a8FuXjobqQgtvB621aUc6aTTed2SUyl4keZm1ZPB9eC2cyAwzaXo243mzc9XefTsWM2TyyjkV9X3w6lDO6OjaPGN/jbv00e4Ch8dWYN8WX4mleOr55gLbXJ7Fz/JnQb4fqq+0zetzbXTa+eSrMcEfyRX1EqpvMHVp/9cK1U+hOwMe/mXUXGFoMemUsvn3/cvSLsx50u6+n3SdXeYbj2FpduFQI3G+mYaYeV527zb7NzAC/5B4zAT++u8xAv+DWcg4uwZjDh9nd0yb/17lPm8qiOuxehyDDar4J014PC6NpB7lSrQ4nYonaxK6vXR23CMQtLo179uy4KH/4vD6/lTXhgcVlMHPXvzTMrFXwmSsn2qfjbNjjG6DtzrM4B7fjE/l8vPns3bS2kYi74vxhNgPYmEbibX/fH6hH2gzmYH4F7vnsuEeJh8S+p7MQvx54k9kyoF4+Xe7HWWF0e5uN3NjGIk4qCiDOllQQ8VgWrz98ftmfH53hcKHHW6BfBPwGmE8vF+jp5S1Y3RdfTrMhW+NYzJ/eZ7MhG9vo2eKPNsyfMJ15LO5vP87G9KaxeMWX9HiY38/ePH6uUOe0+MkSOq51SW9P5fqCzjbWV6CiTeDxpfo8v6uN8VtgfthP3F1HsI19LPLTYVP8eqi3EPPpRS7R+M7fl2buL5vDhGNsW9Yu2s+XJEzoEYteFadfy8PEMhkmsd7+CmQtcq0SjddZZzu7Zlvo0TqDeTt1Mvx4GcehDHbXgU28wQHgziyvA+SPxAMsaBQJ80PrPgdtsL0OFO57CZzm8nWhq3Doajr0x2X7v7uv/csEdwt5q27dM+ZP22K3cS/5NIB1rMPzs/P/2F77V+EW686iMfk+WSxXyVKZ2zxXHz8uV52Hv+D/4M1E/UssVX6rTIrMBDKT9S9JmUlkpupfijJTyExzbdPIzNS/NBXNIDNb/zKUmUVmaf3LUqApMsu4AcmQWc4NSI6HN+FGRIx4EFzzBGbCHUukR0VgLtzjbHpcBGbDHexbpSQ05kMY1hAz4g7GrbKlUrc6w3aYEnfMbZWTATEpwrOSkJ3BvLhTaCshllrfamuxJabGnSpb1ftkwlJibqSfJIq0HE0TR4HQpCVmx52GWglDWmJ63AmklbCkJebHHSxYiZS0xAS5E0IrkZGWmCJ34mclctISc+RO8KxkQlpijqSfPCRHEnPkTsGsJMmRwhy50yErSXKkMEfK5zKSIzXKZo4ISXKkMEfKESFJjhTmSDkiJMmRwhwpR4QkOVKYI+WIkCRHCnOkHBGK5EhhjpQjQpEcKcyR9imO5EhjjrQjQpEcacyRdkQokiONOdL+lkNypEc3HUeEIjnSmCPtiFAkRxpzpB0RiuRIY460I0KRHGnMkXZEaJIjjTnSjghNcqQxR8YRoUmODObIOCI0yZHBHBl/IyI5Mpgj44jQJEcGc2QcEZrkyIzWBn5xQHJkMEfGEaFJjgzmyDgiNMmRwRwZR4QhOTKYI+OIMCRHBnNkHRGG5MhijqwjwpAcWcyRdUQYkiOLObJ+tUByZDFH1hFhSI4s5sg6IgzJkR0t4fwajuTIYo6sI8KQHFnMkXVEWHLNYDFHNmeWKxYzlDoaLMllihlK/WqOXB+mmKFUckugFBOUOhYsuZRMMUGpY8GSS8QUE5QadohSTFDqWLCkPNLRMtuvs0l5pJig1BNEyiPFBKWOB0vKI8UUZZ4iUh4ZpihzPKTkFM4wRZkjIiVpzzBHmSMiJadwhjnKNCuQDHOU+UU3OdkzzFFmOSllmKIsZaWUjTZDGSulDFOUOR5SMtNkmKLc8ZCSUsoxRbmnyJK7LExR7ilKSUtMUe4pIqWUY4pyzWSFHBOUe4JIyeWYoNxvi0jJ5Zih3NGQkZLLMUO5oyGjd6KjHavPcqSQ8vGm1fGQ0ZvMZLRvTQQzTM0VaOmYyEjim2vQVrHdaq5BW08UmXGaa9DWMZKROae5Bm09XaRUmmvQ1hNGiqC5Bm0dLzkpg+YatHXM5PR2Nhmx5isKOZl9xFm1wXGTk2IQ44KDryswm+9xzcGXFnIyDYhx2cFXF3JaD+PKgy8w5DTH4+KDLzLkNMfjAkRTgaA5HtcgfKUhpzkeVyGaMkRCkzwqRAhfbqDrKqNKhPD1BmZmynGhyHFDltnEqBghfMmBrj6NqhGiKUcktCRHBQnhyw50XhajkoTwhQc624u2KOFrpK9FeSo2Pza10tWqPxj4dfHQFlBtf/jh66Jebt19/bZc1HfV+t9vQ+HU/XIY683GnRpeNydqQRALgqRh58f2XCzwToF3xnk7zOY59eBZC6z3dLKiXdsvfQxuAE/opsv1vGj+rUUUiFKUzSkeECsbgtU3xaBve4xucM40aEmSdE0QoTClPzkKGgAIzIINqJCbAG6ScRt3NgNOOcezr9x7urrH7YCwDBLGR0BO9SpgQLWcz2FTHNuHkwAPUi14X3CCB+ACX9twU29y/L95J5uE48qdZgOjDYSaG87lBcND/IRre7GuVeUeZf2veZQ1+INRa5XVNVpyfPunOqDVYPRy2Tlzze8OHYDRV3D0uZEaTsiClAA8U9VmJU4uBXwpbYhhwOSybI/hi2bA1wBfblI1Z9DBcIERz/jeFk/tmxegu0AeGZeA2nMOYHhh9hBcK/vPTG1GyQcMserUzMToT/UBdQL3POf8vC3wEsCLTXP+Y1yftrti3GKQ6Vo1csC7R7dIBrhgqFj1105IQAKIQHLDWztp5ARuhZK7j9ZOSG4CTDR2ftVOFjmB/CC59FA7oYklgUYld8OsnTLkBNK+DAx5huQpAV2KU1btlSMnqEpOILtHt0QHToBdxbPr1urACbCreHYF0pEE7CqeXf/REuAF6FU8vTh9SUCv4ukVSH0SJBLF5cvayaD2KSAKxYvCfx4EeAFVKF4VAolWAVFoXhQCiVYBUeiAKJBoFRCFDogCyU8BUWheFBLJTwFRaF4UEslPAU1oXhP+0xjAC4hC86LwH70AXkAVmleFRFLXQBSaF4VEotVAE5rXhP8IBfACojC8KCSSugaiMLwo8H1dA1EYXhQSaVYDUZiAKJBmNRCFCYgCaVYDUZiAKHCi1UAUJiAKpHQNNGF4TSikdAM0YXhN+K8mAC8gCsOLwn8PAXgBUVheFArNKgNEYXlRoEHPQadcTYlzanYzlf/WGrgLg3GU7Di6Y/Ng7QS6lmeLdu3FKmu7L862sHDD3QZoN++CX6p0gbqzVbAbCSBJsAuX5/WfD2dtMUB/ltPf80t1IlzB6Flu9JwBaiycxF2nOd9RxSCDFYOERTwQTQVz03Jzs3mjH9AERjXlRHys2UBIgFzLMTF8rxKQCDnkJlrzRgMYEbhFTriOOa+n5gUM4GqhK9vS5lQ41Bpw6+TPMtictAbTFWRjIVjQ2qvYox1LDlsruI42L6qPiywWgKacxNtXsM98wfRIOVaGD4KCcYL7HU48/XuVYB8KGpuzfls0NhKODetztm8FTNqWyZQdWed96N4SBs0FOTvjnKvidCxHmTeBOmL1Xo1qGkAFeZ8yOUqJChacYwkLOq70pSBnZbwXLgBBpSfc/OjebgZNBG7tzSFt98sZ19Huk8sgCwFq22Hibiz9W8ZAGaC/aVt3yrh7a/89cEAu6EPrTTl/XC6O22Ph7myLu9XHb9/+D9d0JoDhXwAA"; \ No newline at end of file +window.searchData = "data:application/octet-stream;base64,H4sIAAAAAAAAE62cbW/jxhHHv4vureFon0m/u0uvQNG0KXJpi0IwDNmiL0JkSZVkJ4Fx371ckiJnNMPVSNtXtsSZ/+zDb4bkLqn3yW7z235yN3uf/LpcLyZ3+maynr9Uk7vJ5/n+8HG/nK//vVwcfpncTF53q/rrl83idVXtv8OHb385vKxqm6fVfL+vasHJ5NvNUdMMom/Vbr/crHu1t/luOX9k9DpDRvdmsp3vqvWBNpGNuFxvXw9/Xq6qP80P1fm4yDw/+tdqXe1qpYUsOjLPjz4yhaPhz87phfHjn/35sI1ZfrS3+epVEq61uzLeEO6H5br6tKvmv5LU6I/kZ8UgJUqIoU1X5cIQ7YI0OBPzXAYMMS+A/0xMOjVcvNQ0yWONMT6oC/A+E2OUbICHAGouyhDkkWX58SzHShe9Bh70zrzTEAz140njnBqa97RZ7w+716fDZnc2wAdsnAh2ezoeaqptH7PWWK6/ng/X210dabvbbPfnAx3Nro+z2S8PsNSMhxosr462q/77utxVi/PRgOUl0WBpW1S/E3qbb5P0+qG1P3ya6l7h+XX9FLt/1IgH0/C2LRhTNillk6NsU8o2R9mllF2Osk8p+wzl/Xb+VO2/HDbbRITBKKcPIdWHkKNcpJSLLOV5Unqeo12mpMsMZTVNKKtpjrJKKasc5VQlUTmVROnUHNZHc7RTVUrlVCmVqlIqp0oplxwPlzUe7jGp/ZijnaqBKqcGqlRlUjmVSaUqk8qpTCpVPVRO9dCp6qFzqodOVQ+dUz20SjFdH83STjFdH83RTlU9nVP1dKoy6ZzKpE1yrE3WWKeqns6pejp1baZzrs10qi7pnLqkU3VJ59QlnapLOqcu6eQVk866YtKpmqdzap5J1TyTU/PMNDUe9dEs7VRlqo/maKdqtbm+Vn/+ff6yXVXhIXHpBGzy4yQSH9hcFgesNP3j45cvfYBhnakNEA9erfz3Hx8+/fT5419H1Y8GV0f428f/nAnRW1wf459ffj4XpDe5LApcR/sprl70EY6rJq1+c+wyaek62mkA0ToacBpdBxJ158PR7JI4emqHYdtVL5u3KpoIgkHbqyPOF4t4/OPzoRIM54l1btRP1fNmJ+jqqXnG+G5X8yfxAEPjq2M2C38CeHq7yyKVQbkhOZr1RdS9wx/bPlp/9MIy7pzxfYiHhygp0P/QW6Z6NLQY9Mp5XEl+3DbniT7ocl0D+BwXweA4dlYXVq3Eevn5MOdWzqnbWOiqO/ldEhz45IZ/q3aPm311SfTB5YrgGow53Fc7Lnw330oXvnfVfrN6G0SGC4tWpjueBqNtB3vS3G8OzNmy1a6PXa1bJXSrS3XJNla1+/6XOS3qrTywuCyM9FTMhxGdkInrGLRPW3HY7f8h2opW8bFwq/FCLo8nn70PnW1mxFVF99VGArammfGWX9cbbndtJOZgfnlcq0prphZnCKk6y3677cPRQHYWOZU/8+wRiEMsrws4/jAHiAWNMsN837lLog221wWFZZKJ0x6+Tnqflt6fl76/6f67e+8fg7mb6FtzG1dHnpfVahEfT2sD1lqbl5fofzNZbJ5em3/vO7N/VbEqRuPW+rvp5GY2vTHm1ml7f38zOzo3B5ovjhrDN42jqj+pG+Nvi6JEjoo4KuSo60+ac9TEUSNHU38ynKMhjgY52rE+WuJokaOrP1kuoiOODjn6+pPjHD1x9Mixvsyaea6pgTgG5FiMTUdBHAvkWI5NR0kcSwzAdGw+FGVHncCjxvqpGHwwP3HXkJ8VRQlSGKG4AMVPjKIQKUxR3J2bBbbNlCOFQVJu1JeipDBLcQ9sVrC+lCaFcYq7XLOS7S8FSmGiVIPU9Maq27IM2JlCpTBVcatqphTrTMFSmKy4GzWrLwEZZ03R0hgt3RQmwzpTtvRJbYq4KMs6M+UJwxW3X2bKsc6ULo3pirsgM+VZZ4qXxnjF9c6ZCqwz5UtjvuJexkwVrDMFTGPA4nbFTJWsMyVMY8LijsRMs4RpSpjGhOmmcLGEaUqYxoTFtf+ZZgkzlDCDCYvL5DPNEmYoYQYTZprTH0uYoYSZkzNgZEazhBnmJIgJM5EZzRJmKGEGE2YiM5olzFDCDCbMRGY0S5ihhBlMmInMaJYwQwkzmDATmTEsYYYSZjBhJjJjWMIMJcxgwmxzdmQJs5QwiwmzkRnDEmYpYRYTZiMzhiXMUsIsJsw2F1ksYZYSZk+usyIzhiXMMpdamDAbmTEsYZYSZjFhNjJjWMIsJcxiwmxkxrCEWUqYxYTZyIxlCbOUMIsJs5EZyxJmKWEWE+YiM5YlzFHCHCbMRWYsS5ijhDlMmGuuwFjCHCXMYcJcZMayhDlKmMOEuciMZQlzlDB3cjXfXM6zhDnmgh4T5iIzliXMUcIcJsxFZixLmKOEOUyYi8w4ljBHCXOYMBeZcSxhjhLmMGE+MuNYwjwlzGPCfGTGsYR5SpjHhPnIjGMJ85QwjwnzzUU+S5inhHlMmI/MOJYwTwnzmDAfmXEsYZ4S5k/uGZubRpYwz9w2YsJ8ZMaxhHlKmMeE+ciMn7L3q5QwjwnzkRn29sRTwDwGLExHAwcKWMCAheYekkU7UMACBixEZDyLdqCABQxYiMh4Fu1AAQsYsBCR8SzagQIWMGAhIuNZtAMFLGDAQkTGs2gHClg4WZhoViZYtAOzNoEBCw1gLNqBAhYwYCEyw97DBgpYwIAVDWBsWhQUsAIDVkRkAlt4CwpYgQErIjKBpbOggBUYsCIiE1g6CwpYgQErmnUKdmGmoIAVGLCiWahgV1cKCliBASsiMoGls6CAFRiwIozVkYLyVZwsfkViAkt2wax/Yb6KiExgyS4oYAUGrIzIBJbskgJWYsDKBjCWzpICVmLAyohMwdJZUsBKDFjZAMYNdkn5KjFf5ehyaknxKjFeZVO/WF9KV4npKpt1MDajSkpXiekqwyjXJcWrxHiVxWhGlRSv7qtmzf6t2h2qxV/atfvZrH+u4X3y0C3o1yW12yd4n9RV8+7927dhAb/+BNbw47EYab5YxIeA5u0DMkBKAyl9idRj99AL0DJAy4i0ulcjBw3QM2VbJ+Xav+UFktWu3XgEwm5QrquIWGnXPLMCOulBJy/Q2SMR0JjgRCKkP8UgUZcIkcQKNSKAsa4rlEgBbpIPSqApyreuvmz/FjI84zY4aBkY47rwSgSq+f4wj7uVv7W7lYPYdNCats4dV6WVKcetNtA2C9p2JFPWyeGpGEBCCeRk01jBJ2MHJQca5mWZXMFnX4ESoNPLkq5/w3zRPDMzaIGSYLp0lvWy31MHmIGpLGU9bD2BhgIN0kqosX09PC9X1WnfQOnUHQgiwdVjfB0WtAnMnJb1q5ZAk6/AlGnZlNUSFkmApNOy1KglEDgKVBQtK2u1hEcSoJZoWXmtJVBKaYCJllWPWqJAEgpIiCc1vtEANAAeRsZ8rVEiCZg9MlhXj3HXFEgAtoyUrbh5CiQAW0bKlkKEa8CWkbLVvI8JNABcRgoXLpEawGWkcCmUJRrUayMr+7WEQz0xAFAjBbR5YxJoAEKNlFCFUs0AQK0UUIVSzQBArRhQlGoGAGrFgKI0MQBQKwVUozQxAFArBVSjNDGATyvls3kfEWgAQK0U0Oa9Q6ABCLVSQjVKVwsAtVJANUo1C/i0Uj6bNwaBBgDUSQHVKF0tANRJAcVXQxYA6qSAapRpFgDqxICiTLMAUCcGFGWaBYA6MaD4pGYBoE4MKMpWC/h0Uj4NylYH+HRSPpsX7IAGANRJAW1epAMaAFAvBdSgquEAoF4KaPszG/vmtzjApRMYWC0c2PiwLLi3AQqlsDHLdUVu4uEtcuunVPu3FHJ3VD0+4QjvAsDElTIEX+Z/PJBGOoCyF+q87g+MEBg1Lxv3aI46BWtMN2KyUrPeMA0Cie5lA76thxlJgCn0snIz/KwRQBLMlZIlWfdDTEADJLuSJXv7BhpZuQGNCTK6uzetiBKYriAbneFnmEDP4A2krHz0L5SApAUqhezk0r0OCDoExtgXrVcQtihqbY6vQQFJkF5BNm37k5UWUBoL29UPodLh5FY9gLkvZJl1fIFqEAF5rrq6FmRQH39mDiQYGPAu4WVz17/cBDoHZq+Qgd3/LiKgEfSu9RKM9f3NZLvcVrFeT+5m99++/Q+rFHRP91QAAA=="; \ No newline at end of file diff --git a/docs/assets/style.css b/docs/assets/style.css index 98a4377..9d619a6 100644 --- a/docs/assets/style.css +++ b/docs/assets/style.css @@ -10,6 +10,7 @@ --light-color-text: #222; --light-color-text-aside: #6e6e6e; --light-color-link: #1f70c2; + --light-color-focus-outline: #3584e4; --light-color-ts-keyword: #056bd6; --light-color-ts-project: #b111c9; @@ -35,6 +36,7 @@ --light-color-ts-set-signature: var(--light-color-ts-accessor); --light-color-ts-type-alias: #d51270; /* reference not included as links will be colored with the kind that it points to */ + --light-color-document: #000000; --light-external-icon: url("data:image/svg+xml;utf8,"); --light-color-scheme: light; @@ -50,6 +52,7 @@ --dark-color-text: #f5f5f5; --dark-color-text-aside: #dddddd; --dark-color-link: #00aff4; + --dark-color-focus-outline: #4c97f2; --dark-color-ts-keyword: #3399ff; --dark-color-ts-project: #e358ff; @@ -75,6 +78,7 @@ --dark-color-ts-set-signature: var(--dark-color-ts-accessor); --dark-color-ts-type-alias: #ff6492; /* reference not included as links will be colored with the kind that it points to */ + --dark-color-document: #ffffff; --dark-external-icon: url("data:image/svg+xml;utf8,"); --dark-color-scheme: dark; @@ -92,6 +96,7 @@ --color-text: var(--light-color-text); --color-text-aside: var(--light-color-text-aside); --color-link: var(--light-color-link); + --color-focus-outline: var(--light-color-focus-outline); --color-ts-keyword: var(--light-color-ts-keyword); --color-ts-module: var(--light-color-ts-module); @@ -116,6 +121,7 @@ --color-ts-get-signature: var(--light-color-ts-get-signature); --color-ts-set-signature: var(--light-color-ts-set-signature); --color-ts-type-alias: var(--light-color-ts-type-alias); + --color-document: var(--light-color-document); --external-icon: var(--light-external-icon); --color-scheme: var(--light-color-scheme); @@ -134,6 +140,7 @@ --color-text: var(--dark-color-text); --color-text-aside: var(--dark-color-text-aside); --color-link: var(--dark-color-link); + --color-focus-outline: var(--dark-color-focus-outline); --color-ts-keyword: var(--dark-color-ts-keyword); --color-ts-module: var(--dark-color-ts-module); @@ -158,6 +165,7 @@ --color-ts-get-signature: var(--dark-color-ts-get-signature); --color-ts-set-signature: var(--dark-color-ts-set-signature); --color-ts-type-alias: var(--dark-color-ts-type-alias); + --color-document: var(--dark-color-document); --external-icon: var(--dark-external-icon); --color-scheme: var(--dark-color-scheme); @@ -183,6 +191,7 @@ body { --color-text: var(--light-color-text); --color-text-aside: var(--light-color-text-aside); --color-link: var(--light-color-link); + --color-focus-outline: var(--light-color-focus-outline); --color-ts-keyword: var(--light-color-ts-keyword); --color-ts-module: var(--light-color-ts-module); @@ -207,6 +216,7 @@ body { --color-ts-get-signature: var(--light-color-ts-get-signature); --color-ts-set-signature: var(--light-color-ts-set-signature); --color-ts-type-alias: var(--light-color-ts-type-alias); + --color-document: var(--light-color-document); --external-icon: var(--light-external-icon); --color-scheme: var(--light-color-scheme); @@ -223,6 +233,7 @@ body { --color-text: var(--dark-color-text); --color-text-aside: var(--dark-color-text-aside); --color-link: var(--dark-color-link); + --color-focus-outline: var(--dark-color-focus-outline); --color-ts-keyword: var(--dark-color-ts-keyword); --color-ts-module: var(--dark-color-ts-module); @@ -247,11 +258,17 @@ body { --color-ts-get-signature: var(--dark-color-ts-get-signature); --color-ts-set-signature: var(--dark-color-ts-set-signature); --color-ts-type-alias: var(--dark-color-ts-type-alias); + --color-document: var(--dark-color-document); --external-icon: var(--dark-external-icon); --color-scheme: var(--dark-color-scheme); } +*:focus-visible, +.tsd-accordion-summary:focus-visible svg { + outline: 2px solid var(--color-focus-outline); +} + .always-visible, .always-visible .tsd-signatures { display: inherit !important; @@ -266,16 +283,6 @@ h6 { line-height: 1.2; } -h1 > a:not(.link), -h2 > a:not(.link), -h3 > a:not(.link), -h4 > a:not(.link), -h5 > a:not(.link), -h6 > a:not(.link) { - text-decoration: none; - color: var(--color-text); -} - h1 { font-size: 1.875rem; margin: 0.67rem 0; @@ -306,10 +313,6 @@ h6 { margin: 2.33rem 0; } -.uppercase { - text-transform: uppercase; -} - dl, menu, ol, @@ -327,17 +330,14 @@ dd { } /* Footer */ -.tsd-generator { +footer { border-top: 1px solid var(--color-accent); padding-top: 1rem; padding-bottom: 1rem; max-height: 3.5rem; } - -.tsd-generator > p { - margin-top: 0; - margin-bottom: 0; - padding: 0 1rem; +footer > p { + margin: 0 1em; } .container-main { @@ -405,7 +405,8 @@ dd { } body { background: var(--color-background); - font-family: "Segoe UI", sans-serif; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", + Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; font-size: 16px; color: var(--color-text); } @@ -423,6 +424,9 @@ a.external[target="_blank"] { background-repeat: no-repeat; padding-right: 13px; } +a.tsd-anchor-link { + color: var(--color-text); +} code, pre { @@ -582,13 +586,13 @@ dl.tsd-comment-tag-group p { } .tsd-filter-input { display: flex; - width: fit-content; width: -moz-fit-content; + width: fit-content; align-items: center; - user-select: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; + user-select: none; cursor: pointer; } .tsd-filter-input input[type="checkbox"] { @@ -611,11 +615,8 @@ dl.tsd-comment-tag-group p { Don't remove unless you know what you're doing. */ opacity: 0.99; } -.tsd-filter-input input[type="checkbox"]:focus + svg { - transform: scale(0.95); -} -.tsd-filter-input input[type="checkbox"]:focus:not(:focus-visible) + svg { - transform: scale(1); +.tsd-filter-input input[type="checkbox"]:focus-visible + svg { + outline: 2px solid var(--color-focus-outline); } .tsd-checkbox-background { fill: var(--color-accent); @@ -632,13 +633,18 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { stroke: var(--color-accent); } -.tsd-theme-toggle { - padding-top: 0.75rem; +.settings-label { + font-weight: bold; + text-transform: uppercase; + display: inline-block; } -.tsd-theme-toggle > h4 { - display: inline; - vertical-align: middle; - margin-right: 0.75rem; + +.tsd-filter-visibility .settings-label { + margin: 0.75rem 0 0.5rem 0; +} + +.tsd-theme-toggle .settings-label { + margin: 0.75rem 0.75rem 0 0; } .tsd-hierarchy { @@ -771,6 +777,9 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { padding: 0; max-width: 100%; } +.tsd-navigation .tsd-nav-link { + display: none; +} .tsd-nested-navigation { margin-left: 3rem; } @@ -784,6 +793,15 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { margin-left: -1.5rem; } +.tsd-page-navigation-section { + margin-left: 10px; +} +.tsd-page-navigation-section > summary { + padding: 0.25rem; +} +.tsd-page-navigation-section > div { + margin-left: 20px; +} .tsd-page-navigation ul { padding-left: 1.75rem; } @@ -814,10 +832,10 @@ a.tsd-index-link { } .tsd-accordion-summary, .tsd-accordion-summary a { - user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; + user-select: none; cursor: pointer; } @@ -830,8 +848,9 @@ a.tsd-index-link { padding-top: 0; padding-bottom: 0; } -.tsd-index-accordion .tsd-accordion-summary > svg { +.tsd-accordion .tsd-accordion-summary > svg { margin-left: 0.25rem; + vertical-align: text-top; } .tsd-index-content > :not(:first-child) { margin-top: 0.75rem; @@ -879,7 +898,7 @@ a.tsd-index-link { } .tsd-panel-group { - margin: 4rem 0; + margin: 2rem 0; } .tsd-panel-group.tsd-index-group { margin: 2rem 0; @@ -887,6 +906,9 @@ a.tsd-index-link { .tsd-panel-group.tsd-index-group details { margin: 2rem 0; } +.tsd-panel-group > .tsd-accordion-summary { + margin-bottom: 1rem; +} #tsd-search { transition: background-color 0.2s; @@ -1036,6 +1058,12 @@ a.tsd-index-link { border-width: 1px 0; transition: background-color 0.1s; } +.tsd-signatures .tsd-index-signature:not(:last-child) { + margin-bottom: 1em; +} +.tsd-signatures .tsd-index-signature .tsd-signature { + border-width: 1px; +} .tsd-description .tsd-signatures .tsd-signature { border-width: 1px; } @@ -1349,6 +1377,12 @@ img { .has-menu .tsd-navigation { max-height: 100%; } + #tsd-toolbar-links { + display: none; + } + .tsd-navigation .tsd-nav-link { + display: flex; + } } /* one sidebar */ diff --git a/docs/classes/break.Break.html b/docs/classes/break.Break.html index 40ca2a0..323ac04 100644 --- a/docs/classes/break.Break.html +++ b/docs/classes/break.Break.html @@ -1,10 +1,10 @@ -Break | @cto.af/linebreak

Constructors

constructor +Break | @cto.af/linebreak

Constructors

Properties

Constructors

  • Parameters

    • position: number
    • Optional required: boolean = false

    Returns Break

Properties

position: number

Offset into input string in JS characters (16bit code units).

-
props: undefined | Record<string, any> = undefined

Extra info from plugin rules.

-
required: boolean

Is this a required break?

-
string: undefined | string = undefined

If the string option is enabled, a slice of the original input.

-

Generated using TypeDoc

\ No newline at end of file +

Constructors

  • Parameters

    • position: number
    • Optionalrequired: boolean = false

    Returns Break

Properties

position: number

Offset into input string in JS characters (16bit code units).

+
props: undefined | Record<string, any> = undefined

Extra info from plugin rules.

+
required: boolean

Is this a required break?

+
string: undefined | string = undefined

If the string option is enabled, a slice of the original input.

+
diff --git a/docs/classes/index.Rules.html b/docs/classes/index.Rules.html index d989634..5a51870 100644 --- a/docs/classes/index.Rules.html +++ b/docs/classes/index.Rules.html @@ -1,25 +1,22 @@ -Rules | @cto.af/linebreak

Options for how rules are applied.

-

Constructors

Properties

Methods

#exec -#execRules -addRuleAfter +Rules | @cto.af/linebreak

Options for how rules are applied.

+

Constructors

Properties

#opts: {
    example7: boolean;
    string: boolean;
    verbose: boolean;
}

Type declaration

  • example7: boolean
  • string: boolean
  • verbose: boolean
rules: BreakRule[]

Copy of rules, safe to tweak.

-

Methods

  • Add rules after the one named name.

    +

Constructors

Properties

rules: BreakRule[]

Copy of rules, safe to tweak.

+

Methods

  • Add rules after the one named name.

    Parameters

    • name: string

      The name of the rule before.

      -
    • Rest ...newRules: BreakRule[]

    Returns number

    Index of start of the new rules

    -
  • Add rules before the one named name.

    +
  • Rest...newRules: BreakRule[]

Returns number

Index of start of the new rules

+
  • Add rules before the one named name.

    Parameters

    • name: string

      The name of the rule before.

      -
    • Rest ...newRules: BreakRule[]

    Returns number

    Index of start of the new rules

    -
  • Enumerate all of the potential line breaks.

    -

    Parameters

    • str: string

    Returns Generator<Break, void, unknown>

  • Remove the rules with names as indicated.

    -

    Parameters

    • Rest ...names: string[]

    Returns BreakRule[]

    The deleted rules

    -
  • Replace the rule named name with the given rules.

    +
  • Rest...newRules: BreakRule[]

Returns number

Index of start of the new rules

+
  • Enumerate all of the potential line breaks.

    +

    Parameters

    • str: string

    Returns Generator<Break, void, unknown>

  • Remove the rules with names as indicated.

    +

    Parameters

    • Rest...names: string[]

    Returns BreakRule[]

    The deleted rules

    +
  • Replace the rule named name with the given rules.

    Parameters

    • name: string

      The name of the rule before.

      -
    • Rest ...newRules: BreakRule[]

    Returns BreakRule[]

    The replaced rules.

    -

Generated using TypeDoc

\ No newline at end of file +
  • Rest...newRules: BreakRule[]
  • Returns BreakRule[]

    The replaced rules.

    +
    diff --git a/docs/classes/state.BreakerChar.html b/docs/classes/state.BreakerChar.html index f58a839..08380b9 100644 --- a/docs/classes/state.BreakerChar.html +++ b/docs/classes/state.BreakerChar.html @@ -1,14 +1,14 @@ -BreakerChar | @cto.af/linebreak

    Information about a particular input character.

    -

    Constructors

    constructor +BreakerChar | @cto.af/linebreak

    Information about a particular input character.

    +

    Constructors

    Properties

    Constructors

    Properties

    char: string = ""

    The character. Might be one or two UTF-16 JS characters.

    -
    cls: number = sot

    Line breaking class, or sot or eot.

    -
    cp: number = -Infinity

    Code point

    -
    ignored: boolean = false

    If true, this is an LB9 CM or ZWJ that is treated as coalesced into +

    Constructors

    Properties

    char: string = ""

    The character. Might be one or two UTF-16 JS characters.

    +
    cls: number = sot

    Line breaking class, or sot or eot.

    +
    cp: number = -Infinity

    Code point

    +
    ignored: boolean = false

    If true, this is an LB9 CM or ZWJ that is treated as coalesced into the previous code point.

    -
    len: number = 0

    The length of the whole string up to and including char, in JS chars.

    -

    Generated using TypeDoc

    \ No newline at end of file +
    len: number = 0

    The length of the whole string up to and including char, in JS chars.

    +
    diff --git a/docs/classes/state.BreakerState.html b/docs/classes/state.BreakerState.html deleted file mode 100644 index beaea71..0000000 --- a/docs/classes/state.BreakerState.html +++ /dev/null @@ -1,29 +0,0 @@ -BreakerState | @cto.af/linebreak

    Class BreakerStatePrivate

    Constructors

    Properties

    LB8: boolean = false
    RI: number = 0
    cur: BreakerChar = ...
    ex7pos: null | number = null
    extra: Record<string, any> = {}

    Extra state information, for use by tailoring subclasses.

    -
    len: number = 0
    next: BreakerChar = ...
    prev: BreakerChar = ...
    prevChunk: number = 0
    props: undefined | Record<string, any> = undefined

    Extra properties, to be copied to Break when created.

    -
    spaces: boolean = false
    str: string = ""

    Methods

    • Look ahead in the string to see what the next linebreak class is after zero -or more spaces, starting at JS char offset pos.

      -

      Parameters

      • pos: number

      Returns number

    • Iterate over the codepoints in the string, starting at pos.

      -

      Parameters

      • pos: number

      Returns Generator<BreakerChar, void, unknown>

    • Set some extra information in the state that will be passed to -the next created Break.

      -

      Parameters

      • key: string
      • value: any

      Returns void

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/functions/index.Example7_13.html b/docs/functions/index.Example7_13.html index 3c53e9b..0dcdf16 100644 --- a/docs/functions/index.Example7_13.html +++ b/docs/functions/index.Example7_13.html @@ -1,5 +1,5 @@ -Example7_13 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +Example7_13 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.Example7_25.html b/docs/functions/index.Example7_25.html index c4b6eb4..edf3b1a 100644 --- a/docs/functions/index.Example7_25.html +++ b/docs/functions/index.Example7_25.html @@ -1,5 +1,5 @@ -Example7_25 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +Example7_25 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB02.html b/docs/functions/index.LB02.html index 9fd64af..9ec814b 100644 --- a/docs/functions/index.LB02.html +++ b/docs/functions/index.LB02.html @@ -1,5 +1,5 @@ -LB02 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB02 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB03.html b/docs/functions/index.LB03.html index ea75d2a..394156c 100644 --- a/docs/functions/index.LB03.html +++ b/docs/functions/index.LB03.html @@ -1,5 +1,5 @@ -LB03 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB03 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB04.html b/docs/functions/index.LB04.html index f89efd0..d078ff6 100644 --- a/docs/functions/index.LB04.html +++ b/docs/functions/index.LB04.html @@ -1,5 +1,5 @@ -LB04 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB04 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB05.html b/docs/functions/index.LB05.html index 5c831c3..375dfc5 100644 --- a/docs/functions/index.LB05.html +++ b/docs/functions/index.LB05.html @@ -1,5 +1,5 @@ -LB05 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB05 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB06.html b/docs/functions/index.LB06.html index 79e2e51..4a6c7c0 100644 --- a/docs/functions/index.LB06.html +++ b/docs/functions/index.LB06.html @@ -1,5 +1,5 @@ -LB06 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB06 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB07.html b/docs/functions/index.LB07.html index 5f7a9c1..a231399 100644 --- a/docs/functions/index.LB07.html +++ b/docs/functions/index.LB07.html @@ -1,5 +1,5 @@ -LB07 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB07 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB08.html b/docs/functions/index.LB08.html index e1e3bd6..85cf281 100644 --- a/docs/functions/index.LB08.html +++ b/docs/functions/index.LB08.html @@ -1,5 +1,5 @@ -LB08 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB08 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB08a.html b/docs/functions/index.LB08a.html index 67597ce..6b1b7ec 100644 --- a/docs/functions/index.LB08a.html +++ b/docs/functions/index.LB08a.html @@ -1,5 +1,5 @@ -LB08a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB08a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB09.html b/docs/functions/index.LB09.html index 946e116..a86c345 100644 --- a/docs/functions/index.LB09.html +++ b/docs/functions/index.LB09.html @@ -1,5 +1,5 @@ -LB09 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB09 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB10.html b/docs/functions/index.LB10.html index 0993a7b..b701f46 100644 --- a/docs/functions/index.LB10.html +++ b/docs/functions/index.LB10.html @@ -1,5 +1,5 @@ -LB10 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB10 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB11.html b/docs/functions/index.LB11.html index 382d40f..52312a5 100644 --- a/docs/functions/index.LB11.html +++ b/docs/functions/index.LB11.html @@ -1,5 +1,5 @@ -LB11 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB11 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB12.html b/docs/functions/index.LB12.html index 8969318..9372e1a 100644 --- a/docs/functions/index.LB12.html +++ b/docs/functions/index.LB12.html @@ -1,5 +1,5 @@ -LB12 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB12 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB12a.html b/docs/functions/index.LB12a.html index 487addf..d720897 100644 --- a/docs/functions/index.LB12a.html +++ b/docs/functions/index.LB12a.html @@ -1,5 +1,5 @@ -LB12a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB12a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB13.html b/docs/functions/index.LB13.html index 42fe457..d24b9e2 100644 --- a/docs/functions/index.LB13.html +++ b/docs/functions/index.LB13.html @@ -1,5 +1,5 @@ -LB13 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB13 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB14.html b/docs/functions/index.LB14.html index 0b0bcdf..81cf4ea 100644 --- a/docs/functions/index.LB14.html +++ b/docs/functions/index.LB14.html @@ -1,5 +1,5 @@ -LB14 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB14 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB15a.html b/docs/functions/index.LB15a.html index e4bb1e7..2fa7550 100644 --- a/docs/functions/index.LB15a.html +++ b/docs/functions/index.LB15a.html @@ -1,5 +1,5 @@ -LB15a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB15a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB15b.html b/docs/functions/index.LB15b.html index 4422452..7e4ddf5 100644 --- a/docs/functions/index.LB15b.html +++ b/docs/functions/index.LB15b.html @@ -1,5 +1,5 @@ -LB15b | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB15b | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB16.html b/docs/functions/index.LB16.html index 41fcfd7..1b69872 100644 --- a/docs/functions/index.LB16.html +++ b/docs/functions/index.LB16.html @@ -1,5 +1,5 @@ -LB16 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB16 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB17.html b/docs/functions/index.LB17.html index 490c234..620d96c 100644 --- a/docs/functions/index.LB17.html +++ b/docs/functions/index.LB17.html @@ -1,5 +1,5 @@ -LB17 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB17 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB18.html b/docs/functions/index.LB18.html index a85e5ef..852d6ae 100644 --- a/docs/functions/index.LB18.html +++ b/docs/functions/index.LB18.html @@ -1,5 +1,5 @@ -LB18 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB18 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB19.html b/docs/functions/index.LB19.html index f19dc28..02a5f5f 100644 --- a/docs/functions/index.LB19.html +++ b/docs/functions/index.LB19.html @@ -1,5 +1,5 @@ -LB19 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB19 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB20.html b/docs/functions/index.LB20.html index 299b76b..ffe3208 100644 --- a/docs/functions/index.LB20.html +++ b/docs/functions/index.LB20.html @@ -1,5 +1,5 @@ -LB20 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB20 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB21.html b/docs/functions/index.LB21.html index b3dc4a4..38ba062 100644 --- a/docs/functions/index.LB21.html +++ b/docs/functions/index.LB21.html @@ -1,5 +1,5 @@ -LB21 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB21 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB21a.html b/docs/functions/index.LB21a.html index 38fab3a..9c34c6f 100644 --- a/docs/functions/index.LB21a.html +++ b/docs/functions/index.LB21a.html @@ -1,5 +1,5 @@ -LB21a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB21a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB21b.html b/docs/functions/index.LB21b.html index e19dda4..75f6e67 100644 --- a/docs/functions/index.LB21b.html +++ b/docs/functions/index.LB21b.html @@ -1,5 +1,5 @@ -LB21b | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB21b | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB22.html b/docs/functions/index.LB22.html index 1355a8c..0d66dca 100644 --- a/docs/functions/index.LB22.html +++ b/docs/functions/index.LB22.html @@ -1,5 +1,5 @@ -LB22 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB22 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB23.html b/docs/functions/index.LB23.html index 24c00d4..d1ab93c 100644 --- a/docs/functions/index.LB23.html +++ b/docs/functions/index.LB23.html @@ -1,5 +1,5 @@ -LB23 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB23 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB23a.html b/docs/functions/index.LB23a.html index 2b67cb7..3d1966f 100644 --- a/docs/functions/index.LB23a.html +++ b/docs/functions/index.LB23a.html @@ -1,5 +1,5 @@ -LB23a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB23a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB24.html b/docs/functions/index.LB24.html index 172c379..9123cd8 100644 --- a/docs/functions/index.LB24.html +++ b/docs/functions/index.LB24.html @@ -1,5 +1,5 @@ -LB24 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB24 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB25.html b/docs/functions/index.LB25.html index 3d245c1..9e20e30 100644 --- a/docs/functions/index.LB25.html +++ b/docs/functions/index.LB25.html @@ -1,5 +1,5 @@ -LB25 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB25 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB26.html b/docs/functions/index.LB26.html index e44d8c7..962450a 100644 --- a/docs/functions/index.LB26.html +++ b/docs/functions/index.LB26.html @@ -1,5 +1,5 @@ -LB26 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB26 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB27.html b/docs/functions/index.LB27.html index bccc909..a41f017 100644 --- a/docs/functions/index.LB27.html +++ b/docs/functions/index.LB27.html @@ -1,5 +1,5 @@ -LB27 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB27 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB28.html b/docs/functions/index.LB28.html index affddd6..9be6ad7 100644 --- a/docs/functions/index.LB28.html +++ b/docs/functions/index.LB28.html @@ -1,5 +1,5 @@ -LB28 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB28 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB28a.html b/docs/functions/index.LB28a.html index 9bb3152..ccd4516 100644 --- a/docs/functions/index.LB28a.html +++ b/docs/functions/index.LB28a.html @@ -1,5 +1,5 @@ -LB28a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB28a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB29.html b/docs/functions/index.LB29.html index c40d402..1976cfb 100644 --- a/docs/functions/index.LB29.html +++ b/docs/functions/index.LB29.html @@ -1,5 +1,5 @@ -LB29 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB29 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB30.html b/docs/functions/index.LB30.html index 34c3e44..d329e8d 100644 --- a/docs/functions/index.LB30.html +++ b/docs/functions/index.LB30.html @@ -1,5 +1,5 @@ -LB30 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB30 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB30a.html b/docs/functions/index.LB30a.html index 8e02f74..8f1cc3e 100644 --- a/docs/functions/index.LB30a.html +++ b/docs/functions/index.LB30a.html @@ -1,5 +1,5 @@ -LB30a | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB30a | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB30b.html b/docs/functions/index.LB30b.html index 434e6cd..b131441 100644 --- a/docs/functions/index.LB30b.html +++ b/docs/functions/index.LB30b.html @@ -1,5 +1,5 @@ -LB30b | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB30b | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LB31.html b/docs/functions/index.LB31.html index f955d4d..7132be9 100644 --- a/docs/functions/index.LB31.html +++ b/docs/functions/index.LB31.html @@ -1,5 +1,5 @@ -LB31 | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LB31 | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/index.LBspacesStop.html b/docs/functions/index.LBspacesStop.html index 3041ba8..b91586b 100644 --- a/docs/functions/index.LBspacesStop.html +++ b/docs/functions/index.LBspacesStop.html @@ -1,5 +1,5 @@ -LBspacesStop | @cto.af/linebreak
    • A rule that impacts linebreaking. Looking ahead and behind one code point +LBspacesStop | @cto.af/linebreak

      • A rule that impacts linebreaking. Looking ahead and behind one code point is fast, using state.prev and state.next respectively. Looking ahead more code points is possible with *BreakerState.codePoints(), but be careful of causing ReDos vulnerabilities.

        -

        Parameters

        Returns typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • state: BreakerState

      Returns
          | typeof PASS
          | typeof NO_BREAK
          | typeof MAY_BREAK
          | typeof MUST_BREAK

    diff --git a/docs/functions/state.resolve.html b/docs/functions/state.resolve.html index 9e085be..4a98d4b 100644 --- a/docs/functions/state.resolve.html +++ b/docs/functions/state.resolve.html @@ -1,4 +1,4 @@ -resolve | @cto.af/linebreak
    • LB1: Assign a line breaking class to each code point of the input. Resolve +resolve | @cto.af/linebreak

      • LB1: Assign a line breaking class to each code point of the input. Resolve AI, CB, CJ, SA, SG, and XX into other line breaking classes depending on criteria outside the scope of this algorithm.

        -

        Parameters

        • cls: number
        • char: string

        Returns number

      Generated using TypeDoc

      \ No newline at end of file +

      Parameters

      • cls: number
      • char: string

      Returns number

    diff --git a/docs/index.html b/docs/index.html index 6df3e9b..c74cca2 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,4 +1,4 @@ -@cto.af/linebreak

    @cto.af/linebreak

    @cto.af/linebreak

    An implementation of the Unicode Line Breaking Algorithm +@cto.af/linebreak

    @cto.af/linebreak

    @cto.af/linebreak

    An implementation of the Unicode Line Breaking Algorithm UAX #14. This implementation was originally started as a refresh of the linebreak package, and still shares @@ -16,18 +16,21 @@ but is in the domain of higher level software with knowledge of the available width and the display size of the text.

    -

    Installation

    npm install @cto.af/linebreak
    -
    -

    API

    Create and use a new Rules object:

    -
    import {Rules} from '@cto.af/linebreak'
    const r = new Rules({string: true});
    for (const brk of r.breaks('my input string')) {
    console.log(brk.string); // "my ", "input ", "string"
    console.log(brk.pos); // 3, 9, 15
    console.log(brk.required); // false, false, true
    } -
    +
    npm install @cto.af/linebreak
    +
    + +

    Create and use a new Rules object:

    +
    import {Rules} from '@cto.af/linebreak'
    const r = new Rules({string: true});
    for (const brk of r.breaks('my input string')) {
    console.log(brk.string); // "my ", "input ", "string"
    console.log(brk.pos); // 3, 9, 15
    console.log(brk.required); // false, false, true
    } +
    +

    The string option in the constructor will chop the input up for you into strings, rather than your having to do the slicing yourself. You may only -need the positions of the breaks, which is why this isn't done by default. +need the positions of the breaks, which is why this isn't done by default. The iterated Break objects also have a required field.

    You can tailor the rules that will be applied:

    -
    import {Rules, PASS} from '@cto.af/linebreak'
    const r = new Rules();
    r.replaceRule('LB25', (state) => PASS); // Do something more interesting that this! -
    +
    import {Rules, PASS} from '@cto.af/linebreak'
    const r = new Rules();
    r.replaceRule('LB25', (state) => PASS); // Do something more interesting that this! +
    +

    There are a few other convenience function available for modifying rules. A few of the rules have interactions with one another due to idiosyncrasies of the specification text. Comments have been left at these points in the @@ -35,16 +38,17 @@ sure to account for those interactions.

    In order for the conformance tests to pass, you can use the expanded number definition from UAX #14, Example 7:

    -
    const r = new Rules({example7: true});
    -
    -

    API Documentation

    Full API documentation is available.

    -

    Conformance to UAX #14

    This package intends to be fully conformant with UAX #14. It currently passes +

    const r = new Rules({example7: true});
    +
    + +

    Full API documentation is available.

    +

    This package intends to be fully conformant with UAX #14. It currently passes ALL of the tests published by Unicode, when the example7 option is enabled in the costructor.

    Other tailoring is possible by adding and removing rules.

    -

    License

    MIT

    +

    MIT


    Tests codecov

    -

    Generated using TypeDoc

    \ No newline at end of file +
    diff --git a/docs/interfaces/index.RulesOptions.html b/docs/interfaces/index.RulesOptions.html index 595a44e..47426b9 100644 --- a/docs/interfaces/index.RulesOptions.html +++ b/docs/interfaces/index.RulesOptions.html @@ -1,10 +1,10 @@ -RulesOptions | @cto.af/linebreak
    interface RulesOptions {
        example7: undefined | boolean;
        string: undefined | boolean;
        verbose: undefined | boolean;
    }

    Properties

    example7 +RulesOptions | @cto.af/linebreak
    interface RulesOptions {
        example7: undefined | boolean;
        string: undefined | boolean;
        verbose: undefined | boolean;
    }

    Properties

    Properties

    example7: undefined | boolean

    Use the extra rules for numbers from - Example 7. Set to true for running the conformance tests.

    -
    string: undefined | boolean

    Extract strings from input, rather than just - returning char offsets.

    -
    verbose: undefined | boolean

    Turn on some verbose logging that is - useful for debug.

    -

    Generated using TypeDoc

    \ No newline at end of file +

    Properties

    example7: undefined | boolean

    Use the extra rules for numbers from +Example 7. Set to true for running the conformance tests.

    +
    string: undefined | boolean

    Extract strings from input, rather than just +returning char offsets.

    +
    verbose: undefined | boolean

    Turn on some verbose logging that is +useful for debug.

    +
    diff --git a/docs/modules/EastAsianWidth.html b/docs/modules/EastAsianWidth.html index 7ab83ae..b0a37e3 100644 --- a/docs/modules/EastAsianWidth.html +++ b/docs/modules/EastAsianWidth.html @@ -1,7 +1,7 @@ -EastAsianWidth | @cto.af/linebreak

    Module EastAsianWidth

    Index

    Variables

    EastAsianWidth +EastAsianWidth | @cto.af/linebreak

    Generated using TypeDoc

    \ No newline at end of file +
    diff --git a/docs/modules/LineBreak.html b/docs/modules/LineBreak.html index 8ebbfd0..da0da4f 100644 --- a/docs/modules/LineBreak.html +++ b/docs/modules/LineBreak.html @@ -1,7 +1,7 @@ -LineBreak | @cto.af/linebreak

    Index

    Variables

    LineBreak +LineBreak | @cto.af/linebreak

    Generated using TypeDoc

    \ No newline at end of file +
    diff --git a/docs/modules/break.html b/docs/modules/break.html index eb12b43..0218e44 100644 --- a/docs/modules/break.html +++ b/docs/modules/break.html @@ -1,2 +1,2 @@ -break | @cto.af/linebreak

    Index

    Classes

    Generated using TypeDoc

    \ No newline at end of file +break | @cto.af/linebreak

    Index

    Classes

    diff --git a/docs/modules/index.html b/docs/modules/index.html index ae26eca..afab16b 100644 --- a/docs/modules/index.html +++ b/docs/modules/index.html @@ -1,5 +1,4 @@ -index | @cto.af/linebreak

    References

    Break -BreakerState +index | @cto.af/linebreak

    References

    Re-exports Break
    Re-exports BreakerState
    Re-exports EastAsianWidth
    Re-exports LineBreak
    Renames and re-exports names
    Re-exports eot
    Re-exports sot

    Generated using TypeDoc

    \ No newline at end of file +

    References

    Re-exports Break
    Re-exports EastAsianWidth
    Re-exports LineBreak
    Renames and re-exports names
    Re-exports eot
    Re-exports sot
    diff --git a/docs/modules/state.html b/docs/modules/state.html index 5aa6361..c536c93 100644 --- a/docs/modules/state.html +++ b/docs/modules/state.html @@ -1,6 +1,5 @@ -state | @cto.af/linebreak

    Index

    Classes

    BreakerChar -BreakerState +state | @cto.af/linebreak

    Index

    Classes

    Variables

    Functions

    Generated using TypeDoc

    \ No newline at end of file +
    diff --git a/docs/types/index.BreakRule.html b/docs/types/index.BreakRule.html index f6d31db..bf18f80 100644 --- a/docs/types/index.BreakRule.html +++ b/docs/types/index.BreakRule.html @@ -1 +1 @@ -BreakRule | @cto.af/linebreak
    BreakRule: ((state) => PASS | NO_BREAK | MAY_BREAK | MUST_BREAK)

    Type declaration

      • (state): PASS | NO_BREAK | MAY_BREAK | MUST_BREAK
      • Parameters

        Returns PASS | NO_BREAK | MAY_BREAK | MUST_BREAK

    Generated using TypeDoc

    \ No newline at end of file +BreakRule | @cto.af/linebreak
    BreakRule: ((state: state) =>
        | PASS
        | NO_BREAK
        | MAY_BREAK
        | MUST_BREAK)
    diff --git a/docs/variables/EastAsianWidth.EastAsianWidth.html b/docs/variables/EastAsianWidth.EastAsianWidth.html index 2e4fa96..91b0196 100644 --- a/docs/variables/EastAsianWidth.EastAsianWidth.html +++ b/docs/variables/EastAsianWidth.EastAsianWidth.html @@ -1 +1 @@ -EastAsianWidth | @cto.af/linebreak
    EastAsianWidth: UnicodeTrie = ...

    Generated using TypeDoc

    \ No newline at end of file +EastAsianWidth | @cto.af/linebreak
    EastAsianWidth: UnicodeTrie = ...
    diff --git a/docs/variables/EastAsianWidth.generatedDate.html b/docs/variables/EastAsianWidth.generatedDate.html index 2c071e1..5fdc742 100644 --- a/docs/variables/EastAsianWidth.generatedDate.html +++ b/docs/variables/EastAsianWidth.generatedDate.html @@ -1 +1 @@ -generatedDate | @cto.af/linebreak
    generatedDate: Date = ...

    Generated using TypeDoc

    \ No newline at end of file +generatedDate | @cto.af/linebreak
    generatedDate: Date = ...
    diff --git a/docs/variables/EastAsianWidth.inputFileDate.html b/docs/variables/EastAsianWidth.inputFileDate.html index 978bfa1..3f0e1cc 100644 --- a/docs/variables/EastAsianWidth.inputFileDate.html +++ b/docs/variables/EastAsianWidth.inputFileDate.html @@ -1 +1 @@ -inputFileDate | @cto.af/linebreak
    inputFileDate: Date = ...

    Generated using TypeDoc

    \ No newline at end of file +inputFileDate | @cto.af/linebreak
    inputFileDate: Date = ...
    diff --git a/docs/variables/EastAsianWidth.names.html b/docs/variables/EastAsianWidth.names.html index 166a577..71dd409 100644 --- a/docs/variables/EastAsianWidth.names.html +++ b/docs/variables/EastAsianWidth.names.html @@ -1 +1 @@ -names | @cto.af/linebreak
    names: Record<string, number> = ...

    Generated using TypeDoc

    \ No newline at end of file +names | @cto.af/linebreak
    names: Record<string, number> = ...
    diff --git a/docs/variables/EastAsianWidth.values.html b/docs/variables/EastAsianWidth.values.html index aa90109..ef336fa 100644 --- a/docs/variables/EastAsianWidth.values.html +++ b/docs/variables/EastAsianWidth.values.html @@ -1 +1 @@ -values | @cto.af/linebreak
    values: string[]

    Generated using TypeDoc

    \ No newline at end of file +values | @cto.af/linebreak
    values: string[]
    diff --git a/docs/variables/EastAsianWidth.version.html b/docs/variables/EastAsianWidth.version.html index a558f00..ff789c2 100644 --- a/docs/variables/EastAsianWidth.version.html +++ b/docs/variables/EastAsianWidth.version.html @@ -1 +1 @@ -version | @cto.af/linebreak
    version: "15.1.0" = "15.1.0"

    Generated using TypeDoc

    \ No newline at end of file +version | @cto.af/linebreak
    version: "15.1.0" = "15.1.0"
    diff --git a/docs/variables/LineBreak.LineBreak.html b/docs/variables/LineBreak.LineBreak.html index cd370f9..68855c4 100644 --- a/docs/variables/LineBreak.LineBreak.html +++ b/docs/variables/LineBreak.LineBreak.html @@ -1 +1 @@ -LineBreak | @cto.af/linebreak

    Variable LineBreakConst

    LineBreak: UnicodeTrie = ...

    Generated using TypeDoc

    \ No newline at end of file +LineBreak | @cto.af/linebreak
    LineBreak: UnicodeTrie = ...
    diff --git a/docs/variables/LineBreak.generatedDate.html b/docs/variables/LineBreak.generatedDate.html index dd3b892..15bec09 100644 --- a/docs/variables/LineBreak.generatedDate.html +++ b/docs/variables/LineBreak.generatedDate.html @@ -1 +1 @@ -generatedDate | @cto.af/linebreak

    Variable generatedDateConst

    generatedDate: Date = ...

    Generated using TypeDoc

    \ No newline at end of file +generatedDate | @cto.af/linebreak

    Variable generatedDateConst

    generatedDate: Date = ...
    diff --git a/docs/variables/LineBreak.inputFileDate.html b/docs/variables/LineBreak.inputFileDate.html index 8fa05e5..4592cca 100644 --- a/docs/variables/LineBreak.inputFileDate.html +++ b/docs/variables/LineBreak.inputFileDate.html @@ -1 +1 @@ -inputFileDate | @cto.af/linebreak

    Variable inputFileDateConst

    inputFileDate: Date = ...

    Generated using TypeDoc

    \ No newline at end of file +inputFileDate | @cto.af/linebreak

    Variable inputFileDateConst

    inputFileDate: Date = ...
    diff --git a/docs/variables/LineBreak.names.html b/docs/variables/LineBreak.names.html index d58b5d5..ff3bafb 100644 --- a/docs/variables/LineBreak.names.html +++ b/docs/variables/LineBreak.names.html @@ -1 +1 @@ -names | @cto.af/linebreak
    names: Record<string, number> = ...

    Generated using TypeDoc

    \ No newline at end of file +names | @cto.af/linebreak
    names: Record<string, number> = ...
    diff --git a/docs/variables/LineBreak.values.html b/docs/variables/LineBreak.values.html index 70b850e..f2b4a8d 100644 --- a/docs/variables/LineBreak.values.html +++ b/docs/variables/LineBreak.values.html @@ -1 +1 @@ -values | @cto.af/linebreak
    values: string[]

    Generated using TypeDoc

    \ No newline at end of file +values | @cto.af/linebreak
    values: string[]
    diff --git a/docs/variables/LineBreak.version.html b/docs/variables/LineBreak.version.html index 94da7bd..3835dae 100644 --- a/docs/variables/LineBreak.version.html +++ b/docs/variables/LineBreak.version.html @@ -1 +1 @@ -version | @cto.af/linebreak

    Variable versionConst

    version: "15.1.0" = "15.1.0"

    Generated using TypeDoc

    \ No newline at end of file +version | @cto.af/linebreak
    version: "15.1.0" = "15.1.0"
    diff --git a/docs/variables/index.MAY_BREAK.html b/docs/variables/index.MAY_BREAK.html index 5db82b1..42b7433 100644 --- a/docs/variables/index.MAY_BREAK.html +++ b/docs/variables/index.MAY_BREAK.html @@ -1,2 +1,2 @@ -MAY_BREAK | @cto.af/linebreak

    Variable MAY_BREAKConst

    MAY_BREAK: typeof MAY_BREAK = ...

    This rule asserts that there may be a break after the current code point.

    -

    Generated using TypeDoc

    \ No newline at end of file +MAY_BREAK | @cto.af/linebreak

    Variable MAY_BREAKConst

    MAY_BREAK: typeof MAY_BREAK = ...

    This rule asserts that there may be a break after the current code point.

    +
    diff --git a/docs/variables/index.MUST_BREAK.html b/docs/variables/index.MUST_BREAK.html index 853b81d..ca1a7e6 100644 --- a/docs/variables/index.MUST_BREAK.html +++ b/docs/variables/index.MUST_BREAK.html @@ -1,2 +1,2 @@ -MUST_BREAK | @cto.af/linebreak

    Variable MUST_BREAKConst

    MUST_BREAK: typeof MUST_BREAK = ...

    This rule asserts that there must be a line break after the current code point.

    -

    Generated using TypeDoc

    \ No newline at end of file +MUST_BREAK | @cto.af/linebreak

    Variable MUST_BREAKConst

    MUST_BREAK: typeof MUST_BREAK = ...

    This rule asserts that there must be a line break after the current code point.

    +
    diff --git a/docs/variables/index.NO_BREAK.html b/docs/variables/index.NO_BREAK.html index 7544e2b..d55593b 100644 --- a/docs/variables/index.NO_BREAK.html +++ b/docs/variables/index.NO_BREAK.html @@ -1,3 +1,3 @@ -NO_BREAK | @cto.af/linebreak

    Variable NO_BREAKConst

    NO_BREAK: typeof NO_BREAK = ...

    This rule asserts that there must not be a break after the current +NO_BREAK | @cto.af/linebreak

    Variable NO_BREAKConst

    NO_BREAK: typeof NO_BREAK = ...

    This rule asserts that there must not be a break after the current code point.

    -

    Generated using TypeDoc

    \ No newline at end of file +
    diff --git a/docs/variables/index.PASS.html b/docs/variables/index.PASS.html index 3e0cbcd..02538a0 100644 --- a/docs/variables/index.PASS.html +++ b/docs/variables/index.PASS.html @@ -1,2 +1,2 @@ -PASS | @cto.af/linebreak

    Variable PASSConst

    PASS: typeof PASS = ...

    This rule has no opinion.

    -

    Generated using TypeDoc

    \ No newline at end of file +PASS | @cto.af/linebreak

    Variable PASSConst

    PASS: typeof PASS = ...

    This rule has no opinion.

    +
    diff --git a/docs/variables/state.eot.html b/docs/variables/state.eot.html index 3db9e2e..1a2b4e4 100644 --- a/docs/variables/state.eot.html +++ b/docs/variables/state.eot.html @@ -1 +1 @@ -eot | @cto.af/linebreak

    Variable eotConst

    eot: -2 = -2

    Generated using TypeDoc

    \ No newline at end of file +eot | @cto.af/linebreak

    Variable eotConst

    eot: -2 = -2
    diff --git a/docs/variables/state.sot.html b/docs/variables/state.sot.html index cc74360..af9ad67 100644 --- a/docs/variables/state.sot.html +++ b/docs/variables/state.sot.html @@ -1 +1 @@ -sot | @cto.af/linebreak

    Variable sotConst

    sot: -1 = -1

    Generated using TypeDoc

    \ No newline at end of file +sot | @cto.af/linebreak

    Variable sotConst

    sot: -1 = -1
    From fe99d4936273ac33de6248e3baac789048aa2c3e Mon Sep 17 00:00:00 2001 From: Joe Hildebrand Date: Wed, 31 Jul 2024 22:34:08 -0500 Subject: [PATCH 3/5] Run build --- lib/EastAsianWidth.js | 6 +-- lib/LineBreak.js | 6 +-- types/index.d.ts | 86 +++++++++++++++++++++---------------------- 3 files changed, 49 insertions(+), 49 deletions(-) diff --git a/lib/EastAsianWidth.js b/lib/EastAsianWidth.js index b348e6d..4ed6bf8 100644 --- a/lib/EastAsianWidth.js +++ b/lib/EastAsianWidth.js @@ -2,9 +2,9 @@ import {UnicodeTrie} from "@cto.af/unicode-trie"; export const version = "15.1.0"; export const inputFileDate = new Date("2023-07-28T23:34:08.000Z"); -export const generatedDate = new Date("2024-08-01T00:57:44.717Z"); +export const generatedDate = new Date("2024-08-01T03:33:09.558Z"); export const EastAsianWidth = UnicodeTrie.fromBase64( - `AAAEAAAAAAD/////tQIAAB+LCACI3apmAgPtmj9IHzEUx8+fbam1FLoUCh1aaCl0cSoODgou + `AAAEAAAAAAD/////tQIAAB+LCAD1AatmAgPtmj9IHzEUx8+fbam1FLoUCh1aaCl0cSoODgou iougOAgu4iRO4iQiiDgoCoK4OYi66aabo5M4KKiToC7ioIPoIgjiN5qTeNz9LucvL8l57wcf ksu/l7x7SV4uv+VSEKyCdbAJwucihUwy+wqsj2JwZLCtY3CWkHdRYdtX4FbG70F1dRB8AF/A N/AD/Ab/QB0Q5f4jbJBxGzRLWW2WZHZATjhfu5V4lF7k7cp4P+KDsuxApM4wnkeVtHElPoW4 @@ -17,7 +17,7 @@ export const EastAsianWidth = UnicodeTrie.fromBase64( Ul+25z+FzaTZti/7P5UsX/ydPPhbPvXBlU5MyjPRlm3btS3D5VzPy3nIRf9tjL/S9tLOPjb0 RpGvq2+dfIpx2/RpXM/71+g8qawPfn+S7Zn41kCxXvjwrYdC9mv8LVf7lYv57fM7dXmeoZRt eu2n8hfz9C58PleZ3vts7tUuv/ln9Zd19l/dOWja93J5XnPh31Ptf76t8VTrsmn/3PSa8QCh - pJTR4EkAAB+LCACI3apmAgOLVvJT0lGKVIoFANHfAiwJAAAA` + pJTR4EkAAB+LCAD1AatmAgOLVvJT0lGKVIoFANHfAiwJAAAA` ); /** diff --git a/lib/LineBreak.js b/lib/LineBreak.js index d3b7951..53a7de4 100644 --- a/lib/LineBreak.js +++ b/lib/LineBreak.js @@ -2,9 +2,9 @@ import {UnicodeTrie} from "@cto.af/unicode-trie"; export const version = "15.1.0"; export const inputFileDate = new Date("2023-07-28T13:19:22.000Z"); -export const generatedDate = new Date("2024-08-01T00:57:44.748Z"); +export const generatedDate = new Date("2024-08-01T03:33:09.589Z"); export const LineBreak = UnicodeTrie.fromBase64( - `AAgOAAEAAAD/////3RMAAB+LCACI3apmAgPtnQnwl0UZx1/B8EIlvFFR0DARUTHNK/PIi7KS + `AAgOAAEAAAD/////3RMAAB+LCAD1AatmAgPtnQnwl0UZx1/B8EIlvFFR0DARUTHNK/PIi7KS tJLUAq8EnRKYSnE00AmRMgknJQui8Ric1GhEMyPNEUHTEUoHrAQt0TKFRFMHHe374D7Nzrrv vnvv+/f/e2c+s++99+6zu8/uLu5ZVUvAcvAM2HjDquoDtge7gkFgqId5APgEOAacCEaAkWA0 GGP4bhy4WLr+FrgUXA6mgelgJpgD5oJ54B5wH1gkffcoeAL8FfwD/Au8Av4D3gTVh+BX0Ads @@ -98,7 +98,7 @@ export const LineBreak = UnicodeTrie.fromBase64( Ezq75f3QY+O753UsO+ruy3tJ68JB9zw3+2pQ3Ve3P7aJGG5zsc/FPTr3qe/a+kV+PyRt6Uyb PKTucR97fCPX2EnqcZkUfmtKt6nKQFP6TVn25QpHH3tMeT3Xvv7yXsnyeLXJHzHizLXcdbUz drqKHe6p7c9d7oT+J5f9ddTJO771fGi6dJURcsplqezQyTIh9pnkoxCZsIQMHCq/ph5DTN2e - D+0PbcM+8iXXQ8mhc+Jy/A9RMxgScCMBAB+LCACI3apmAgMdjksWgyAMRffCuKN2BZFSgSqi + D+0PbcM+8iXXQ8mhc+Jy/A9RMxgScCMBAB+LCAD1AatmAgMdjksWgyAMRffCuKN2BZFSgSqi KP6O+9+GuU7uSfJeXnKabTMv4yaF7RWNKLof1Z8ZQslY8I2LQjpFRsiDYkC1IBSF39kACbPF nEALJJDc4KMtXItUsYIZMynC8Yo5fGmZVb461geRmDdyUjytI9VSeQT/Ib9lhiA8OBHoenPd OuNFhvcAAAA=` diff --git a/types/index.d.ts b/types/index.d.ts index 3a82909..10a3167 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -1,45 +1,45 @@ -export function LB02(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB03(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB04(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB05(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB06(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LBspacesStop(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB07(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB08(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB08a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB09(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB10(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB11(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB12(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB12a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB13(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB14(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB15a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB15b(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB16(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB17(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB18(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB19(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB20(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB21(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB21a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB21b(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB22(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB23(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB23a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB24(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB25(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB26(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB27(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB28(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB28a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB29(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB30(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB30a(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB30b(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function LB31(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function Example7_13(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; -export function Example7_25(state: import('./state.js').BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB02(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB03(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB04(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB05(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB06(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LBspacesStop(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB07(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB08(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB08a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB09(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB10(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB11(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB12(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB12a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB13(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB14(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB15a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB15b(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB16(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB17(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB18(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB19(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB20(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB21(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB21a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB21b(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB22(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB23(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB23a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB24(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB25(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB26(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB27(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB28(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB28a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB29(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB30(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB30a(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB30b(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function LB31(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function Example7_13(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export function Example7_25(state: import("./state.js").BreakerState): typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; /** * This rule has no opinion. */ @@ -125,7 +125,7 @@ export class Rules { * more code points is possible with `*BreakerState.codePoints()`, but be * careful of causing ReDos vulnerabilities. */ -export type BreakRule = (state: import('./state.js').BreakerState) => typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; +export type BreakRule = (state: import("./state.js").BreakerState) => typeof PASS | typeof NO_BREAK | typeof MAY_BREAK | typeof MUST_BREAK; /** * Options for how rules are applied. */ From 39f83436cb23897bc6398ffee9f71041433fc4c8 Mon Sep 17 00:00:00 2001 From: Joe Hildebrand Date: Wed, 31 Jul 2024 22:34:50 -0500 Subject: [PATCH 4/5] Publish with GHA --- .github/workflows/publish.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..9836647 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,23 @@ +name: Publish Package to npmjs +on: + release: + types: [published] +jobs: + build: + runs-on: ubuntu-latest + permissions: + contents: read + id-token: write + steps: + - uses: actions/checkout@v4 + - run: corepack enable + - uses: actions/setup-node@v4 + with: + node-version: '20.x' + registry-url: 'https://registry.npmjs.org' + cache: pnpm + - run: pnpm i -r + - run: npm run build + - run: npm publish --access public --provenance + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} From 2d8d34f577d56c0396d39bc6be0a1c2cd71f83e5 Mon Sep 17 00:00:00 2001 From: Joe Hildebrand Date: Wed, 31 Jul 2024 22:36:31 -0500 Subject: [PATCH 5/5] Fix repo format --- package.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 3896b51..8f79982 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,10 @@ "tailorable" ], "author": "Joe Hildebrand ", - "repository": "cto-af/linebreak", + "repository": { + "type": "git", + "url": "git+https://github.com/cto-af/linebreak.git" + }, "license": "MIT", "devDependencies": { "@peggyjs/eslint-config": "4.0.3",