diff --git a/.github/workflows/check-published-scheduled.yml b/.github/workflows/check-published-scheduled.yml index 28120ee..e98e04f 100644 --- a/.github/workflows/check-published-scheduled.yml +++ b/.github/workflows/check-published-scheduled.yml @@ -10,13 +10,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v4 + uses: actions/checkout@v7 with: ref: ${{ github.event.pull_request.head.sha }} - name: Check Published uses: checkdigit/github-actions/check-published@main env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NPM_TOKEN: ${{ secrets.NPM_TOKEN_PUBLISH }} DEBUG: '*' SLACK_PUBLISH_MISMATCH: ${{ secrets.SLACK_PUBLISH_MISMATCH }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 46f8693..2122c68 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,15 +14,15 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: ['22.x', '24.x'] + node-version: ['24.x', '26.x'] steps: - name: Checkout Code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 + uses: actions/setup-node@v7 with: node-version: ${{ matrix.node-version }} - registry-url: 'https://registry.npmjs.org' + cache: 'npm' - name: Install Dependencies run: npm ci --ignore-scripts - name: Compile @@ -39,17 +39,17 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: ['22.x', '24.x'] + node-version: ['24.x', '26.x'] steps: - name: Checkout Code - uses: actions/checkout@v4 + uses: actions/checkout@v7 with: ref: ${{ github.event.pull_request.head.sha }} - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 + uses: actions/setup-node@v7 with: node-version: ${{ matrix.node-version }} - registry-url: 'https://registry.npmjs.org' + cache: 'npm' - name: Install Dependencies run: npm ci --ignore-scripts - name: Compile diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 927ae3a..3adf798 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -24,8 +24,8 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 - name: Initialize CodeQL - uses: github/codeql-action/init@v3 + uses: github/codeql-action/init@v4 with: languages: ${{ matrix.language }} - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 + uses: github/codeql-action/analyze@v4 diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index a7239f1..413edfa 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -2,39 +2,69 @@ name: Coverage on: pull_request: - branches: - - 'main' + branches: [main] -env: - CI: true +concurrency: + group: coverage-${{ github.event.pull_request.number }} + cancel-in-progress: true jobs: - coverage: - name: Coverage + base: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + with: + ref: ${{ github.event.pull_request.base.sha }} + - uses: actions/setup-node@v7 + with: + node-version: '26.x' + cache: 'npm' + - name: Install dependencies + run: npm ci --ignore-scripts + - name: Run coverage + run: npm run ci:coverage + - uses: actions/upload-artifact@v7 + with: + name: base-coverage + path: coverage/lcov.info + if-no-files-found: error + + pr: runs-on: ubuntu-latest steps: - - name: Checkout Code - uses: actions/checkout@v4 + - uses: actions/checkout@v7 with: ref: ${{ github.event.pull_request.head.sha }} - - name: Use Node.js - uses: actions/setup-node@v4 + - uses: actions/setup-node@v7 with: - node-version: '24.x' - registry-url: 'https://registry.npmjs.org' - - name: Install Dependencies + node-version: '26.x' + cache: 'npm' + - name: Install dependencies run: npm ci --ignore-scripts - - name: Calculate Code Coverage + - name: Run coverage run: npm run ci:coverage - - name: Create Coverage Report for base branch - run: | - mv coverage/lcov.info coverage/lcov_head.info - git fetch - git checkout origin/${{ github.event.pull_request.base.ref }} - npm ci --ignore-scripts && npm run ci:coverage - - name: Post Coverage Report + - uses: actions/upload-artifact@v7 + with: + name: pr-coverage + path: coverage/lcov.info + if-no-files-found: error + + report: + name: Coverage + needs: [base, pr] + if: ${{ always() }} + runs-on: ubuntu-latest + steps: + - name: Require successful coverage jobs + if: ${{ needs.base.result != 'success' || needs.pr.result != 'success' }} + run: exit 1 + - uses: actions/download-artifact@v8 + with: { name: base-coverage, path: coverage } + - uses: actions/download-artifact@v8 + with: { name: pr-coverage, path: coverage-pr } + - name: Post coverage report uses: checkdigit/github-actions/coverage-reporter@main with: - lcov-file: 'coverage/lcov_head.info' - lcov-base: 'coverage/lcov.info' + coverage-results-folder-pr: 'coverage-pr' + coverage-results-folder-base: 'coverage' delete-old-comments: true diff --git a/.github/workflows/publish-beta.yml b/.github/workflows/publish-beta.yml deleted file mode 100644 index e392636..0000000 --- a/.github/workflows/publish-beta.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: Publish Beta Package - -on: - pull_request: - branches: - - 'main' - -jobs: - publishBeta: - name: Publish Beta - runs-on: ubuntu-latest - steps: - - name: Checkout Code - uses: actions/checkout@v4 - with: - ref: ${{ github.event.pull_request.head.sha }} - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: '24.x' - registry-url: 'https://registry.npmjs.org' - - name: Check Label - uses: checkdigit/github-actions/check-label@main - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Check Imports - uses: checkdigit/github-actions/check-imports@main - - name: Install Dependencies - run: npm ci --ignore-scripts - - name: Audit Signatures - run: npm audit signatures - - name: Run Test - run: npm run ci:test - - name: Prepare Beta - id: prepare-beta - uses: checkdigit/github-actions/prepare-beta@main - - name: Publish Beta - run: npm publish --tag beta - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN_PUBLISH }} - - name: Comment npm publish result - uses: checkdigit/github-actions/comment-npm-publish@main - with: - betaPackage: ${{ steps.prepare-beta.outputs.betaPackage }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index af539a3..18de9ac 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -3,24 +3,64 @@ name: Publish on: release: types: [created] + pull_request: + branches: + - 'main' jobs: publish: - name: Publish to NPM + name: ${{ github.event_name == 'release' && 'Publish Release' || 'Publish Beta' }} + if: >- + (github.event_name == 'release' && github.event.action == 'created') || + (github.event_name == 'pull_request' && + github.event.pull_request.base.ref == 'main' && + github.event.pull_request.head.repo.full_name == github.repository) runs-on: ubuntu-latest + environment: npm-publish + permissions: + contents: read + id-token: write + pull-requests: write steps: - name: Checkout Code - uses: actions/checkout@v4 + uses: actions/checkout@v7 + with: + ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.ref }} - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v7 with: - node-version: '24.x' + node-version: '26.x' + package-manager-cache: false registry-url: 'https://registry.npmjs.org' + - name: Check Label + if: github.event_name == 'pull_request' + uses: checkdigit/github-actions/check-label@main + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Check Imports + if: github.event_name == 'pull_request' + uses: checkdigit/github-actions/check-imports@main - name: Install Dependencies run: npm ci --ignore-scripts - name: Audit Signatures run: npm audit signatures - - name: Publish + - name: Run Test + if: github.event_name == 'pull_request' + run: npm run ci:test + - name: Prepare Beta + if: github.event_name == 'pull_request' + id: prepare-beta + uses: checkdigit/github-actions/prepare-beta@main + - name: Publish Release + if: github.event_name == 'release' run: npm publish + - name: Publish Beta + if: github.event_name == 'pull_request' + run: npm publish --tag beta + - name: Comment npm publish result + if: github.event_name == 'pull_request' + uses: checkdigit/github-actions/comment-npm-publish@main + with: + betaPackage: ${{ steps.prepare-beta.outputs.betaPackage }} env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN_PUBLISH }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/LICENSE.txt b/LICENSE.txt index e1810f9..193ed4e 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License -Copyright (c) 2022-2025 Check Digit, LLC. +Copyright (c) 2022-2026 Check Digit, LLC Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 741f425..4bfb7a1 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Check Digit Time Library -Copyright (c) 2022-2025 [Check Digit, LLC](https://checkdigit.com) +Copyright © 2022-2026 [Check Digit, LLC](https://checkdigit.com) The Check Digit time library is the officially sanctioned method for Check Digit services to deal with time. It has date manipulation functions provided by date-fns. Features: diff --git a/SECURITY.md b/SECURITY.md index 4d0a363..c233cbd 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -6,8 +6,8 @@ These versions of `@checkdigit/time` are currently being supported with security | Version | Supported | | ------- | ------------------ | -| \>= 2.x | :white_check_mark: | -| < 2.0 | :x: | +| \>= 6.0 | :white_check_mark: | +| \< 6.0 | :x: | ## Reporting a Vulnerability diff --git a/eslint.config.mjs b/eslint.config.mjs index 14050fa..2fb47e2 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -1,12 +1,27 @@ import checkdigitConfig from '@checkdigit/eslint-config'; +const eslintCommentsPlugin = checkdigitConfig.find( + (config) => + config.plugins?.['@eslint-community/eslint-comments'] !== undefined, +)?.plugins?.['@eslint-community/eslint-comments']; + +if (eslintCommentsPlugin === undefined) { + throw new Error('Unable to find the ESLint comments plugin'); +} + export default [ ...checkdigitConfig, { files: ['src/date-fns/**', 'src/date-fns-tz/**'], + plugins: { + 'eslint-comments': eslintCommentsPlugin, + }, rules: { + '@eslint-community/eslint-comments/no-unlimited-disable': 'off', '@checkdigit/file-path-comment': 'off', 'markdown/no-missing-label-refs': 'off', + 'markdown/no-space-in-emphasis': 'off', + 'markdown/no-unused-definitions': 'off', 'markdown/fenced-code-language': 'off', 'unicorn/filename-case': 'off', }, diff --git a/package-lock.json b/package-lock.json index c38ce9c..6cf6c7a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,152 +1,191 @@ { "name": "@checkdigit/time", - "version": "5.0.0", + "version": "6.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@checkdigit/time", - "version": "5.0.0", + "version": "6.0.0", "license": "MIT", "devDependencies": { - "@checkdigit/eslint-config": "^11.2.7", - "@checkdigit/prettier-config": "^6.3.0", - "@checkdigit/typescript-config": "^9.1.1", - "rimraf": "^6.0.1" + "@checkdigit/eslint-config": "^12.1.0", + "@checkdigit/prettier-config": "^8.1.1", + "@checkdigit/typescript-config": "^10.2.1" }, "engines": { - "node": ">=22.14" + "node": ">=24.18.0" } }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "node_modules/@apidevtools/json-schema-ref-parser": { + "version": "15.5.2", + "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-15.5.2.tgz", + "integrity": "sha512-B+C9Ok0DF/rjANIUHgwcV5/d4C72MB7f2IbKFL8jDGcGq2qn3yr893s8vAn2kbhmyaelAin0JK8EKF9P1+y7aQ==", "dev": true, - "license": "Apache-2.0", - "peer": true, + "license": "MIT", "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" + "js-yaml": "^5.2.2", + "undici": "^6.28.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=20" + }, + "peerDependencies": { + "@types/json-schema": "^7.0.15" + } + }, + "node_modules/@apidevtools/json-schema-ref-parser/node_modules/js-yaml": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.4.1.tgz", + "integrity": "sha512-28R/k+NAjeuf7+CKlTxWZVExJGwVVLwY06DgEnOMz2gEpfNkDcD7QvyiVPT0xy0XXhU8vHsd4Ot42OOPdJG7dQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.mjs" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", - "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "node_modules/@checkdigit/eslint-athena-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@checkdigit/eslint-athena-plugin/-/eslint-athena-plugin-2.0.0.tgz", + "integrity": "sha512-Sx9Khr71vR+EwVLz6nEaAzCDdpppWSRd5aT96cUOpRweK0VZMGHzNW8HAmCjoGrnsyoxJLQiMGHuhzGXxvpJ+g==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "@apidevtools/json-schema-ref-parser": "^15.5.1", + "@typescript-eslint/type-utils": "^8.65.0", + "@typescript-eslint/utils": "^8.65.0", + "ajv": "^8.20.0", + "debug": "^4.4.3", + "glob": "^13.0.6", + "http-status-codes": "^2.3.0", + "js-yaml": "^4.2.0", + "json-pointer": "^0.6.2", + "jsonpath-plus": "^10.4.0", + "ts-api-utils": "^2.5.0" + }, "engines": { - "node": ">=6.9.0" + "node": ">=24.18.0" + }, + "peerDependencies": { + "eslint": ">=10 <11" } }, "node_modules/@checkdigit/eslint-config": { - "version": "11.2.7", - "resolved": "https://registry.npmjs.org/@checkdigit/eslint-config/-/eslint-config-11.2.7.tgz", - "integrity": "sha512-WqJk4kf7sbpAmgz9Rdw1tB3+XQx24kTbq1y5hoBJ/nO0Zk+XOwmngFUgu2jDRdqkq4pO9zm1WatguwZLThk6qw==", + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@checkdigit/eslint-config/-/eslint-config-12.1.0.tgz", + "integrity": "sha512-SMWHhVUzqyBGh9MsVm2EMc1x/HcThMfAoKwr4IEWZ+AVkcqirXykOmw8kgkrtfLFv4uMVP8dfZFuFLL2i1uzqw==", "dev": true, "license": "MIT", + "dependencies": { + "@checkdigit/eslint-athena-plugin": "2.0.0", + "@checkdigit/eslint-plugin": "8.0.0", + "@eslint-community/eslint-plugin-eslint-comments": "4.7.2", + "@eslint/js": "10.0.1", + "@eslint/json": "2.0.1", + "@eslint/markdown": "8.0.3", + "eslint-config-prettier": "10.1.8", + "eslint-import-resolver-typescript": "4.4.5", + "eslint-plugin-import-x": "4.17.1", + "eslint-plugin-n": "18.3.0", + "eslint-plugin-no-only-tests": "3.4.0", + "eslint-plugin-no-secrets": "2.3.3", + "eslint-plugin-sonarjs": "4.2.0", + "eslint-plugin-unicorn": "73.0.0", + "eslint-plugin-yml": "3.8.1", + "typescript-eslint": "8.67.0" + }, "engines": { - "node": ">=22.14" + "node": ">=24.18.0" }, "peerDependencies": { - "@checkdigit/eslint-plugin": "7.14.0", - "@eslint/compat": "1.2.9", - "@eslint/eslintrc": "3.3.1", - "@eslint/js": "9.27.0", - "@eslint/json": "0.12.0", - "@eslint/markdown": "6.4.0", - "eslint": "9.27.0", - "eslint-config-prettier": "10.1.5", - "eslint-import-resolver-typescript": "4.4.1", - "eslint-plugin-eslint-comments": "3.2.0", - "eslint-plugin-import": "2.31.0", - "eslint-plugin-n": "17.18.0", - "eslint-plugin-no-only-tests": "3.3.0", - "eslint-plugin-no-secrets": "2.2.1", - "eslint-plugin-sonarjs": "3.0.2", - "eslint-plugin-unicorn": "59.0.1", - "eslint-plugin-yml": "1.18.0", - "typescript-eslint": "8.33.0" + "eslint": "10.8.1" } }, "node_modules/@checkdigit/eslint-plugin": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@checkdigit/eslint-plugin/-/eslint-plugin-7.14.0.tgz", - "integrity": "sha512-R58XSpdqULjt09KlgRXM9WoPM2AUmLLzqOJiaBoiUs7Rk83acCUsrLFHUK2/2y0nqFuZYWQYRkie1qfQfRap2g==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@checkdigit/eslint-plugin/-/eslint-plugin-8.0.0.tgz", + "integrity": "sha512-X9cmzGWdSV10Pcg8VZTfyNyHENYoC17Dj9v2de9104KRTt1LHeJ3dBc6ip4Uq+2hIZYgKH6a8sD5P2+OUQpnTw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/type-utils": "^8.23.0", - "@typescript-eslint/utils": "^8.23.0", + "@typescript-eslint/type-utils": "^8.66.0", + "@typescript-eslint/utils": "^8.66.0", "http-status-codes": "^2.3.0", - "ts-api-utils": "^2.0.1" + "ts-api-utils": "^2.5.0" }, "engines": { - "node": ">=22.14" + "node": ">=24.18.0" }, "peerDependencies": { - "eslint": ">=9 <10" + "eslint": ">=10 <11" } }, "node_modules/@checkdigit/prettier-config": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@checkdigit/prettier-config/-/prettier-config-6.3.0.tgz", - "integrity": "sha512-efv1d9zWqJjUtsf7pck34xSk+uPSUK3Me4oBLqqZYJuJToq7h6PlKW4Tv3flPEpNVcU1O5KmgJhE0tsBe8ej8w==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@checkdigit/prettier-config/-/prettier-config-8.1.1.tgz", + "integrity": "sha512-OFiCbEDri1Wr9O1unZrlwPCg+72KO48AVLtZXFPAyhiwJlxtY1zZGcS9XJmGt3KibXPFdvBFIF3BQc8BM4j+kA==", "dev": true, "license": "MIT", "engines": { - "node": ">=22.11" + "node": ">=24.18.0" }, "peerDependencies": { - "@prettier/plugin-xml": "3.4.1", - "prettier": "3.5.3", - "prettier-plugin-packagejson": "2.5.10", - "prettier-plugin-svelte": "3.3.3", - "prettier-plugin-tailwindcss": "0.6.11" + "@prettier/plugin-oxc": "0.2.2", + "@prettier/plugin-xml": "3.4.2", + "prettier": "3.9.6", + "prettier-plugin-packagejson": "3.0.2", + "prettier-plugin-svelte": "4.1.1", + "prettier-plugin-tailwindcss": "0.8.1" } }, "node_modules/@checkdigit/typescript-config": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@checkdigit/typescript-config/-/typescript-config-9.1.1.tgz", - "integrity": "sha512-LRW7rzHZWOJ1UEYDy6qVxIFbnC670YKP+xeBfeicni7BtxoBgpZeIvuKA2KI2Kbuk2oM2wsK2DYD6DHqf6KCRQ==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/@checkdigit/typescript-config/-/typescript-config-10.2.1.tgz", + "integrity": "sha512-HI0LBMcY9VApyXoWYqyQIy5VQFouzZuwkIjv3kKa3MhQklfgymWxsuQdKUsOC1R4clDPVZ0NJzz3k2bt8t/HNQ==", "dev": true, "license": "MIT", "bin": { "builder": "bin/builder.mjs" }, "engines": { - "node": ">=22.14" + "node": ">=24.18.0 <25 || >=26" }, "peerDependencies": { - "@swc-node/register": "1.10.10", - "@types/node": ">=22", - "esbuild": "0.25.1", - "typescript": ">=5.8.2 <5.9.0" + "@types/node": ">=24", + "esbuild": "0.28.2", + "typescript": ">=6.0.3 <7" } }, "node_modules/@emnapi/core": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.3.tgz", - "integrity": "sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.1.tgz", + "integrity": "sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==", "dev": true, "license": "MIT", "optional": true, "peer": true, "dependencies": { - "@emnapi/wasi-threads": "1.0.2", + "@emnapi/wasi-threads": "1.2.2", "tslib": "^2.4.0" } }, "node_modules/@emnapi/runtime": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.3.tgz", - "integrity": "sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.1.tgz", + "integrity": "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==", "dev": true, "license": "MIT", "optional": true, @@ -156,21 +195,20 @@ } }, "node_modules/@emnapi/wasi-threads": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.2.tgz", - "integrity": "sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz", + "integrity": "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==", "dev": true, "license": "MIT", "optional": true, - "peer": true, "dependencies": { "tslib": "^2.4.0" } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.1.tgz", - "integrity": "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.2.tgz", + "integrity": "sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==", "cpu": [ "ppc64" ], @@ -180,15 +218,14 @@ "os": [ "aix" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/android-arm": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.1.tgz", - "integrity": "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.2.tgz", + "integrity": "sha512-kXXoiPVVGQcnIYGOeaovwOURpniDBpSq4A03qkQ+BMQqtGG6HYap3xne9C1O1yo4TR3qxlCX5IqqmX6fFo2Lqg==", "cpu": [ "arm" ], @@ -198,15 +235,14 @@ "os": [ "android" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/android-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.1.tgz", - "integrity": "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.2.tgz", + "integrity": "sha512-5YfKeeI8qWfBZIX+u2xZC3Zlb3Os/gLS2sbEKM+I4ZOcsWmHS2WLysCcQZDAFRslDUU5Oiq44gf6PYN1vGwG5A==", "cpu": [ "arm64" ], @@ -216,15 +252,14 @@ "os": [ "android" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/android-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.1.tgz", - "integrity": "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.2.tgz", + "integrity": "sha512-O387ite7SzUyCcy3JQX4P4bLtEA7bLLkx+esve5JHnyYfNTxcVpXZo9jhdB0lTKN44gztELTdU7nS8Nr16Fs1Q==", "cpu": [ "x64" ], @@ -234,15 +269,14 @@ "os": [ "android" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.1.tgz", - "integrity": "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.2.tgz", + "integrity": "sha512-n4KqkOQrraxHJcgjM1RvwbigfQKIKJVpM7xp+KsxiyUSrRdIXnt73VhrPAx0fV44hgfmIVKjxMN9J1t5jySVkw==", "cpu": [ "arm64" ], @@ -252,15 +286,14 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.1.tgz", - "integrity": "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.2.tgz", + "integrity": "sha512-uq6suIWYP37qzGddBKPw5QEQPi6HiLGsO7UmkpfyaYNQ3D+rN6w6WfwH+nuqcGXWvawGwxOEroO4YGnFh95azw==", "cpu": [ "x64" ], @@ -270,15 +303,14 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.1.tgz", - "integrity": "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.2.tgz", + "integrity": "sha512-n+I0BTSRIoy+d6RPKnEVwql5UwBJolytvY4mAOIEJorKlqgPII8ix6slVVrfZ5Tnj7glIZvloylbB/EJPMWEXw==", "cpu": [ "arm64" ], @@ -288,15 +320,14 @@ "os": [ "freebsd" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.1.tgz", - "integrity": "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.2.tgz", + "integrity": "sha512-78XJTJkvPs0kz2w61301PJjXl4g7q3JqiYMZ/M/yVI73EHBrCRTgkhu9oqG7vPqq+a/yadEW8aD+agKlk5xrmg==", "cpu": [ "x64" ], @@ -306,15 +337,14 @@ "os": [ "freebsd" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-arm": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.1.tgz", - "integrity": "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.2.tgz", + "integrity": "sha512-XlDnu2q5yoqems+xay6wSAcg9DDD7K9RLKZEBOMZm3ckNpJBvOX20tSfby8KfrrhINDyv9V2YVZKY/SpoGJI8w==", "cpu": [ "arm" ], @@ -324,15 +354,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.1.tgz", - "integrity": "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.2.tgz", + "integrity": "sha512-pW4AC0P3it8c7do9MVM4p51FzHzdM/TZrerurgRcHJ2WTa1VQ1CIq18xncfpBJw4ojkiZZrKW2yIBWBP92j6Ug==", "cpu": [ "arm64" ], @@ -342,15 +371,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.1.tgz", - "integrity": "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.2.tgz", + "integrity": "sha512-CYbnj78HsIeA+DhgUKgFCfvNsTHFhMMrinUrMZpDXJXKN8T3XViTZ/+wtHeVxEWY8ewSzTFN+nRmSwO2tZaLUQ==", "cpu": [ "ia32" ], @@ -360,15 +388,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.1.tgz", - "integrity": "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.2.tgz", + "integrity": "sha512-buwkd8nsph4R+ajRvw0qM5Hja/TXQow3ptzWO2EbG/cqcIkHloRrdlBtQlshyYGTNFvfkfJ5tpPLVkY4DtsPfQ==", "cpu": [ "loong64" ], @@ -378,15 +405,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.1.tgz", - "integrity": "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.2.tgz", + "integrity": "sha512-ZVykbDyk7519VwiNb9Lcj9m8XM6v5V9uKPvrEMkkEedVewf+0itkhahp4HDpgERXhwLRpWFypsGbG/J8s0QjJA==", "cpu": [ "mips64el" ], @@ -396,15 +422,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.1.tgz", - "integrity": "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.2.tgz", + "integrity": "sha512-CAXl+Dtd9UUuJd8pKKdwh6MLm3MUMiqMPmhZ3tTSXPqfyQ3vDl6R5hZdZ/kYojK4ofXtdfSv1tFq8XzWx3heNQ==", "cpu": [ "ppc64" ], @@ -414,15 +439,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.1.tgz", - "integrity": "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.2.tgz", + "integrity": "sha512-GeXCej4IQtU1B+QlDV8W/RRvbzI3O/Stss+/bCXv4lZls5WGRtu2a+3JkA3i4qIUlMXpcHebWpF8AkJhATowuA==", "cpu": [ "riscv64" ], @@ -432,15 +456,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.1.tgz", - "integrity": "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.2.tgz", + "integrity": "sha512-3H1weTYZPxt/WOhByszQZybS9w5lKzUn1FDMsgEChbHWQwHYQQRfBxgCcZvPhjHfKyJjIievvMmEUawJrdY9Dg==", "cpu": [ "s390x" ], @@ -450,15 +473,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/linux-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.1.tgz", - "integrity": "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.2.tgz", + "integrity": "sha512-4xTZr1FUmSoQW4XIWmit3tzQrUTZM+N3P0XV8xROKYF50XfI7xeO90+1bZvNwxIufQ9hDQVRJH5YhgPVF8A/HQ==", "cpu": [ "x64" ], @@ -468,15 +490,14 @@ "os": [ "linux" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.1.tgz", - "integrity": "sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.2.tgz", + "integrity": "sha512-sSATRjPeDBg3pdgHoQfoYBob11Kk1FGa9lui5RIHZCoCkJa9QKlvl3/vKz2usCmYYjs7ymJR/2Nnsqe+Hjt5nw==", "cpu": [ "arm64" ], @@ -486,15 +507,14 @@ "os": [ "netbsd" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.1.tgz", - "integrity": "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.2.tgz", + "integrity": "sha512-lqnzCV+mM0gIADaKihiCg6ifgfU2L3h5E33rNQBN1Y4MaVGnzryzmvvf7UHxprpQdE8hpqLolJ9Rl+SkIRDpyw==", "cpu": [ "x64" ], @@ -504,15 +524,14 @@ "os": [ "netbsd" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.1.tgz", - "integrity": "sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.2.tgz", + "integrity": "sha512-AL2qJILH7lNjrDmCQDvdxMfAUIv8KMNZOvrwAQ8i8//ntL9FflhOyMJ8OZSMBb8/AWXe3/5v5S20y3zCoZWKoQ==", "cpu": [ "arm64" ], @@ -522,15 +541,14 @@ "os": [ "openbsd" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.1.tgz", - "integrity": "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.2.tgz", + "integrity": "sha512-QtiuPytchRyC4rwUKhexJdQKvDuZ6hWloi3igqPQNUJCS1/v9EiO3UTOXR6A3FoMo4fnAKbWJdqaIwhOzh8qEw==", "cpu": [ "x64" ], @@ -540,15 +558,31 @@ "os": [ "openbsd" ], - "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.2.tgz", + "integrity": "sha512-WkhYDmpTjLvGlScA1rwjRUmhl4k8oXR3cIbtqWmELgU/dFeHHlEllxDvdWcNJV9rbzCexB5vz8gtNewWLgCT7Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], "engines": { "node": ">=18" } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.1.tgz", - "integrity": "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.2.tgz", + "integrity": "sha512-GPMSkTOtMnv2U2F8gxe4Io6qmVs+YKyp832Etqqxr0hFngmXQ3rzwytelm3GIn7T4VviRUlf3sOgBOiTdvaf7g==", "cpu": [ "x64" ], @@ -558,15 +592,14 @@ "os": [ "sunos" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.1.tgz", - "integrity": "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.2.tgz", + "integrity": "sha512-PIhhEkE9uPBleRBrQEJpUn7MBnibZzbGzYWPmY3x+YoVg/95zbjB4CxPPOQ8l5tYYM4mMaCthF8/1DIfBQQyWQ==", "cpu": [ "arm64" ], @@ -576,15 +609,14 @@ "os": [ "win32" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.1.tgz", - "integrity": "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.2.tgz", + "integrity": "sha512-YmJbfTlvU7Sdn9BB+4PRES4oB6pxgS37MAONj+hBr/cpXS1aBPKXxNnDbu+QCWPj0o9dgyxeq79g6c5P8KeuYA==", "cpu": [ "ia32" ], @@ -594,15 +626,14 @@ "os": [ "win32" ], - "peer": true, "engines": { "node": ">=18" } }, "node_modules/@esbuild/win32-x64": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.1.tgz", - "integrity": "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.2.tgz", + "integrity": "sha512-5ebpxr3nWMzrL/rnUI755Jkuee0bHL/Gq0WTF9lvcpv73wAp5eu8MfBUgWK9bhWvZjj7yX8etf/8tI8Ney695g==", "cpu": [ "x64" ], @@ -612,18 +643,36 @@ "os": [ "win32" ], - "peer": true, "engines": { "node": ">=18" } }, + "node_modules/@eslint-community/eslint-plugin-eslint-comments": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-4.7.2.tgz", + "integrity": "sha512-LF03qURSwEWm2dz5wtdDCzNk+7Opl0X7q6I3undsaIuNsEiNvRV3BCtqu14Q/6Pzg1tBj44LcxpW2EpSLZStZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^4.0.0", + "ignore": "^7.0.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0" + } + }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" }, @@ -638,245 +687,193 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@eslint/compat": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.2.9.tgz", - "integrity": "sha512-gCdSY54n7k+driCadyMNv8JSPzYLeDVM/ikZRtvtROBpRdFSkS8W9A82MqsaY7lZuwL0wiapgD0NT1xT0hyJsA==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "peerDependencies": { - "eslint": "^9.10.0" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, "node_modules/@eslint/config-array": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", - "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "version": "0.23.5", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.23.5.tgz", + "integrity": "sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { - "@eslint/object-schema": "^2.1.6", + "@eslint/object-schema": "^3.0.5", "debug": "^4.3.1", - "minimatch": "^3.1.2" + "minimatch": "^10.2.4" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, "node_modules/@eslint/config-helpers": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", - "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.7.0.tgz", + "integrity": "sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw==", "dev": true, "license": "Apache-2.0", - "peer": true, + "dependencies": { + "@eslint/core": "^1.2.1" + }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, "node_modules/@eslint/core": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", - "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-1.2.1.tgz", + "integrity": "sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { "@types/json-schema": "^7.0.15" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, - "node_modules/@eslint/eslintrc": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "node_modules/@eslint/css-tree": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@eslint/css-tree/-/css-tree-4.0.5.tgz", + "integrity": "sha512-iPmijIAq4hlIJB86PYmY/fcZORHtjphSqICDbwuw32A/JmkhZQ/K/6TjHE03zqf3n5yABpVcbRAMG8Mi9ojy8g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "mdn-data": "2.29.0", + "source-map-js": "^1.2.1" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, "node_modules/@eslint/js": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", - "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-10.0.1.tgz", + "integrity": "sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "eslint": "^10.0.0" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } } }, "node_modules/@eslint/json": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@eslint/json/-/json-0.12.0.tgz", - "integrity": "sha512-n/7dz8HFStpEe4o5eYk0tdkBdGUS/ZGb0GQCeDWN1ZmRq67HMHK4vC33b0rQlTT6xdZoX935P4vstiWVk5Ying==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@eslint/json/-/json-2.0.1.tgz", + "integrity": "sha512-Thz2j92ceUF3Bq/0TuWb3MWn3Z+Cwc8k5ptF0fakl2D4Mp8mSx07Xr1aQM4R5NoihzarWUdxfOmQ8DesGy4jOg==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { - "@eslint/core": "^0.12.0", - "@eslint/plugin-kit": "^0.2.7", - "@humanwhocodes/momoa": "^3.3.4", + "@eslint/core": "^1.2.1", + "@eslint/plugin-kit": "^0.7.2", + "@humanwhocodes/momoa": "^3.3.10", "natural-compare": "^1.4.0" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, "node_modules/@eslint/markdown": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@eslint/markdown/-/markdown-6.4.0.tgz", - "integrity": "sha512-J07rR8uBSNFJ9iliNINrchilpkmCihPmTVotpThUeKEn5G8aBBZnkjNBy/zovhJA5LBk1vWU9UDlhqKSc/dViQ==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/@eslint/markdown/-/markdown-8.0.3.tgz", + "integrity": "sha512-rBTSSShrq7e4O+PWfeE4azH4/CWPNrC+VGxBXiW00o3vYVJnznsZiDayj3KC9JztIMVRZxZHn2nrDIUau/4j7A==", "dev": true, "license": "MIT", - "peer": true, + "workspaces": [ + "examples/*" + ], "dependencies": { - "@eslint/core": "^0.10.0", - "@eslint/plugin-kit": "^0.2.5", + "@eslint/core": "^1.2.1", + "@eslint/plugin-kit": "^0.7.2", + "github-slugger": "^2.0.0", "mdast-util-from-markdown": "^2.0.2", "mdast-util-frontmatter": "^2.0.1", - "mdast-util-gfm": "^3.0.0", + "mdast-util-gfm": "^3.1.0", + "mdast-util-math": "^3.0.0", "micromark-extension-frontmatter": "^2.0.0", - "micromark-extension-gfm": "^3.0.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/markdown/node_modules/@eslint/core": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", - "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.15" + "micromark-extension-gfm": "^3.0.0", + "micromark-extension-math": "^3.1.0", + "micromark-util-normalize-identifier": "^2.0.1" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, "node_modules/@eslint/object-schema": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", - "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-3.0.5.tgz", + "integrity": "sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", - "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.2.tgz", + "integrity": "sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { - "@eslint/core": "^0.13.0", + "@eslint/core": "^1.2.1", "levn": "^0.4.1" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" } }, - "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", - "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", + "node_modules/@humanfs/core": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { - "@types/json-schema": "^7.0.15" + "@humanfs/types": "^0.15.0" }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=18.18.0" } }, "node_modules/@humanfs/node": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" + "@humanfs/core": "^0.19.2", + "@humanfs/types": "^0.15.0", + "@humanwhocodes/retry": "^0.4.0" }, "engines": { "node": ">=18.18.0" } }, - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "node_modules/@humanfs/types": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": ">=18.18.0" } }, "node_modules/@humanwhocodes/module-importer": { @@ -885,7 +882,6 @@ "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=12.22" }, @@ -895,12 +891,11 @@ } }, "node_modules/@humanwhocodes/momoa": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/momoa/-/momoa-3.3.8.tgz", - "integrity": "sha512-/3PZzor2imi/RLLcnHztkwA79txiVvW145Ve2cp5dxRcH5qOUNJPToasqLFHniTfw4B4lT7jGDdBOPXbXYlIMQ==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@humanwhocodes/momoa/-/momoa-3.3.12.tgz", + "integrity": "sha512-xS9xl4ieqTqhSZfKV3YXj/htwJCUxbgvkTVaK1fkESgrOzvoVSOTRQeQ8tTLOZUS0Csi2xqtJQXgVTRH5OEbHQ==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=18" } @@ -911,7 +906,6 @@ "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=18.18" }, @@ -920,38 +914,26 @@ "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", - "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { @@ -960,161 +942,127 @@ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true, - "license": "MIT", - "peer": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz", + "integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@napi-rs/wasm-runtime": { - "version": "0.2.11", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.11.tgz", - "integrity": "sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==", + "node_modules/@jsep-plugin/assignment": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@jsep-plugin/assignment/-/assignment-1.3.0.tgz", + "integrity": "sha512-VVgV+CXrhbMI3aSusQyclHkenWSAm95WaiKrMxRFam3JSUiIaQjoMIw2sEs/OX4XifnqeQUN4DYbJjlA8EfktQ==", "dev": true, "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@emnapi/core": "^1.4.3", - "@emnapi/runtime": "^1.4.3", - "@tybys/wasm-util": "^0.9.0" + "engines": { + "node": ">= 10.16.0" + }, + "peerDependencies": { + "jsep": "^0.4.0||^1.0.0" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@jsep-plugin/regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@jsep-plugin/regex/-/regex-1.0.4.tgz", + "integrity": "sha512-q7qL4Mgjs1vByCaTnDFcBnV9HS7GVPJX5vyVoCgZHNSC9rjwIlmbXG5sUuorR5ndfHAIlJ8pVStxvjXHbNvtUg==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, "engines": { - "node": ">= 8" + "node": ">= 10.16.0" + }, + "peerDependencies": { + "jsep": "^0.4.0||^1.0.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.3.tgz", + "integrity": "sha512-UMduMbqO5s5zF2NkNacMT/yK5Y5QiKvWr2+50bzIIxFDwVJ2h49b+oyjaCGPhJxd2/gC2x39EHv/gHVuu36x2Q==", "dev": true, "license": "MIT", - "peer": true, + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.3" + }, "engines": { - "node": ">= 8" + "node": "^20.19.0 || ^22.13.0 || >=23.5.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1 || ^2.0.0-alpha.4", + "@emnapi/runtime": "^1.7.1 || ^2.0.0-alpha.4" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/@ota-meshi/ast-token-store": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ota-meshi/ast-token-store/-/ast-token-store-0.3.0.tgz", + "integrity": "sha512-XRO0zi2NIUKq2lUk3T1ecFSld1fMWRKE6naRFGkgkdeosx7IslyUKNv5Dcb5PJTja9tHJoFu0v/7yEpAkrkrTg==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, "engines": { - "node": ">= 8" + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" } }, - "node_modules/@oxc-resolver/binding-darwin-arm64": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-darwin-arm64/-/binding-darwin-arm64-5.3.0.tgz", - "integrity": "sha512-hXem5ZAguS7IlSiHg/LK0tEfLj4eUo+9U6DaFwwBEGd0L0VIF9LmuiHydRyOrdnnmi9iAAFMAn/wl2cUoiuruA==", + "node_modules/@oxc-parser/binding-android-arm-eabi": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.139.0.tgz", + "integrity": "sha512-22EsXTA3Vc7OvrF4bfT48PFln2UbxkVgrp/Tm32qLw76Dv7SmcInfClJe6yPYamnli6HiqasnESZ5ezN+X4ybg==", "cpu": [ - "arm64" + "arm" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "darwin" + "android" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-darwin-x64": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-darwin-x64/-/binding-darwin-x64-5.3.0.tgz", - "integrity": "sha512-wgSwfsZkRbuYCIBLxeg1bYrtKnirAy+IJF0lwfz4z08clgdNBDbfGECJe/cd0csIZPpRcvPFe8317yf31sWhtA==", + "node_modules/@oxc-parser/binding-android-arm64": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.139.0.tgz", + "integrity": "sha512-uASQkZV+CUQ6xXvoMzDQyfhd8OMusdv2FyCPfAi5ZDYptesapJlw7erhpGi1Lc+U8QjQV2JUrIh7d/3su2LzmQ==", "cpu": [ - "x64" + "arm64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "darwin" - ], - "peer": true - }, - "node_modules/@oxc-resolver/binding-freebsd-x64": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-freebsd-x64/-/binding-freebsd-x64-5.3.0.tgz", - "integrity": "sha512-kzeE2WHgcRMmWjB071RdwEV5Pwke4o0WWslCKoh8if1puvxIxfzu3o7g6P2+v77BP5qop4cri+uvLABSO0WZjg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "peer": true - }, - "node_modules/@oxc-resolver/binding-linux-arm-gnueabihf": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-5.3.0.tgz", - "integrity": "sha512-I8np34yZP/XfIkZNDbw3rweqVgfjmHYpNX3xnJZWg+f4mgO9/UNWBwetSaqXeDZqvIch/aHak+q4HVrQhQKCqg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" + "android" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-linux-arm64-gnu": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-5.3.0.tgz", - "integrity": "sha512-u2ndfeEUrW898eXM+qPxIN8TvTPjI90NDQBRgaxxkOfNw3xaotloeiZGz5+Yzlfxgvxr9DY9FdYkqhUhSnGhOw==", + "node_modules/@oxc-parser/binding-darwin-arm64": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.139.0.tgz", + "integrity": "sha512-vuQOv2WF5pZCkdSPEExul98o853M3MCR24DpWsGrUoPJu5KcnGE34kLXY2yFwBwZwT+eN1x40Tt4q6ZzlEdNUA==", "cpu": [ "arm64" ], @@ -1122,46 +1070,52 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "darwin" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-linux-arm64-musl": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm64-musl/-/binding-linux-arm64-musl-5.3.0.tgz", - "integrity": "sha512-TzbjmFkcnESGuVItQ2diKacX8vu5G0bH3BHmIlmY4OSRLyoAlrJFwGKAHmh6C9+Amfcjo2rx8vdm7swzmsGC6Q==", + "node_modules/@oxc-parser/binding-darwin-x64": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.139.0.tgz", + "integrity": "sha512-zxZB8ChS+7XactZhcyxQ292P/DNiiBaPPKYiVUlb3RC0V/hme5bokNubjcmEmbW9uTfmqLTpveAdkbe66H3pGg==", "cpu": [ - "arm64" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" + "darwin" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-linux-riscv64-gnu": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-5.3.0.tgz", - "integrity": "sha512-NH3pjAqh8nuN29iRuRfTY42Vn03ctoR9VE8llfoUKUfhHUjFHYOXK5VSkhjj1usG8AeuesvqrQnLptCRQVTi/Q==", + "node_modules/@oxc-parser/binding-freebsd-x64": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.139.0.tgz", + "integrity": "sha512-iw2MsoCPBQwdJqywRAGsF1jEAcGoZ+DeG2LVzt5pdUvRHqajsMF46BH0rHiWoWtMwcMSia+oQYga7fHo7u7Bcw==", "cpu": [ - "riscv64" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" + "freebsd" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-linux-s390x-gnu": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-5.3.0.tgz", - "integrity": "sha512-tuZtkK9sJYh2MC2uhol1M/8IMTB6ZQ5jmqP2+k5XNXnOb/im94Y5uV/u2lXwVyIuKHZZHtr+0d1HrOiNahoKpw==", + "node_modules/@oxc-parser/binding-linux-arm-gnueabihf": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.139.0.tgz", + "integrity": "sha512-SwjD/k3Y5bwGJWOH313VyaDrAuaYg1Pe+4AAXCgUKvSO5IHkj+mZ0oFcOWmB5nTuOM3uwdT+leL8h4OnFlI5hw==", "cpu": [ - "s390x" + "arm" ], "dev": true, "license": "MIT", @@ -1169,14 +1123,16 @@ "os": [ "linux" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-linux-x64-gnu": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-x64-gnu/-/binding-linux-x64-gnu-5.3.0.tgz", - "integrity": "sha512-VzhPYmZCtoES/ThcPdGSmMop7JlwgqtSvlgtKCW15ByV2JKyl8kHAHnPSBfpIooXb0ehFnRdxFtL9qtAEWy01g==", + "node_modules/@oxc-parser/binding-linux-arm-musleabihf": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.139.0.tgz", + "integrity": "sha512-qbeygDkcvailKFhphb2YGMMXsaZIynHlPtoOrcx4NZB/tRbUKraCCMbw8dPeFtEKasfS2qWh1VnReY+Lcys1zA==", "cpu": [ - "x64" + "arm" ], "dev": true, "license": "MIT", @@ -1184,14 +1140,16 @@ "os": [ "linux" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-linux-x64-musl": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-x64-musl/-/binding-linux-x64-musl-5.3.0.tgz", - "integrity": "sha512-Hi39cWzul24rGljN4Vf1lxjXzQdCrdxO5oCT7KJP4ndSlqIUODJnfnMAP1YhcnIRvNvk+5E6sZtnEmFUd/4d8Q==", + "node_modules/@oxc-parser/binding-linux-arm64-gnu": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.139.0.tgz", + "integrity": "sha512-SrlL02KeImKlvx/9rCeopOLH7qKI3rqKKEguK6KBwVwEGLhV/A47dW4DNigf6/LFhrwoovaiayEQryjYAI86dQ==", "cpu": [ - "x64" + "arm64" ], "dev": true, "license": "MIT", @@ -1199,30 +1157,14 @@ "os": [ "linux" ], - "peer": true - }, - "node_modules/@oxc-resolver/binding-wasm32-wasi": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-wasm32-wasi/-/binding-wasm32-wasi-5.3.0.tgz", - "integrity": "sha512-ddujvHhP3chmHnSXRlkPVUeYj4/B7eLZwL4yUid+df3WCbVh6DgoT9RmllZn21AhxgKtMdekDdyVJYKFd8tl4A==", - "cpu": [ - "wasm32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@napi-rs/wasm-runtime": "^0.2.9" - }, "engines": { - "node": ">=14.0.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@oxc-resolver/binding-win32-arm64-msvc": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-5.3.0.tgz", - "integrity": "sha512-j1YYPLvUkMVNKmIFQZZJ7q6Do4cI3htUnyxNLwDSBVhSohvPIK2VG+IdtOAlWZGa7v+phEZsHfNbXVwB0oPYFQ==", + "node_modules/@oxc-parser/binding-linux-arm64-musl": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.139.0.tgz", + "integrity": "sha512-u9e884ChAVRmIZ1jr/m46S96FoDQnruFjISLi4Y0i6Wu/JUUmIiw7+umLyXILJsPfUuqnN5BJLe23t07+Y6+IA==", "cpu": [ "arm64" ], @@ -1230,397 +1172,296 @@ "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], - "peer": true + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxc-resolver/binding-win32-x64-msvc": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-win32-x64-msvc/-/binding-win32-x64-msvc-5.3.0.tgz", - "integrity": "sha512-LT9eOPPUqfZscQRd5mc08RBeDWOQf+dnOrKnanMallTGPe6g7+rcAlFTA8SWoJbcD45PV8yArFtCmSQSpzHZmg==", + "node_modules/@oxc-parser/binding-linux-ppc64-gnu": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.139.0.tgz", + "integrity": "sha512-Z9tU2b3GJfAXOdirQmz4gZQkQkVjy53i77gf91l0733MQKa/qtk73KQQE2GzDtMqim+HyjpzvemmqzBtH2IJUA==", "cpu": [ - "x64" + "ppc64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], - "peer": true - }, - "node_modules/@pkgr/core": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", - "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, - "node_modules/@prettier/plugin-xml": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@prettier/plugin-xml/-/plugin-xml-3.4.1.tgz", - "integrity": "sha512-Uf/6/+9ez6z/IvZErgobZ2G9n1ybxF5BhCd7eMcKqfoWuOzzNUxBipNo3QAP8kRC1VD18TIo84no7LhqtyDcTg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@xml-tools/parser": "^1.0.11" - }, - "peerDependencies": { - "prettier": "^3.0.0" - } - }, - "node_modules/@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@sveltejs/acorn-typescript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@sveltejs/acorn-typescript/-/acorn-typescript-1.0.5.tgz", - "integrity": "sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ==", - "dev": true, - "license": "MIT", - "peer": true, - "peerDependencies": { - "acorn": "^8.9.0" - } - }, - "node_modules/@swc-node/core": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/@swc-node/core/-/core-1.13.3.tgz", - "integrity": "sha512-OGsvXIid2Go21kiNqeTIn79jcaX4l0G93X2rAnas4LFoDyA9wAwVK7xZdm+QsKoMn5Mus2yFLCc4OtX2dD/PWA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" - }, - "peerDependencies": { - "@swc/core": ">= 1.4.13", - "@swc/types": ">= 0.1" - } - }, - "node_modules/@swc-node/register": { - "version": "1.10.10", - "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.10.10.tgz", - "integrity": "sha512-jYWaI2WNEKz8KZL3sExd2KVL1JMma1/J7z+9iTpv0+fRN7LGMF8VTGGuHI2bug/ztpdZU1G44FG/Kk6ElXL9CQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@swc-node/core": "^1.13.3", - "@swc-node/sourcemap-support": "^0.5.1", - "colorette": "^2.0.20", - "debug": "^4.3.5", - "oxc-resolver": "^5.0.0", - "pirates": "^4.0.6", - "tslib": "^2.6.3" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" - }, - "peerDependencies": { - "@swc/core": ">= 1.4.13", - "typescript": ">= 4.3" - } - }, - "node_modules/@swc-node/sourcemap-support": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/@swc-node/sourcemap-support/-/sourcemap-support-0.5.1.tgz", - "integrity": "sha512-JxIvIo/Hrpv0JCHSyRpetAdQ6lB27oFYhv0PKCNf1g2gUXOjpeR1exrXccRxLMuAV5WAmGFBwRnNOJqN38+qtg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "source-map-support": "^0.5.21", - "tslib": "^2.6.3" - } - }, - "node_modules/@swc/core": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.11.31.tgz", - "integrity": "sha512-mAby9aUnKRjMEA7v8cVZS9Ah4duoRBnX7X6r5qrhTxErx+68MoY1TPrVwj/66/SWN3Bl+jijqAqoB8Qx0QE34A==", - "dev": true, - "hasInstallScript": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.21" - }, "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/swc" - }, - "optionalDependencies": { - "@swc/core-darwin-arm64": "1.11.31", - "@swc/core-darwin-x64": "1.11.31", - "@swc/core-linux-arm-gnueabihf": "1.11.31", - "@swc/core-linux-arm64-gnu": "1.11.31", - "@swc/core-linux-arm64-musl": "1.11.31", - "@swc/core-linux-x64-gnu": "1.11.31", - "@swc/core-linux-x64-musl": "1.11.31", - "@swc/core-win32-arm64-msvc": "1.11.31", - "@swc/core-win32-ia32-msvc": "1.11.31", - "@swc/core-win32-x64-msvc": "1.11.31" - }, - "peerDependencies": { - "@swc/helpers": ">=0.5.17" - }, - "peerDependenciesMeta": { - "@swc/helpers": { - "optional": true - } + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-darwin-arm64": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.31.tgz", - "integrity": "sha512-NTEaYOts0OGSbJZc0O74xsji+64JrF1stmBii6D5EevWEtrY4wlZhm8SiP/qPrOB+HqtAihxWIukWkP2aSdGSQ==", + "node_modules/@oxc-parser/binding-linux-riscv64-gnu": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.139.0.tgz", + "integrity": "sha512-RyUbr7hzPK84YDWKs77PRYk9VBwWbsbuYsQzQWiSmLnARXTg2zntLPGfCH/1wpfUYdmGkp/6SsqTXSsYdw9Jgw==", "cpu": [ - "arm64" + "riscv64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ - "darwin" + "linux" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-darwin-x64": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.11.31.tgz", - "integrity": "sha512-THSGaSwT96JwXDwuXQ6yFBbn+xDMdyw7OmBpnweAWsh5DhZmQkALEm1DgdQO3+rrE99MkmzwAfclc0UmYro/OA==", + "node_modules/@oxc-parser/binding-linux-riscv64-musl": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.139.0.tgz", + "integrity": "sha512-dcQhjtcDvtR8BgkUpt03Yz5SzxdzYvTigenIJOEsiSX6G2t6yybEMxGWjp0dOuYGror0BaqcZfTyXR58amCEig==", "cpu": [ - "x64" + "riscv64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ - "darwin" + "linux" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.31.tgz", - "integrity": "sha512-laKtQFnW7KHgE57Hx32os2SNAogcuIDxYE+3DYIOmDMqD7/1DCfJe6Rln2N9WcOw6HuDbDpyQavIwZNfSAa8vQ==", + "node_modules/@oxc-parser/binding-linux-s390x-gnu": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.139.0.tgz", + "integrity": "sha512-iuGrxysV4rGUymdKpn7bgZQ6Vix8Bi/6D/rp71HYIzphq6NKrsBhsGOYsSZte+uBFL43tXh7Xr7TM72sGliJNA==", "cpu": [ - "arm" + "s390x" ], "dev": true, - "license": "Apache-2.0", + "license": "MIT", "optional": true, "os": [ "linux" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.31.tgz", - "integrity": "sha512-T+vGw9aPE1YVyRxRr1n7NAdkbgzBzrXCCJ95xAZc/0+WUwmL77Z+js0J5v1KKTRxw4FvrslNCOXzMWrSLdwPSA==", + "node_modules/@oxc-parser/binding-linux-x64-gnu": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.139.0.tgz", + "integrity": "sha512-NxJdZZyaa2JLLvNfH/iJQXfCNfKcPMylwY4ObMpBVmW4Nq+RyUpVVQXrMMelcQ6rwx3nuhF1Iga8n+eoAKGCIA==", "cpu": [ - "arm64" + "x64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ "linux" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.31.tgz", - "integrity": "sha512-Mztp5NZkyd5MrOAG+kl+QSn0lL4Uawd4CK4J7wm97Hs44N9DHGIG5nOz7Qve1KZo407Y25lTxi/PqzPKHo61zQ==", + "node_modules/@oxc-parser/binding-linux-x64-musl": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.139.0.tgz", + "integrity": "sha512-ePxBvvtzISmSsJ0RIj8FNikSCn58i1jtccj7XR4U9Li4iSzhkFyYlnJ51cQTUwkairz8WMTD4SpKoot8RyTnQA==", "cpu": [ - "arm64" + "x64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ "linux" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.31.tgz", - "integrity": "sha512-DDVE0LZcXOWwOqFU1Xi7gdtiUg3FHA0vbGb3trjWCuI1ZtDZHEQYL4M3/2FjqKZtIwASrDvO96w91okZbXhvMg==", + "node_modules/@oxc-parser/binding-openharmony-arm64": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.139.0.tgz", + "integrity": "sha512-b/c2+mPXMOxG5x16n8yf9cjor/ntQQScmYnSmLEWIWJ4rfXd5dokMxx0kliSLA+YAGq6DD3K9BWi+aFXHiiV1w==", "cpu": [ - "x64" + "arm64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ - "linux" + "openharmony" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.31.tgz", - "integrity": "sha512-mJA1MzPPRIfaBUHZi0xJQ4vwL09MNWDeFtxXb0r4Yzpf0v5Lue9ymumcBPmw/h6TKWms+Non4+TDquAsweuKSw==", + "node_modules/@oxc-parser/binding-wasm32-wasi": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.139.0.tgz", + "integrity": "sha512-rNU0pO+/CVPC2qZ+xtX5R2cOje9Q75q3UkfgwUCPlplqxMv6Iffd5tMPGVMCLGnPINxPlmi0WPsW94HltbYvfQ==", "cpu": [ - "x64" + "wasm32" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, - "os": [ - "linux" - ], - "peer": true, + "dependencies": { + "@emnapi/core": "1.11.1", + "@emnapi/runtime": "1.11.1", + "@napi-rs/wasm-runtime": "^1.1.6" + }, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.31.tgz", - "integrity": "sha512-RdtakUkNVAb/FFIMw3LnfNdlH1/ep6KgiPDRlmyUfd0WdIQ3OACmeBegEFNFTzi7gEuzy2Yxg4LWf4IUVk8/bg==", + "node_modules/@oxc-parser/binding-win32-arm64-msvc": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.139.0.tgz", + "integrity": "sha512-JPEmfncZfqAFiGsAN6UZSMIBqnG8wn8buywRacFOWjP+9dZwcs03SsBp4tmyjM/4l/VoH/IuThrW1Jof3OyQUw==", "cpu": [ "arm64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ "win32" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.31.tgz", - "integrity": "sha512-hErXdCGsg7swWdG1fossuL8542I59xV+all751mYlBoZ8kOghLSKObGQTkBbuNvc0sUKWfWg1X0iBuIhAYar+w==", + "node_modules/@oxc-parser/binding-win32-ia32-msvc": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.139.0.tgz", + "integrity": "sha512-c06dWBwEnFHof5JN7T9/ts23uATXS9czPEBO60d4xnjH2Am29Bo7OGKdVHRmcWQnw0OBxlTg9fIEXAvtcwOBfw==", "cpu": [ "ia32" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ "win32" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.11.31", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.31.tgz", - "integrity": "sha512-5t7SGjUBMMhF9b5j17ml/f/498kiBJNf4vZFNM421UGUEETdtjPN9jZIuQrowBkoFGJTCVL/ECM4YRtTH30u/A==", + "node_modules/@oxc-parser/binding-win32-x64-msvc": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.139.0.tgz", + "integrity": "sha512-bI3/44urQjW/D495JPXe+c9d+4Q+ONi3DvDNnzwRZYTWHZ3hAlFdmirYK4mzhTfCZiAly02EbMYir7QGU+9O2Q==", "cpu": [ "x64" ], "dev": true, - "license": "Apache-2.0 AND MIT", + "license": "MIT", "optional": true, "os": [ "win32" ], - "peer": true, "engines": { - "node": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@swc/counter": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", - "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "node_modules/@oxc-project/types": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.139.0.tgz", + "integrity": "sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw==", "dev": true, - "license": "Apache-2.0", - "peer": true + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } }, - "node_modules/@swc/types": { - "version": "0.1.22", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.22.tgz", - "integrity": "sha512-D13mY/ZA4PPEFSy6acki9eBT/3WgjMoRqNcdpIvjaYLQ44Xk5BdaL7UkDxAh6Z9UOe7tCCp67BVmZCojYp9owg==", + "node_modules/@prettier/plugin-oxc": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@prettier/plugin-oxc/-/plugin-oxc-0.2.2.tgz", + "integrity": "sha512-yscDcAuDtvOfE0c8i8UVP+hjK43VIPpwfMv+73mdkpy12rZWnk5Kl6N6pUneQmaZ3PKTg611zemBHFpMjp9ZnQ==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "peer": true, "dependencies": { - "@swc/counter": "^0.1.3" + "oxc-parser": "0.139.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/@tybys/wasm-util": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", - "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", + "node_modules/@prettier/plugin-xml": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@prettier/plugin-xml/-/plugin-xml-3.4.2.tgz", + "integrity": "sha512-/UyNlHfkuLXG6Ed85KB0WBF283xn2yavR+UtRibBRUcvEJId2DSLdGXwJ/cDa1X++SWDPzq3+GSFniHjkNy7yg==", "dev": true, "license": "MIT", - "optional": true, "peer": true, "dependencies": { - "tslib": "^2.4.0" + "@xml-tools/parser": "^1.0.11" + }, + "peerDependencies": { + "prettier": "^3.0.0" } }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "node_modules/@sveltejs/acorn-typescript": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@sveltejs/acorn-typescript/-/acorn-typescript-1.0.13.tgz", + "integrity": "sha512-wgKggnhZVL9Bfx1OaKKTrYY9BFRk6C8UAkQNUcIv1+llzYrIqy+RZm5HPKzn0NpEBvTVhTqB4kQyllZywsRBRQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^8.9.0" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.3.tgz", + "integrity": "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/ms": "*" } }, + "node_modules/@types/esrecurse": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@types/esrecurse/-/esrecurse-4.3.1.tgz", + "integrity": "sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/hast": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.5.tgz", + "integrity": "sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g==", "dev": true, "license": "MIT", - "peer": true + "dependencies": { + "@types/unist": "*" + } }, "node_modules/@types/json-schema": { "version": "7.0.15", @@ -1630,13 +1471,12 @@ "license": "MIT", "peer": true }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "node_modules/@types/katex": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.8.tgz", + "integrity": "sha512-trgaNyfU+Xh2Tc+ABIb44a5AYUpicB3uwirOioeOkNPPbmgRNtcWyDeeFRzjPZENO9Vq8gvVqfhaaXWLlevVwg==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@types/mdast": { "version": "4.0.4", @@ -1644,7 +1484,6 @@ "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/unist": "*" } @@ -1654,45 +1493,48 @@ "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@types/node": { - "version": "22.15.30", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.30.tgz", - "integrity": "sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==", + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-26.4.0.tgz", + "integrity": "sha512-faiGnoIrLH/V8cibOMEAZ8pMw6oXqSukl29ra4mN8GdaB2ZewzeaLj+INpV5N+Z1eKWzY+IzaIZH2EIR6YZRNQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~8.3.0" } }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.33.0.tgz", - "integrity": "sha512-CACyQuqSHt7ma3Ns601xykeBK/rDeZa3w6IS6UtMQbixO5DWy+8TilKkviGDH6jtWCo8FGRKEK5cLLkPvEammQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.67.0.tgz", + "integrity": "sha512-Un7Heoyj65NREbKAyIrFxeM143NZpExWmy1Nep4DLeQOeLlTeumPjoNKnBrU5D5moWXbPJgRa5Uwcdu0faVNGQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.33.0", - "@typescript-eslint/type-utils": "8.33.0", - "@typescript-eslint/utils": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/type-utils": "8.67.0", + "@typescript-eslint/utils": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", + "ignore": "^7.0.5", "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1702,22 +1544,21 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.33.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "@typescript-eslint/parser": "^8.67.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/project-service": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.33.0.tgz", - "integrity": "sha512-d1hz0u9l6N+u/gcrk6s6gYdl7/+pp8yHheRTqP6X5hVDKALEaTn8WfGiit7G511yueBEL3OpOEpD+3/MBdoN+A==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.67.0.tgz", + "integrity": "sha512-cvE8c7ulYeXN9fYuszhCeCsbzyVEXuhrRCybnBre7TUmqb5nRmBfQAwCj0O3WJFDeyAZt4VYv51vMCC9LHSdYw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.33.0", - "@typescript-eslint/types": "^8.33.0", - "debug": "^4.3.4" + "@typescript-eslint/tsconfig-utils": "^8.67.0", + "@typescript-eslint/types": "^8.67.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1725,18 +1566,20 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.33.0.tgz", - "integrity": "sha512-LMi/oqrzpqxyO72ltP+dBSP6V0xiUb4saY7WLtxSfiNEBI8m321LLVFU9/QDJxjDQG9/tjSqKz/E3380TEqSTw==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.67.0.tgz", + "integrity": "sha512-EgvsleTwS4E+WzzSvem8fAUubLwatMNF1B5hHSLQxcvs7q2dtRhGyujHwLJSYlG41niJ7GP24Aha2+0mb1b2kg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0" + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1747,12 +1590,11 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.33.0.tgz", - "integrity": "sha512-sTkETlbqhEoiFmGr1gsdq5HyVbSOF0145SYDJ/EQmXHtKViCaGvnyLqWFFHtEXoS0J1yU8Wyou2UGmgW88fEug==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.67.0.tgz", + "integrity": "sha512-vV+LUSv5njUWsknE71fqKTlXUva+R76SaeORd6Zojcunk/6DvKFXONU3BrAs2H49mbygUXt6gbYunzwqNwlhdg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -1761,21 +1603,21 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.33.0.tgz", - "integrity": "sha512-lScnHNCBqL1QayuSrWeqAL5GmqNdVUQAAMTaCwdYEdWfIrSrOGzyLGRCHXcCixa5NK6i5l0AfSO2oBSjCjf4XQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.67.0.tgz", + "integrity": "sha512-aVWDXbRmdXO9siTfX4ditQI1T9+zVcNazT48EJCD0v40/9RIFoUgZ05CmGEq9H2gixRpjUn/iplwvlcvutJW/Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.33.0", - "@typescript-eslint/utils": "8.33.0", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0", + "@typescript-eslint/utils": "8.67.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1785,17 +1627,16 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.0.tgz", - "integrity": "sha512-DKuXOKpM5IDT1FA2g9x9x1Ug81YuKrzf4mYX8FAVSNu5Wo/LELHWQyM1pQaDkI42bX15PWl0vNPt1uGiIFUOpg==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.67.0.tgz", + "integrity": "sha512-sBtgslww8nsMYUjhdPBiSyUqSzT8uR6g93A2QXnQC8+cGdjz0CyaOdqHDRJb1AtORbZCNUJBBeFA/tNR2uQmww==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -1805,23 +1646,21 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.33.0.tgz", - "integrity": "sha512-vegY4FQoB6jL97Tu/lWRsAiUUp8qJTqzAmENH2k59SJhw0Th1oszb9Idq/FyyONLuNqT1OADJPXfyUNOR8SzAQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.67.0.tgz", + "integrity": "sha512-EKQBCE9yNlRJYm7jdTW5AhDacDUmSwQb0FAJAmK2EKYrNXIsa2vxcSZx6PvJ/dEdI6lS+Y9W+EXckLj0iPFGcw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/project-service": "8.33.0", - "@typescript-eslint/tsconfig-utils": "8.33.0", - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/project-service": "8.67.0", + "@typescript-eslint/tsconfig-utils": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1831,21 +1670,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.33.0.tgz", - "integrity": "sha512-lPFuQaLA9aSNa7D5u2EpRiqdAUhzShwGg/nhpBlc4GR6kcTABttCuyjFs8BcEZ8VWrjCBof/bePhP3Q3fS+Yrw==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.67.0.tgz", + "integrity": "sha512-U9D1FdwEWBwok3hxxSdhclMb0twvt9QnjIQ0VfQ1AiX2epnpSgv2ubVDsayOFyY8K6FX+AQ7E0FKWVG3iKsj1A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.33.0", - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/typescript-estree": "8.33.0" + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1855,20 +1693,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.33.0.tgz", - "integrity": "sha512-7RW7CMYoskiz5OOGAWjJFxgb7c5UNjTG292gYhWeOAcFmYCtVCSqjqSBj5zMhxbXo2JOW95YYrUWJfU0zrpaGQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.67.0.tgz", + "integrity": "sha512-fkv8dHRDqfGtTHuJeebdrQ7cX6Ad4WAS00rgHh9UGvMycF1mjBfsxry1XsLIFhWZ6Judlh6UdzK+TYlbpCXgnA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.33.0", - "eslint-visitor-keys": "^4.2.0" + "@typescript-eslint/types": "8.67.0", + "eslint-visitor-keys": "^5.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1878,72 +1715,31 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@typescript-eslint/parser": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.33.0.tgz", - "integrity": "sha512-JaehZvf6m0yqYp34+RVnihBAChkqeH+tqqhS0GuX1qgPpwLvmTPheKEs6OeCK6hVJgXZHJ2vbjnC9j119auStQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.67.0.tgz", + "integrity": "sha512-fUBfTuuEulWqX6V8+O3PtScV01tzYYRUDTAirHFKoRAt7nOzoGiPt0M/bB47wWNy0coOOcgEwAMUtBpykMxl6w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.33.0", - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/typescript-estree": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0", - "debug": "^4.3.4" + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1953,21 +1749,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.33.0.tgz", - "integrity": "sha512-d1hz0u9l6N+u/gcrk6s6gYdl7/+pp8yHheRTqP6X5hVDKALEaTn8WfGiit7G511yueBEL3OpOEpD+3/MBdoN+A==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.67.0.tgz", + "integrity": "sha512-cvE8c7ulYeXN9fYuszhCeCsbzyVEXuhrRCybnBre7TUmqb5nRmBfQAwCj0O3WJFDeyAZt4VYv51vMCC9LHSdYw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.33.0", - "@typescript-eslint/types": "^8.33.0", - "debug": "^4.3.4" + "@typescript-eslint/tsconfig-utils": "^8.67.0", + "@typescript-eslint/types": "^8.67.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1975,18 +1770,20 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.33.0.tgz", - "integrity": "sha512-LMi/oqrzpqxyO72ltP+dBSP6V0xiUb4saY7WLtxSfiNEBI8m321LLVFU9/QDJxjDQG9/tjSqKz/E3380TEqSTw==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.67.0.tgz", + "integrity": "sha512-EgvsleTwS4E+WzzSvem8fAUubLwatMNF1B5hHSLQxcvs7q2dtRhGyujHwLJSYlG41niJ7GP24Aha2+0mb1b2kg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0" + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1997,12 +1794,11 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.33.0.tgz", - "integrity": "sha512-sTkETlbqhEoiFmGr1gsdq5HyVbSOF0145SYDJ/EQmXHtKViCaGvnyLqWFFHtEXoS0J1yU8Wyou2UGmgW88fEug==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.67.0.tgz", + "integrity": "sha512-vV+LUSv5njUWsknE71fqKTlXUva+R76SaeORd6Zojcunk/6DvKFXONU3BrAs2H49mbygUXt6gbYunzwqNwlhdg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2011,16 +1807,15 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.0.tgz", - "integrity": "sha512-DKuXOKpM5IDT1FA2g9x9x1Ug81YuKrzf4mYX8FAVSNu5Wo/LELHWQyM1pQaDkI42bX15PWl0vNPt1uGiIFUOpg==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.67.0.tgz", + "integrity": "sha512-sBtgslww8nsMYUjhdPBiSyUqSzT8uR6g93A2QXnQC8+cGdjz0CyaOdqHDRJb1AtORbZCNUJBBeFA/tNR2uQmww==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2030,23 +1825,21 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.33.0.tgz", - "integrity": "sha512-vegY4FQoB6jL97Tu/lWRsAiUUp8qJTqzAmENH2k59SJhw0Th1oszb9Idq/FyyONLuNqT1OADJPXfyUNOR8SzAQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.67.0.tgz", + "integrity": "sha512-EKQBCE9yNlRJYm7jdTW5AhDacDUmSwQb0FAJAmK2EKYrNXIsa2vxcSZx6PvJ/dEdI6lS+Y9W+EXckLj0iPFGcw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/project-service": "8.33.0", - "@typescript-eslint/tsconfig-utils": "8.33.0", - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/project-service": "8.67.0", + "@typescript-eslint/tsconfig-utils": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2056,19 +1849,18 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.33.0.tgz", - "integrity": "sha512-7RW7CMYoskiz5OOGAWjJFxgb7c5UNjTG292gYhWeOAcFmYCtVCSqjqSBj5zMhxbXo2JOW95YYrUWJfU0zrpaGQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.67.0.tgz", + "integrity": "sha512-fkv8dHRDqfGtTHuJeebdrQ7cX6Ad4WAS00rgHh9UGvMycF1mjBfsxry1XsLIFhWZ6Judlh6UdzK+TYlbpCXgnA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.33.0", - "eslint-visitor-keys": "^4.2.0" + "@typescript-eslint/types": "8.67.0", + "eslint-visitor-keys": "^5.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2078,59 +1870,29 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@typescript-eslint/project-service": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.1.tgz", - "integrity": "sha512-nuHlOmFZfuRwLJKDGQOVc0xnQrAmuq1Mj/ISou5044y1ajGNp2BNliIqp7F2LPQ5sForz8lempMFCovfeS1XoA==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.68.0.tgz", + "integrity": "sha512-5GQtWZCXFcFYux955pvoS02WLc49pXNlvIxocKjS0clvwo3in1RdlzVKyiqQH9vE5AKWFLTaUgeQkOrTS+0Qxw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.34.1", - "@typescript-eslint/types": "^8.34.1", - "debug": "^4.3.4" + "@typescript-eslint/tsconfig-utils": "^8.68.0", + "@typescript-eslint/types": "^8.68.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2140,19 +1902,18 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.1.tgz", - "integrity": "sha512-beu6o6QY4hJAgL1E8RaXNC071G4Kso2MGmJskCFQhRhg8VOH/FDbC8soP8NHN7e/Hdphwp8G8cE6OBzC8o41ZA==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.68.0.tgz", + "integrity": "sha512-T5eXpcaJNg8bhjHJ8Rjp68Vq/QBteYtTKY8TZqVNPaUbuz0f6jI9t6aDkylwvalpAB9XTTFeFOjrjXAZ3YvmVA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1" + "@typescript-eslint/types": "8.68.0", + "@typescript-eslint/visitor-keys": "8.68.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2163,12 +1924,11 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.1.tgz", - "integrity": "sha512-K4Sjdo4/xF9NEeA2khOb7Y5nY6NSXBnod87uniVYW9kHP+hNlDV8trUSFeynA2uxWam4gIWgWoygPrv9VMWrYg==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.68.0.tgz", + "integrity": "sha512-F7zrGQfiJHojPwi8vhxZQC1tWtJzvL74cK/nqri2lk8YUXvYaYwl263xOJ69jDWPUk1hmcdoayFwk9lX09npVw==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2177,21 +1937,21 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.1.tgz", - "integrity": "sha512-Tv7tCCr6e5m8hP4+xFugcrwTOucB8lshffJ6zf1mF1TbU67R+ntCc6DzLNKM+s/uzDyv8gLq7tufaAhIBYeV8g==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.68.0.tgz", + "integrity": "sha512-X77zqoY1EjeWGs/0JNxeaMfp5C5lIz4Tw8y66F1Ne8Faq6g424sBNYM6xBAqElfGZPLpWS+CZAp0DXyKDzWiHg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.34.1", - "@typescript-eslint/utils": "8.34.1", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/types": "8.68.0", + "@typescript-eslint/typescript-estree": "8.68.0", + "@typescript-eslint/utils": "8.68.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2201,17 +1961,16 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/types": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", - "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.68.0.tgz", + "integrity": "sha512-9RnpsGJjrAllCMefGVVsImJM24YurhC0Q1h4UbvivtvOqXmR/vEJge2OoE++z9m6hyg8T1Q8t5SNT6tHSbrxcg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2221,23 +1980,21 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.1.tgz", - "integrity": "sha512-rjCNqqYPuMUF5ODD+hWBNmOitjBWghkGKJg6hiCHzUvXRy6rK22Jd3rwbP2Xi+R7oYVvIKhokHVhH41BxPV5mA==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.68.0.tgz", + "integrity": "sha512-OKKsD0tYmoNiU5PW2zehO1yO56jYOm1ShYlxon/Z0SJNidAkdVg86eg9ruRuoXf8xfnuWZGbwDsStkoXbZtIIA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/project-service": "8.34.1", - "@typescript-eslint/tsconfig-utils": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/project-service": "8.68.0", + "@typescript-eslint/tsconfig-utils": "8.68.0", + "@typescript-eslint/types": "8.68.0", + "@typescript-eslint/visitor-keys": "8.68.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2247,49 +2004,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.1.tgz", - "integrity": "sha512-mqOwUdZ3KjtGk7xJJnLbHxTuWVn3GO2WZZuM+Slhkun4+qthLdXx32C8xIXbO1kfCECb3jIs3eoxK3eryk7aoQ==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.68.0.tgz", + "integrity": "sha512-PB5gJMMOg0Q5P1tsgWtEAqQacJXq0qEqRHDX/YJ4FaTMLfZPpHB3gjl2EJuiZyPABxmj4ZQYiY9m1bdAJ5y7tQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/typescript-estree": "8.34.1" + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.68.0", + "@typescript-eslint/types": "8.68.0", + "@typescript-eslint/typescript-estree": "8.68.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2299,20 +2027,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.1.tgz", - "integrity": "sha512-xoh5rJ+tgsRKoXnkBPFRLZ7rjKM0AfVbC68UZ/ECXoDbfggb9RbEySN359acY1vS3qZ0jVTVWzbtfapwm5ztxw==", + "version": "8.68.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.68.0.tgz", + "integrity": "sha512-YR65gGdGvTUAWLldC3xLOvOzamdGzB4A5/N8rehEaHs3Zvoe39BhgY+u0SPch1OvrVTfLcc55wsSgK2NcnTS/A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.34.1", - "eslint-visitor-keys": "^4.2.1" + "@typescript-eslint/types": "8.68.0", + "eslint-visitor-keys": "^5.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2323,23 +2050,50 @@ } }, "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.12.2.tgz", + "integrity": "sha512-g5T90pqg1bo/7mytQx6F4iBNC0Wsh9cu+z9veDbFjc7HjpesJFWD7QMS0NGStXM075+7dJPPVvBbpZlnrdpi/w==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.12.2.tgz", + "integrity": "sha512-YGCRZv/9GLhwmz6mYDeTsm/92BAyR28l6c2ReweVW5pWgfsitWLY8upvfRlGdoyD8HjeTHSYJWyZGD4KJA/nFQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, "node_modules/@unrs/resolver-binding-darwin-arm64": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.7.12.tgz", - "integrity": "sha512-C//UObaqVcGKpRMMThzBCDxbqM9YQg2dtWy3OwcERLu+qzLa781AqvGdgqwqakRO+cWCK6dl75ebAcsSozmARg==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.12.2.tgz", + "integrity": "sha512-u9DiNT1auQMO20A9SyTuG3wUgQWB9Z7KjAg0uFuCDR1FsAY8A0CG2S6JpHS1xwm/w1G08bjXZDcyOCjv1WAm2w==", "cpu": [ "arm64" ], @@ -2348,13 +2102,12 @@ "optional": true, "os": [ "darwin" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-darwin-x64": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.7.12.tgz", - "integrity": "sha512-eRXO0uPaZtWIogCeVlpSCfzKr3ZJynQl3IRzhFucrA+efdjAylS+ZemWFfnhGbQgWv4lItKCfCpxGuZsosudWw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.12.2.tgz", + "integrity": "sha512-f7rPLi/T1HVKZu/u6t87lroib16n8vrSzcyxI7lg4BGO9UF26KhQL44sd9eOUgrTYhvRXtWOIZT5PejdPyJfUA==", "cpu": [ "x64" ], @@ -2363,13 +2116,12 @@ "optional": true, "os": [ "darwin" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-freebsd-x64": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.7.12.tgz", - "integrity": "sha512-VUdT2CwMoyWy9Jolavu2fWTcusiA9FePjSyMLIrZvAeC2PMnM9msF3HJkO/j0S2fZkzgZy+UBBZjJwG0Mfds0g==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.12.2.tgz", + "integrity": "sha512-BpcOjWCJub6nRZUS2zA20pmLvjtqAtGejETaIyRLiZiQf++cbrjltLA5NN/xaXfqeOBOSlMFbemIl5/S5tljmg==", "cpu": [ "x64" ], @@ -2378,13 +2130,12 @@ "optional": true, "os": [ "freebsd" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.7.12.tgz", - "integrity": "sha512-hbWi7U2UlglpT1LQZbm7He3YpSRYGoHwFMMKC+oCD9UzPImFJZOFrQUL4FQVsOaxxz0ggWK1Q/ZcK23LpG2STg==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.12.2.tgz", + "integrity": "sha512-vZTDvdSISZjJx66OzJqtsOhzifbqRjbmI1Mnu49fQDwog5GtDI4QidRiEAYbZCRj9C8YZEW+3ZjqsyS9GR4k2A==", "cpu": [ "arm" ], @@ -2393,13 +2144,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.7.12.tgz", - "integrity": "sha512-KBblhYFUhUTVSkTKxxaw4cFS3qgQMs2oM1DUSNrsFX7uRBG6SxXkLXGKua+uWq+G0vT7pp30BPXJ7c4I6vRGcw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.12.2.tgz", + "integrity": "sha512-BiPI+IrIlwcW4nLLMM21+B1dFPzd55yAVgVGrdgDjNef+ch03GdxrcyaIz8X9SsQirh/kCQ7mviyWlMxdh2D7g==", "cpu": [ "arm" ], @@ -2408,13 +2158,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.7.12.tgz", - "integrity": "sha512-A5jGMNiY5F/KyeLkph5/gaNXNs/P/FUJvhKIP79mIOn9KUqjqx+UbhZQ1UrRuGHsh0gXPVSnu2UJdhnvJsnEyw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.12.2.tgz", + "integrity": "sha512-zJc0H99FEPoFfSrNpa91HYfxzfAJCr502oxNK1cfdC9hlaFI43RT+JFCann9JUgZmLzzntChHyn13Sgn9ljHNg==", "cpu": [ "arm64" ], @@ -2423,13 +2172,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-arm64-musl": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.7.12.tgz", - "integrity": "sha512-Gv/duj5YStydJTNu2vSHFbSrRimpA6mnVmAnKTe1xMfhqDCm10EP/U6u7NII1jAjbpaRmqtnvFhtndzGxDyfhA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.12.2.tgz", + "integrity": "sha512-KQ3Lki6l+Pz1k/eBipN41ES+YUK30beLGb9YqcB1O542cyLCNE6GaxrfcY3T6EezmGGk84wb5XyO9loTM9tkcA==", "cpu": [ "arm64" ], @@ -2438,13 +2186,40 @@ "optional": true, "os": [ "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-loong64-gnu": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-loong64-gnu/-/resolver-binding-linux-loong64-gnu-1.12.2.tgz", + "integrity": "sha512-3SJGEh1DborhG6pyxvhPzCT4bbSIVihsvgJc13P1bHG7KLdNDaF9T3gsTwFc7Jw/5Y5/iWOjkEx7Zy0NvCGX3Q==", + "cpu": [ + "loong64" ], - "peer": true + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-loong64-musl": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-loong64-musl/-/resolver-binding-linux-loong64-musl-1.12.2.tgz", + "integrity": "sha512-jiuG/Obbel7uw1PwHNFfrkiKhLAF6mnyZ6aWlOAVN9WqKm8v0OFGnciJIHu8+CMvXLQ8AD51LPzAoUfT21D5Ew==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.7.12.tgz", - "integrity": "sha512-BTjdqhVVl1Q8dZCdNkVXZrfFyqNRdWizFuY5N0eHP7zgtNmqwJ3F/eJF/60GnabIcmWHvWvugby2VqHZtW/bQw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.12.2.tgz", + "integrity": "sha512-q7xRvVpmcfeL+LlZg8Pbbo6QaTZwDU5BaGZbwfhkEsXJn3Was8xYfE0RBH266xZt0rM6B7i8xAYIvjthuUIWHg==", "cpu": [ "ppc64" ], @@ -2453,13 +2228,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.7.12.tgz", - "integrity": "sha512-YkjQuWGi1o174Xz2R+oQOOYQgViCwkSdpsHGmLr0QRYgQclJCQ4ug6qT+EGTYi1g4994q3BAaFVgV0GzEM1YSQ==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.12.2.tgz", + "integrity": "sha512-0CVdx6lcnT3Q9inOH8tsMIOJ6ImndllMjqJHg8RLVdB7Vq4SfkEXl9mCSsVNuNA4MCYycRicCUxPCabVHJRr6A==", "cpu": [ "riscv64" ], @@ -2468,13 +2242,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.7.12.tgz", - "integrity": "sha512-9ud5x0qYBuk1rGdGzdjKQq/o7tObgI3IdjaufxKLD6kJIQi6vqww1mfoJklYw2OR5JXOWc6WLNKHa0Rr9aFZsw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.12.2.tgz", + "integrity": "sha512-iOwlRo9vnp6R6ohHQS11n0NnfdXx/omhkocmIfaPRpQhKZ+3BDMkkdRVh53qjkFkpPddf+FETA28NwGN7l5l+w==", "cpu": [ "riscv64" ], @@ -2483,13 +2256,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.7.12.tgz", - "integrity": "sha512-3CNVBpgsvZ4Vrr18JAxQ8Qxz+k4PqTJR05/xn5Tczs9jFEuxPDxZKFskv9QnK3flJtx+ur9MayiTGgFZQAa7hA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.12.2.tgz", + "integrity": "sha512-HYJtLfXq94q8iZNFT1lknx258wlkkWhZeUXJRqzKBBUJ00CvZ+N33zgbCqimLjsyw5Va6uUxhVa12mI+kaveEw==", "cpu": [ "s390x" ], @@ -2498,13 +2270,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-x64-gnu": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.7.12.tgz", - "integrity": "sha512-bPACcY7lEp3M8IItjXEppQEsQ2N54a1aLb1yCWD16lccl8OG9aXQvji9x9VVcmdqR4JV4oWXzr0uIrZ+oFNvOw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.12.2.tgz", + "integrity": "sha512-mPsUhunKKDih5O96Y6enDQyHc1SqBPlY1E/SfMWDM3EdJ95Z9CArPeCVwCCqbP45ljvivdEk8Fxn+SIb1rDAJQ==", "cpu": [ "x64" ], @@ -2513,13 +2284,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-linux-x64-musl": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.7.12.tgz", - "integrity": "sha512-86WuRbj+0tK3qWPthfsR952CHxE23lDTjbKfHOczIkjRvKP/ggAzaiNMOEljxB5iel4HhGTQZBp1lx61aw2q/g==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.12.2.tgz", + "integrity": "sha512-azrt6+5ydLd8Vt210AAFis/lZevSfPw93EJRIJG+xPu4WCJ8K0kppCTpMyLPcKT7H15M4Jnt2tMp5bOvCkRC6A==", "cpu": [ "x64" ], @@ -2528,31 +2298,79 @@ "optional": true, "os": [ "linux" + ] + }, + "node_modules/@unrs/resolver-binding-openharmony-arm64": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-openharmony-arm64/-/resolver-binding-openharmony-arm64-1.12.2.tgz", + "integrity": "sha512-YZ9hP4O0X9PQb8eO980qmLNGH4zT3I9+SZTdt0Pr0YyuGQhYKoOZkV02VzrzyOZJ5xIJ3UFIenKkUkGg8GjgWQ==", + "cpu": [ + "arm64" ], - "peer": true + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] }, "node_modules/@unrs/resolver-binding-wasm32-wasi": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.7.12.tgz", - "integrity": "sha512-RzWV0OyeARtKRNHSbVZyj869P+WHzT2OFEgigs+5qEIM8X3QzbQ90Ye/1hCvgu0zi/cDCXtKWp8Utr1Oym2UIA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.12.2.tgz", + "integrity": "sha512-tYFDIkMxSflfEc/h92ZWNsZlHSwgimbNHSO3PL2JWQHfCuC2q316jMyYU9TIWZsFK2bQwyK5VAdYgn8ygPj69A==", "cpu": [ "wasm32" ], "dev": true, "license": "MIT", "optional": true, - "peer": true, "dependencies": { - "@napi-rs/wasm-runtime": "^0.2.11" + "@emnapi/core": "1.10.0", + "@emnapi/runtime": "1.10.0", + "@napi-rs/wasm-runtime": "^1.1.4" }, "engines": { "node": ">=14.0.0" } }, + "node_modules/@unrs/resolver-binding-wasm32-wasi/node_modules/@emnapi/core": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz", + "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi/node_modules/@emnapi/runtime": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz", + "integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi/node_modules/@emnapi/wasi-threads": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", + "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.7.12.tgz", - "integrity": "sha512-s9FdWj2QFT6PLNY/jPPmd7jF1Fn2HNSuLbZqUpdcSaMdeBGaDvy2C/eBYgGhrK7g8kIYUecT1LdT+SuDs6h+YA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.12.2.tgz", + "integrity": "sha512-qzNyg3xL0VPQmCaUh+N5jSitce6k+uCBfMDesWRnlULOZaqUkaJ0ybdT+UqlAWJoQjuqfIU/0Ptx9bteN4D82g==", "cpu": [ "arm64" ], @@ -2561,13 +2379,12 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.7.12.tgz", - "integrity": "sha512-Fo4Op3Il/6HZ8Gm+YhqBkRZpTGe/QJZWAsCB/CLYBDqJ2NjXptgFsuIvlgXv95+WUkoTw6ifRgxE9gwtcAk5YA==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.12.2.tgz", + "integrity": "sha512-WD9sY00OfpHVGfsnHZoA8jVT+esS/Bg8z8jzxp5BnDCjjwsuKsPQrzswwpFy4J1AUJbXPRfkpcX0mXrzeXW79g==", "cpu": [ "ia32" ], @@ -2576,13 +2393,12 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@unrs/resolver-binding-win32-x64-msvc": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.7.12.tgz", - "integrity": "sha512-00cVr73Qizmx7qycr9aO5NBofoAHuQIhNsuqj+I2Bun/yMddLfpXk86K3GWj096jXLzk0u/77u3qUTJPhuYWiw==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.12.2.tgz", + "integrity": "sha512-nAB74NfSNKknqQ1RrYj6uz8FcXEomu/MATJZxh/x+BArzN2U3JbOYC0APYzUIGhVY3m5hRxA8VPNdPBoG8txlA==", "cpu": [ "x64" ], @@ -2591,8 +2407,7 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@xml-tools/parser": { "version": "1.0.11", @@ -2600,15 +2415,14 @@ "integrity": "sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { "chevrotain": "7.1.1" } }, "node_modules/acorn": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.18.0.tgz", + "integrity": "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==", "dev": true, "license": "MIT", "peer": true, @@ -2625,231 +2439,42 @@ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "license": "MIT", - "peer": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" }, "funding": { "type": "github", "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0", - "peer": true + "license": "Python-2.0" }, "node_modules/aria-query": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", - "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.1.tgz", + "integrity": "sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==", "dev": true, "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.24.0", - "es-object-atoms": "^1.1.1", - "get-intrinsic": "^1.3.0", - "is-string": "^1.1.1", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", - "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-shim-unscopables": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/async-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", - "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, "node_modules/axobject-query": { @@ -2858,48 +2483,50 @@ "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": ">= 0.4" } }, "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/baseline-browser-mapping": { + "version": "2.11.20", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.20.tgz", + "integrity": "sha512-H0ulySigv6icDJ1F7SjtdCD6PrhTpdYCmP0CactWy1+ekh0AFd0o1Wn5T8b+hnTmdBx19u9yhL6wvCylXMY7zw==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "node_modules/brace-expansion": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz", + "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "fill-range": "^7.1.1" + "balanced-match": "^4.0.2" }, "engines": { - "node": ">=8" + "node": "20 || >=22" } }, "node_modules/browserslist": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.0.tgz", - "integrity": "sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==", + "version": "4.28.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.8.tgz", + "integrity": "sha512-V2NpofLblG64mfOtSgDhOJESZEGogzDMBv/q+W6oc4LXWP/q75eOXoOaaOu1EOadB9U4Bwx/e0yzbvwKH8zalA==", "dev": true, "funding": [ { @@ -2918,10 +2545,11 @@ "license": "MIT", "peer": true, "dependencies": { - "caniuse-lite": "^1.0.30001718", - "electron-to-chromium": "^1.5.160", - "node-releases": "^2.0.19", - "update-browserslist-db": "^1.1.3" + "baseline-browser-mapping": "^2.11.12", + "caniuse-lite": "^1.0.30001809", + "electron-to-chromium": "^1.5.402", + "node-releases": "^2.0.53", + "update-browserslist-db": "^1.3.0" }, "bin": { "browserslist": "cli.js" @@ -2930,21 +2558,12 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/builtin-modules": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=6" }, @@ -2958,79 +2577,14 @@ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">= 0.8" } }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/caniuse-lite": { - "version": "1.0.30001721", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001721.tgz", - "integrity": "sha512-cOuvmUVtKrtEaoKiO0rSc29jcjwMwX5tOHDy4MgVFEWiUXj4uBMJkwI8MDySkgXidpMiHUcviogAvFi4pA2hDQ==", + "version": "1.0.30001810", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001810.tgz", + "integrity": "sha512-TITQPUkaz+aVk5GL6NhOdwk1aEaNTSDPsGFWrTuhKGtjTF70jL/Oht2W4c6rXUe5fu7Ie19VIahAXHIIiWWNeg==", "dev": true, "funding": [ { @@ -3046,8 +2600,7 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "CC-BY-4.0", - "peer": true + "license": "CC-BY-4.0" }, "node_modules/ccount": { "version": "2.0.1", @@ -3055,29 +2608,17 @@ "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", "dev": true, "license": "MIT", - "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/change-case": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-5.4.4.tgz", + "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } + "license": "MIT" }, "node_modules/character-entities": { "version": "2.0.2", @@ -3085,7 +2626,6 @@ "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", "dev": true, "license": "MIT", - "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -3097,15 +2637,14 @@ "integrity": "sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { "regexp-to-ast": "0.5.0" } }, "node_modules/ci-info": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", - "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", + "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==", "dev": true, "funding": [ { @@ -3114,92 +2653,64 @@ } ], "license": "MIT", - "peer": true, "engines": { "node": ">=8" } }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/clsx": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=6" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "dev": true, "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">= 12" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "node_modules/comment-parser": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.8.tgz", + "integrity": "sha512-rKZTGo4fzKYna8UcL0isTg5wkBNla7bxTypLwZQXjIdi++IdP1OJ41rI5Mti3/jltkPujbu4i9LIARYA+zpotQ==", "dev": true, "license": "MIT", - "peer": true + "engines": { + "node": ">= 12.0.0" + } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "node_modules/convert-hrtime": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/convert-hrtime/-/convert-hrtime-5.0.0.tgz", + "integrity": "sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==", "dev": true, "license": "MIT", - "peer": true + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/core-js-compat": { - "version": "3.43.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.43.0.tgz", - "integrity": "sha512-2GML2ZsCc5LR7hZYz4AXmjQw8zuy2T//2QntwdnpuYI7jteT6GVYJL7F6C2C57R7gSYrcqVW3lAALefdbhBLDA==", + "version": "3.50.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.50.0.tgz", + "integrity": "sha512-XGpFGbMLHwSt74YLTKho7Ib242qi6O8MSX+sRokV4oz7iKXvQWGYZthjIhjRGMxjzVkAubBO512dKGYcefmX3Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "browserslist": "^4.25.0" + "browserslist": "^4.28.7" + }, + "engines": { + "node": ">=6.4.0" }, "funding": { "type": "opencollective", @@ -3221,95 +2732,36 @@ "node": ">= 8" } }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" + "ms": "^2.1.3" }, "engines": { - "node": ">= 0.4" + "node": ">=6.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", + "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "character-entities": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/inspect-js" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-named-character-reference": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.1.0.tgz", - "integrity": "sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, "node_modules/deep-is": { @@ -3317,46 +2769,7 @@ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "MIT" }, "node_modules/dequal": { "version": "2.0.3", @@ -3364,20 +2777,21 @@ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=6" } }, "node_modules/detect-indent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz", - "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.2.tgz", + "integrity": "sha512-y+8xyqdGLL+6sh0tVeHcfP/QDd8gUgbasolJJpY7NgeQGSZ739bDtSiaiDgtoicy+mtYB81dKLxO9xRhCyIB3A==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/detect-newline": { @@ -3386,7 +2800,6 @@ "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, @@ -3394,13 +2807,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/devalue": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.9.2.tgz", + "integrity": "sha512-po4PAY5c53tw5XMocSnf8A/5OHhbbUftpr93aEN6BBoAdntUmK7vu7wOATqvt7cXO7m1Cl4gMVn6p7n6n4mj0w==", + "dev": true, + "license": "MIT" + }, "node_modules/devlop": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "dequal": "^2.0.0" }, @@ -3409,233 +2828,54 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, "engines": { - "node": ">= 0.4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true, - "license": "MIT" - }, "node_modules/electron-to-chromium": { - "version": "1.5.166", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.166.tgz", - "integrity": "sha512-QPWqHL0BglzPYyJJ1zSSmwFFL6MFXhbACOCcsCdUMCkzPdS9/OIBVxg516X/Ado2qwAq8k0nJJ7phQPCqiaFAw==", + "version": "1.5.416", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.416.tgz", + "integrity": "sha512-K6bvB2BjnNrugtIih6ewlbBI9DXa976jIdiIlRLHhBoEI9a4JaQjjHyF+A1IQI543aQYR4LnmOrT/K5fZj0aPA==", "dev": true, - "license": "ISC", - "peer": true - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true, - "license": "MIT" + "license": "ISC" }, "node_modules/enhanced-resolve": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", - "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "version": "5.24.5", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.24.5.tgz", + "integrity": "sha512-L1l8TNvomm6UVW5B253AGxQagSQr+vGwhMlrrfRS2qmhx46AMpMVJKQYLvWYbysTMY8VoicOvzHzoHMbyzB+4A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "tapable": "^2.3.3" }, "engines": { "node": ">=10.13.0" } }, - "node_modules/es-abstract": { - "version": "1.24.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", - "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.3.0", - "get-proto": "^1.0.1", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.2.1", - "is-set": "^2.0.3", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.1", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.4", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "stop-iteration-iterator": "^1.1.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.19" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - }, + "license": "BSD-2-Clause", "engines": { - "node": ">= 0.4" + "node": ">=0.12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/fb55/entities?sponsor=1" } }, "node_modules/esbuild": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.1.tgz", - "integrity": "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==", + "version": "0.28.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.2.tgz", + "integrity": "sha512-HKVLS8dvII+xoKW9kmqxbRKrnWEXfJJr/FZhhJmiqIB0e053QNYFqOBouTMO/k5sID4MvCiUCvv8b9M4h32wIA==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -3647,31 +2887,32 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.1", - "@esbuild/android-arm": "0.25.1", - "@esbuild/android-arm64": "0.25.1", - "@esbuild/android-x64": "0.25.1", - "@esbuild/darwin-arm64": "0.25.1", - "@esbuild/darwin-x64": "0.25.1", - "@esbuild/freebsd-arm64": "0.25.1", - "@esbuild/freebsd-x64": "0.25.1", - "@esbuild/linux-arm": "0.25.1", - "@esbuild/linux-arm64": "0.25.1", - "@esbuild/linux-ia32": "0.25.1", - "@esbuild/linux-loong64": "0.25.1", - "@esbuild/linux-mips64el": "0.25.1", - "@esbuild/linux-ppc64": "0.25.1", - "@esbuild/linux-riscv64": "0.25.1", - "@esbuild/linux-s390x": "0.25.1", - "@esbuild/linux-x64": "0.25.1", - "@esbuild/netbsd-arm64": "0.25.1", - "@esbuild/netbsd-x64": "0.25.1", - "@esbuild/openbsd-arm64": "0.25.1", - "@esbuild/openbsd-x64": "0.25.1", - "@esbuild/sunos-x64": "0.25.1", - "@esbuild/win32-arm64": "0.25.1", - "@esbuild/win32-ia32": "0.25.1", - "@esbuild/win32-x64": "0.25.1" + "@esbuild/aix-ppc64": "0.28.2", + "@esbuild/android-arm": "0.28.2", + "@esbuild/android-arm64": "0.28.2", + "@esbuild/android-x64": "0.28.2", + "@esbuild/darwin-arm64": "0.28.2", + "@esbuild/darwin-x64": "0.28.2", + "@esbuild/freebsd-arm64": "0.28.2", + "@esbuild/freebsd-x64": "0.28.2", + "@esbuild/linux-arm": "0.28.2", + "@esbuild/linux-arm64": "0.28.2", + "@esbuild/linux-ia32": "0.28.2", + "@esbuild/linux-loong64": "0.28.2", + "@esbuild/linux-mips64el": "0.28.2", + "@esbuild/linux-ppc64": "0.28.2", + "@esbuild/linux-riscv64": "0.28.2", + "@esbuild/linux-s390x": "0.28.2", + "@esbuild/linux-x64": "0.28.2", + "@esbuild/netbsd-arm64": "0.28.2", + "@esbuild/netbsd-x64": "0.28.2", + "@esbuild/openbsd-arm64": "0.28.2", + "@esbuild/openbsd-x64": "0.28.2", + "@esbuild/openharmony-arm64": "0.28.2", + "@esbuild/sunos-x64": "0.28.2", + "@esbuild/win32-arm64": "0.28.2", + "@esbuild/win32-ia32": "0.28.2", + "@esbuild/win32-x64": "0.28.2" } }, "node_modules/escalade": { @@ -3680,7 +2921,6 @@ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=6" } @@ -3691,7 +2931,6 @@ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=10" }, @@ -3700,35 +2939,34 @@ } }, "node_modules/eslint": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", - "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", + "version": "10.8.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.8.1.tgz", + "integrity": "sha512-wqA7W2jbsC/BnV9Iv1UZpKVFkO1AdNoSmYW8NWG4HNOBbkAMvIqDZ27pI2f07dqn583NcIC44ckjAcOXDL1QbQ==", "dev": true, "license": "MIT", "peer": true, + "workspaces": [ + "packages/*" + ], "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.20.0", - "@eslint/config-helpers": "^0.2.1", - "@eslint/core": "^0.14.0", - "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.27.0", - "@eslint/plugin-kit": "^0.3.1", + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.2", + "@eslint/config-array": "^0.23.5", + "@eslint/config-helpers": "^0.7.0", + "@eslint/core": "^1.2.1", + "@eslint/plugin-kit": "^0.7.2", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", "@types/estree": "^1.0.6", - "@types/json-schema": "^7.0.15", - "ajv": "^6.12.4", - "chalk": "^4.0.0", + "ajv": "^6.14.0", "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.3.0", - "eslint-visitor-keys": "^4.2.0", - "espree": "^10.3.0", - "esquery": "^1.5.0", + "eslint-scope": "^9.1.2", + "eslint-visitor-keys": "^5.0.1", + "espree": "^11.2.0", + "esquery": "^1.7.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^8.0.0", @@ -3738,8 +2976,7 @@ "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", + "minimatch": "^10.2.5", "natural-compare": "^1.4.0", "optionator": "^0.9.3" }, @@ -3747,7 +2984,7 @@ "eslint": "bin/eslint.js" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://eslint.org/donate" @@ -3767,7 +3004,6 @@ "integrity": "sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "semver": "^7.5.4" }, @@ -3779,12 +3015,11 @@ } }, "node_modules/eslint-config-prettier": { - "version": "10.1.5", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.5.tgz", - "integrity": "sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw==", + "version": "10.1.8", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz", + "integrity": "sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==", "dev": true, "license": "MIT", - "peer": true, "bin": { "eslint-config-prettier": "bin/cli.js" }, @@ -3796,15 +3031,14 @@ } }, "node_modules/eslint-import-context": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eslint-import-context/-/eslint-import-context-0.1.8.tgz", - "integrity": "sha512-bq+F7nyc65sKpZGT09dY0S0QrOnQtuDVIfyTGQ8uuvtMIF7oHp6CEP3mouN0rrnYF3Jqo6Ke0BfU/5wASZue1w==", + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/eslint-import-context/-/eslint-import-context-0.1.9.tgz", + "integrity": "sha512-K9Hb+yRaGAGUbwjhFNHvSmmkZs9+zbuoe3kFQ4V1wYjrepUFYM2dZAfNtjbbj3qsPfUfsA68Bx/ICWQMi+C8Eg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "get-tsconfig": "^4.10.1", - "stable-hash-x": "^0.1.1" + "stable-hash-x": "^0.2.0" }, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" @@ -3821,45 +3055,20 @@ } } }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "^2.1.1" - } - }, "node_modules/eslint-import-resolver-typescript": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-4.4.1.tgz", - "integrity": "sha512-KHQnjMAn/Hbs1AcMs2YfJTeNoWsaOoMRvJUKr77Y2dv7jNOaT8/IJYlvfN/ZIwTxUsv2B6amwv7u9bt2Vl9lZg==", + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-4.4.5.tgz", + "integrity": "sha512-nbE5XLph6TLtGYcu/U6e6ZVXyKBhbDWK5cLGk76eJ7NdZpwf1P9EFkpt1Z01mNZNrrilsAYWKH6zUkL4reoXbw==", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "debug": "^4.4.1", - "eslint-import-context": "^0.1.5", + "eslint-import-context": "^0.1.8", "get-tsconfig": "^4.10.1", "is-bun-module": "^2.0.0", - "stable-hash": "^0.0.5", + "stable-hash-x": "^0.2.0", "tinyglobby": "^0.2.14", - "unrs-resolver": "^1.7.2" + "unrs-resolver": "^1.7.11" }, "engines": { "node": "^16.17.0 || >=18.6.0" @@ -3881,36 +3090,6 @@ } } }, - "node_modules/eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "^2.1.1" - } - }, "node_modules/eslint-plugin-es-x": { "version": "7.8.0", "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz", @@ -3921,7 +3100,6 @@ "https://opencollective.com/eslint" ], "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.1.2", "@eslint-community/regexpp": "^4.11.0", @@ -3934,182 +3112,106 @@ "eslint": ">=8" } }, - "node_modules/eslint-plugin-eslint-comments": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", - "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", + "node_modules/eslint-plugin-import-x": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import-x/-/eslint-plugin-import-x-4.17.1.tgz", + "integrity": "sha512-4cdstYkKCyjumM2Q9NSI03K8D2a9F4Ssz33K2lv2hQa4KmR9jPLwk3uWGtNvclfqBrPGfGuMBwsGMbe6dMRbfg==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "escape-string-regexp": "^1.0.5", - "ignore": "^5.0.5" + "@typescript-eslint/types": "^8.56.0", + "comment-parser": "^1.4.1", + "debug": "^4.4.1", + "eslint-import-context": "^0.1.9", + "is-glob": "^4.0.3", + "minimatch": "^9.0.3 || ^10.1.2", + "semver": "^7.7.2", + "stable-hash-x": "^0.2.0", + "unrs-resolver": "^1.9.2" }, "engines": { - "node": ">=6.5.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://opencollective.com/eslint-plugin-import-x" }, "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", - "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.8", - "array.prototype.findlastindex": "^1.2.5", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.0", - "hasown": "^2.0.2", - "is-core-module": "^2.15.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.0", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.8", - "tsconfig-paths": "^3.15.0" - }, - "engines": { - "node": ">=4" + "@typescript-eslint/utils": "^8.56.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "eslint-import-resolver-node": "*" }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver.js" + "peerDependenciesMeta": { + "@typescript-eslint/utils": { + "optional": true + }, + "eslint-import-resolver-node": { + "optional": true + } } }, "node_modules/eslint-plugin-n": { - "version": "17.18.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-17.18.0.tgz", - "integrity": "sha512-hvZ/HusueqTJ7VDLoCpjN0hx4N4+jHIWTXD4TMLHy9F23XkDagR9v+xQWRWR57yY55GPF8NnD4ox9iGTxirY8A==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-18.3.0.tgz", + "integrity": "sha512-cPVguuDe6DrIPb/qUXHf8P89MaVTUmiYWwpt5gX5AILsvRIiZAxMFXcFR6QHYBksqKJpjfUBlL/RleCJUWcD7w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.5.0", "enhanced-resolve": "^5.17.1", "eslint-plugin-es-x": "^7.8.0", "get-tsconfig": "^4.8.1", "globals": "^15.11.0", + "globrex": "^0.1.2", "ignore": "^5.3.2", - "minimatch": "^9.0.5", "semver": "^7.6.3" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" }, "peerDependencies": { - "eslint": ">=8.23.0" - } - }, - "node_modules/eslint-plugin-n/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/eslint-plugin-n/node_modules/globals": { - "version": "15.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", - "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=18" + "eslint": ">=8.57.1", + "ts-declaration-location": "^1.0.6", + "typescript": ">=5.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "ts-declaration-location": { + "optional": true + }, + "typescript": { + "optional": true + } } }, - "node_modules/eslint-plugin-n/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "node_modules/eslint-plugin-n/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, + "license": "MIT", "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 4" } }, "node_modules/eslint-plugin-no-only-tests": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-only-tests/-/eslint-plugin-no-only-tests-3.3.0.tgz", - "integrity": "sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-only-tests/-/eslint-plugin-no-only-tests-3.4.0.tgz", + "integrity": "sha512-4S3/9Nb7A2tiMcpzEQE9bQSlpeOz6WJkgryBuou/SA8W2x2c8Zf4j0NvTKBjv6qNhF9T79tmkecm/0CHqV0UGg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=5.0.0" } }, "node_modules/eslint-plugin-no-secrets": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-secrets/-/eslint-plugin-no-secrets-2.2.1.tgz", - "integrity": "sha512-/7BduEiFeINJ7mlc8iRmqp0sDw2a2lAFahig/RGppn7qf1dKhldXopUuv4M92kc4PX90dcxfKwKtYrW159cuhA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-secrets/-/eslint-plugin-no-secrets-2.3.3.tgz", + "integrity": "sha512-sroCsCscpwQxZ/O9Ml69w5qt/2nvHhXDeyUnSqSC5dMANGxt4rQgUn7xbPvDmhbMPmUCAc2Y3SRU0cXet7kNWQ==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=18", "npm": ">=8" @@ -4119,112 +3221,87 @@ } }, "node_modules/eslint-plugin-sonarjs": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-3.0.2.tgz", - "integrity": "sha512-LxjbfwI7ypENeTmGyKmDyNux3COSkMi7H/6Cal5StSLQ6edf0naP45SZR43OclaNR7WfhVTZdhOn63q3/Y6puQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-4.2.0.tgz", + "integrity": "sha512-bqADfuNtTL7VK6RU29eoiFTtaaBKIpVPuX3bOl+rBpWSBa0zIBVZlqZNZQjfP6s4iXkAJokv5IsD8OsACkwApg==", "dev": true, "license": "LGPL-3.0-only", - "peer": true, "dependencies": { - "@eslint-community/regexpp": "4.12.1", - "builtin-modules": "3.3.0", - "bytes": "3.1.2", - "functional-red-black-tree": "1.0.1", - "jsx-ast-utils": "3.3.5", - "minimatch": "9.0.5", - "scslre": "0.3.0", - "semver": "7.7.1", - "typescript": "^5" + "@eslint-community/regexpp": "^4.12.2", + "builtin-modules": "^3.3.0", + "bytes": "^3.1.2", + "functional-red-black-tree": "^1.0.1", + "globals": "^17.7.0", + "jsx-ast-utils-x": "^0.1.0", + "lodash.merge": "^4.6.2", + "minimatch": "^10.2.5", + "scslre": "^0.3.0", + "semver": "^7.8.5", + "ts-api-utils": "^2.5.0", + "typescript": ">=5 <6.1.0", + "yaml": "^2.9.0" }, "peerDependencies": { - "eslint": "^8.0.0 || ^9.0.0" + "eslint": "^8.0.0 || ^9.0.0 || ^10.0.0" } }, - "node_modules/eslint-plugin-sonarjs/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/eslint-plugin-sonarjs/node_modules/globals": { + "version": "17.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-17.11.0.tgz", + "integrity": "sha512-Z2I8hM+PbJDXQDq3Icgpzv+mPdwr68iZUU9d5WW4FuXfDUQfkZaZuvjMv42/5crNyw154+9+VWXbYrUgDXbxNw==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/eslint-plugin-sonarjs/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=18" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/eslint-plugin-sonarjs/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint-plugin-unicorn": { - "version": "59.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-59.0.1.tgz", - "integrity": "sha512-EtNXYuWPUmkgSU2E7Ttn57LbRREQesIP1BiLn7OZLKodopKfDXfBUkC/0j6mpw2JExwf43Uf3qLSvrSvppgy8Q==", + "version": "73.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-73.0.0.tgz", + "integrity": "sha512-V0YatLe9nkGhXEXKe2Qljb1EY0sJHwDV0HUF1NKFwtsHh/fU7qGHDgv+6fchzZcgU2/7noHo2gdjnmo0P2uDPw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", - "@eslint-community/eslint-utils": "^4.5.1", - "@eslint/plugin-kit": "^0.2.7", - "ci-info": "^4.2.0", - "clean-regexp": "^1.0.0", - "core-js-compat": "^3.41.0", - "esquery": "^1.6.0", + "@eslint-community/eslint-utils": "^4.9.1", + "@eslint/css-tree": "^4.0.4", + "browserslist": "^4.28.4", + "change-case": "^5.4.4", + "ci-info": "^4.4.0", + "core-js-compat": "^3.49.0", + "detect-indent": "^7.0.2", + "entities": "^4.5.0", "find-up-simple": "^1.0.1", - "globals": "^16.0.0", + "globals": "^17.7.0", "indent-string": "^5.0.0", "is-builtin-module": "^5.0.0", - "jsesc": "^3.1.0", + "is-identifier": "^1.1.0", "pluralize": "^8.0.0", - "regexp-tree": "^0.1.27", - "regjsparser": "^0.12.0", - "semver": "^7.7.1", - "strip-indent": "^4.0.0" + "quote-js-string": "^0.1.0", + "regjsparser": "^0.13.2", + "reserved-identifiers": "^1.2.0", + "semver": "^7.8.5", + "strip-indent": "^4.1.1", + "yaml": "^2.9.0" }, "engines": { - "node": "^18.20.0 || ^20.10.0 || >=21.0.0" + "node": ">=22" }, "funding": { "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" }, "peerDependencies": { - "eslint": ">=9.22.0" + "eslint": ">=10.4" } }, "node_modules/eslint-plugin-unicorn/node_modules/globals": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.2.0.tgz", - "integrity": "sha512-O+7l9tPdHCU320IigZZPj5zmRCFG9xHmx9cU8FqU2Rp+JN714seHV+2S9+JslCpY4gJwU2vOGox0wzgae/MCEg==", + "version": "17.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-17.11.0.tgz", + "integrity": "sha512-Z2I8hM+PbJDXQDq3Icgpzv+mPdwr68iZUU9d5WW4FuXfDUQfkZaZuvjMv42/5crNyw154+9+VWXbYrUgDXbxNw==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=18" }, @@ -4233,59 +3310,57 @@ } }, "node_modules/eslint-plugin-yml": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.18.0.tgz", - "integrity": "sha512-9NtbhHRN2NJa/s3uHchO3qVVZw0vyOIvWlXWGaKCr/6l3Go62wsvJK5byiI6ZoYztDsow4GnS69BZD3GnqH3hA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-3.8.1.tgz", + "integrity": "sha512-E/70psRwxz5EJ8dBtzrFfqSiiInuSytbdtFCjueb/GcKjsWzPBfxfhtQePImMAPjHwMA/VDurO7DJwStDJ4wWg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "debug": "^4.3.2", - "escape-string-regexp": "4.0.0", - "eslint-compat-utils": "^0.6.0", + "@eslint/core": "^1.0.1", + "@eslint/plugin-kit": "^0.7.0", + "@ota-meshi/ast-token-store": "^0.3.0", + "diff-sequences": "^29.0.0", + "escape-string-regexp": "5.0.0", "natural-compare": "^1.4.0", - "yaml-eslint-parser": "^1.2.1" + "yaml-eslint-parser": "^2.0.0" }, "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": "^20.19.0 || ^22.13.0 || >=24.0.0" }, "funding": { "url": "https://github.com/sponsors/ota-meshi" }, "peerDependencies": { - "eslint": ">=6.0.0" + "eslint": ">=9.38.0" } }, - "node_modules/eslint-plugin-yml/node_modules/eslint-compat-utils": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.6.5.tgz", - "integrity": "sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==", + "node_modules/eslint-plugin-yml/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "semver": "^7.5.4" - }, "engines": { "node": ">=12" }, - "peerDependencies": { - "eslint": ">=6.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint-scope": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", - "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-9.1.2.tgz", + "integrity": "sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { + "@types/esrecurse": "^4.3.1", + "@types/estree": "^1.0.8", "esrecurse": "^4.3.0", "estraverse": "^5.2.0" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" @@ -4297,7 +3372,6 @@ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -4305,97 +3379,97 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/@eslint/core": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", - "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/eslint/node_modules/@eslint/plugin-kit": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", - "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", + "node_modules/eslint/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", "dev": true, - "license": "Apache-2.0", - "peer": true, + "license": "MIT", "dependencies": { - "@eslint/core": "^0.14.0", - "levn": "^0.4.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, "node_modules/esm-env": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/espree": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", - "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz", + "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { - "acorn": "^8.15.0", + "acorn": "^8.16.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.1" + "eslint-visitor-keys": "^5.0.1" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", "dev": true, "license": "BSD-3-Clause", - "peer": true, "dependencies": { "estraverse": "^5.1.0" }, @@ -4404,14 +3478,21 @@ } }, "node_modules/esrap": { - "version": "1.4.9", - "resolved": "https://registry.npmjs.org/esrap/-/esrap-1.4.9.tgz", - "integrity": "sha512-3OMlcd0a03UGuZpPeUC1HxR3nA23l+HEyCiZw3b3FumJIN9KphoGzDJKMXI1S72jVS1dsenDyQC0kJlO1U9E1g==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/esrap/-/esrap-2.3.6.tgz", + "integrity": "sha512-yc0OC12UjPqLoc+fe+v5GNs4TOjAigUw3sTikfC+xeBPGUw7gDRz3DtYaqEhxyMVJojcSWJw7jT0QWR+CbuE/A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "peerDependencies": { + "@typescript-eslint/types": "^8.2.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/types": { + "optional": true + } } }, "node_modules/esrecurse": { @@ -4420,7 +3501,6 @@ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { "estraverse": "^5.2.0" }, @@ -4434,7 +3514,6 @@ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "engines": { "node": ">=4.0" } @@ -4445,7 +3524,6 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -4455,67 +3533,38 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } + "license": "MIT" }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, - "node_modules/fastq": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", - "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "node_modules/fast-uri": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.6.tgz", + "integrity": "sha512-7Ical1vFEMr0onbVzEDIreM22I4khW+fzyQPwvAFWBp1iwdshSZRsL4jjRvPG9JP1uiqMHRto+YU6R2/CzDz5Q==", "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "reusify": "^1.0.4" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" }, "node_modules/fault": { "version": "2.0.1", @@ -4523,7 +3572,6 @@ "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "format": "^0.2.0" }, @@ -4532,13 +3580,30 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, "node_modules/file-entry-cache": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "flat-cache": "^4.0.0" }, @@ -4546,27 +3611,12 @@ "node": ">=16.0.0" } }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -4584,7 +3634,6 @@ "integrity": "sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=18" }, @@ -4598,7 +3647,6 @@ "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" @@ -4608,88 +3656,39 @@ } }, "node_modules/flatted": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", - "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", - "dev": true, - "license": "ISC", - "peer": true - }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.4.tgz", + "integrity": "sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "ISC" }, - "node_modules/foreground-child": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "node_modules/foreach": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", + "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==", "dev": true, - "license": "ISC", - "dependencies": { - "cross-spawn": "^7.0.6", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "license": "MIT" }, "node_modules/format": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", "dev": true, - "peer": true, "engines": { "node": ">=0.4.x" } }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "node_modules/function-timeout": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/function-timeout/-/function-timeout-1.0.2.tgz", + "integrity": "sha512-939eZS4gJ3htTHAldmyyuzlrD58P03fHG49v2JfFXbV6OhvZKRC9j2yAtdHw/zrp2zXHuv05zMIy40F0ge7spA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - }, "engines": { - "node": ">= 0.4" + "node": ">=18" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/functional-red-black-tree": { @@ -4697,101 +3696,14 @@ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-stdin": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", - "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "MIT" }, "node_modules/get-tsconfig": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.1.tgz", - "integrity": "sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==", + "version": "4.14.3", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.14.3.tgz", + "integrity": "sha512-++QEw4DIY7WGoukz+/+A/8dGYPT9l9yIadnmSgZ8Rjr3YVSVDipQSO9CdnJo9ePqFqUUqh+wk9uIaoiAwsiPkA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "resolve-pkg-maps": "^1.0.0" }, @@ -4800,35 +3712,35 @@ } }, "node_modules/git-hooks-list": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-3.2.0.tgz", - "integrity": "sha512-ZHG9a1gEhUMX1TvGrLdyWb9kDopCBbTnI8z4JgRMYxsijWipgjSEYoPWqBuIB0DnRnvqlQSEeVmzpeuPm7NdFQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-4.2.1.tgz", + "integrity": "sha512-WNvqJjOxxs/8ZP9+DWdwWJ7cDsd60NHf39XnD82pDVrKO5q7xfPqpkK6hwEAmBa/ZSEE4IOoR75EzbbIuwGlMw==", "dev": true, "license": "MIT", - "peer": true, "funding": { "url": "https://github.com/fisker/git-hooks-list?sponsor=1" } }, + "node_modules/github-slugger": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", + "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", + "dev": true, + "license": "ISC" + }, "node_modules/glob": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.2.tgz", - "integrity": "sha512-YT7U7Vye+t5fZ/QMkBFrTJ7ZQxInIUjwyAjVj84CYXqgBdv30MFUPGnBR6sQaVq6Is15wYJUsnzTuWaGRBhBAQ==", + "version": "13.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.6.tgz", + "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==", "dev": true, - "license": "ISC", + "license": "BlueOak-1.0.0", "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^4.0.1", - "minimatch": "^10.0.0", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^2.0.0" - }, - "bin": { - "glob": "dist/esm/bin.mjs" + "minimatch": "^10.2.2", + "minipass": "^7.1.3", + "path-scurry": "^2.0.2" }, "engines": { - "node": "20 || >=22" + "node": "18 || 20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -4840,7 +3752,6 @@ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "is-glob": "^4.0.3" }, @@ -4848,39 +3759,12 @@ "node": ">=10.13.0" } }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=18" }, @@ -4888,210 +3772,161 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "MIT" }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true, - "license": "ISC", - "peer": true + "license": "ISC" }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "node_modules/http-status-codes": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/http-status-codes/-/http-status-codes-2.3.0.tgz", + "integrity": "sha512-RJ8XvFvpPM/Dmc5SV+dC4y5PCeOhT3x1Hq0NU3rjGeg5a/CqlhZ7uudknPwZFz4aeAXDcbAyaeP7GAo9lvngtA==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, - "node_modules/has-bigints": { + "node_modules/identifier-regex": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "resolved": "https://registry.npmjs.org/identifier-regex/-/identifier-regex-1.1.0.tgz", + "integrity": "sha512-SLX4H/vtcYlYnL7XqnuJKHU7Z8517TgsW9nmQiGOgMCjQ8V/deLYu6bEmbGoXe7WMMhc9+EUGyFFneHja8KabA==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "reserved-identifiers": "^1.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=18" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/ignore": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.6.tgz", + "integrity": "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=8" + "node": ">= 4" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.8.19" } }, - "node_modules/has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "dunder-proto": "^1.0.0" - }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "node_modules/is-builtin-module": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-5.0.0.tgz", + "integrity": "sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "builtin-modules": "^5.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=18.20" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "node_modules/is-builtin-module/node_modules/builtin-modules": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-5.3.0.tgz", + "integrity": "sha512-hMQUl2bUFG339QygPM97E+mc8OY1IAchORZxm4a/frcYwKzozMzRVDBwHW0NjOqGElLm2O37AVQE8ikxlZHrMQ==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "has-symbols": "^1.0.3" - }, "engines": { - "node": ">= 0.4" + "node": ">=18.20" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" + "semver": "^7.7.1" } }, - "node_modules/http-status-codes": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/http-status-codes/-/http-status-codes-2.3.0.tgz", - "integrity": "sha512-RJ8XvFvpPM/Dmc5SV+dC4y5PCeOhT3x1Hq0NU3rjGeg5a/CqlhZ7uudknPwZFz4aeAXDcbAyaeP7GAo9lvngtA==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "license": "MIT", - "peer": true + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, "engines": { - "node": ">= 4" + "node": ">=0.10.0" } }, - "node_modules/import-fresh": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", - "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "node_modules/is-identifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-identifier/-/is-identifier-1.1.0.tgz", + "integrity": "sha512-NhOds0mDx9lJu+1lBRO0xbwFo5nobA7GCk/0e5xjr6+6XugX985+0OyGX35BNrTkPAsdLcIKg02HUQJOK8D8kw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "identifier-regex": "^1.1.0", + "super-regex": "^1.1.0" }, "engines": { - "node": ">=6" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -5099,1018 +3934,839 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "node_modules/is-reference": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.3.tgz", + "integrity": "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" + "@types/estree": "^1.0.6" } }, - "node_modules/is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "ISC" }, - "node_modules/is-async-function": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "node_modules/js-yaml": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.2.tgz", + "integrity": "sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "async-function": "^1.0.0", - "call-bound": "^1.0.3", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" + "argparse": "^2.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/is-bigint": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", - "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "node_modules/jsep": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jsep/-/jsep-1.4.0.tgz", + "integrity": "sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "has-bigints": "^1.0.2" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 10.16.0" } }, - "node_modules/is-boolean-object": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", - "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" + "bin": { + "jsesc": "bin/jsesc" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/is-builtin-module": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-5.0.0.tgz", - "integrity": "sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==", + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "builtin-modules": "^5.0.0" - }, - "engines": { - "node": ">=18.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "license": "MIT" }, - "node_modules/is-builtin-module/node_modules/builtin-modules": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-5.0.0.tgz", - "integrity": "sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==", + "node_modules/json-pointer": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", + "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=18.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "foreach": "^2.0.4" } }, - "node_modules/is-bun-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", - "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "semver": "^7.7.1" - } + "license": "MIT" }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "MIT" }, - "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "node_modules/jsonpath-plus": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.4.0.tgz", + "integrity": "sha512-T92WWatJXmhBbKsgH/0hl+jxjdXrifi5IKeMY02DWggRxX0UElcbVzPlmgLTbvsPeW1PasQ6xE2Q75stkhGbsA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "hasown": "^2.0.2" + "@jsep-plugin/assignment": "^1.3.0", + "@jsep-plugin/regex": "^1.0.4", + "jsep": "^1.4.0" }, - "engines": { - "node": ">= 0.4" + "bin": { + "jsonpath": "bin/jsonpath-cli.js", + "jsonpath-plus": "bin/jsonpath-cli.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "node_modules/jsx-ast-utils-x": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils-x/-/jsx-ast-utils-x-0.1.0.tgz", + "integrity": "sha512-eQQBjBnsVtGacsG9uJNB8qOr3yA8rga4wAaGG1qRcBzSIvfhERLrWxMAM1hp5fcS6Abo8M4+bUBTekYR0qTPQw==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "node_modules/katex": { + "version": "0.16.47", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.47.tgz", + "integrity": "sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg==", "dev": true, + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "commander": "^8.3.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "katex": "cli.js" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "json-buffer": "3.0.1" } }, - "node_modules/is-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8.0" } }, - "node_modules/is-fullwidth-code-point": { + "node_modules/locate-character": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz", + "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } + "license": "MIT" }, - "node_modules/is-generator-function": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3", - "get-proto": "^1.0.0", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "node_modules/lru-cache": { + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", "dev": true, - "license": "MIT", - "peer": true, + "license": "BlueOak-1.0.0", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "20 || >=22" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.12.0" + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" } }, - "node_modules/is-number-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", - "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "node_modules/make-asynchronous": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/make-asynchronous/-/make-asynchronous-1.1.0.tgz", + "integrity": "sha512-ayF7iT+44LXdxJLTrTd3TLQpFDDvPCBxXxbv+pMUSuHA5Q8zyAfwkRP6aHHwNVFBUFWtxAHqwNJxF8vMZLAbVg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" + "p-event": "^6.0.0", + "type-fest": "^4.6.0", + "web-worker": "^1.5.0" }, "engines": { - "node": ">= 0.4" + "node": ">=18" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "node_modules/markdown-table": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/is-reference": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.3.tgz", - "integrity": "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==", + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", + "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/estree": "^1.0.6" + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-set": { + "node_modules/mdast-util-from-markdown": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", + "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "node_modules/mdast-util-frontmatter": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", + "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "escape-string-regexp": "^5.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "node_modules/mdast-util-gfm": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "node_modules/mdast-util-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-weakref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-weakset": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", - "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/isexe": { + "node_modules/mdast-util-gfm-task-list-item": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/jackspeak": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", - "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", "dev": true, - "license": "BlueOak-1.0.0", + "license": "MIT", "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": "20 || >=22" + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/mdast-util-math": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-3.0.0.tgz", + "integrity": "sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "argparse": "^2.0.1" + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "longest-streak": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.1.0", + "unist-util-remove-position": "^5.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", "dev": true, "license": "MIT", - "peer": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "node_modules/mdast-util-to-markdown": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", + "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "minimist": "^1.2.0" + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" }, - "bin": { - "json5": "lib/cli.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" + "@types/mdast": "^4.0.0" }, - "engines": { - "node": ">=4.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "node_modules/mdn-data": { + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.29.0.tgz", + "integrity": "sha512-pVxQFCcaYUEAH853+v7yoI/qzhxXSq1bTb9obMYGYAN1c3Hen+XDCEvr296XhstrwlSTNgOR7mCSD4JPjbJe5A==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "json-buffer": "3.0.1" - } + "license": "CC0-1.0" }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/micromark": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", + "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", "dev": true, - "license": "MIT", - "peer": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/locate-character": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz", - "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", + "node_modules/micromark-core-commonmark": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", + "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/micromark-extension-frontmatter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", + "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" + "fault": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/longest-streak": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", - "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/lru-cache": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", - "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", - "dev": true, - "license": "ISC", - "engines": { - "node": "20 || >=22" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/markdown-table": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", - "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-find-and-replace": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", - "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz", + "integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/mdast": "^4.0.0", - "escape-string-regexp": "^5.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" + "dependencies": { + "micromark-util-types": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-from-markdown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz", - "integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==", + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark": "^4.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-stringify-position": "^4.0.0" + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-frontmatter": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", - "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", + "node_modules/micromark-extension-math": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-3.1.0.tgz", + "integrity": "sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/mdast": "^4.0.0", + "@types/katex": "^0.16.0", "devlop": "^1.0.0", - "escape-string-regexp": "^5.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-extension-frontmatter": "^2.0.0" + "katex": "^0.16.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mdast-util-gfm": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", - "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-gfm-autolink-literal": "^2.0.0", - "mdast-util-gfm-footnote": "^2.0.0", - "mdast-util-gfm-strikethrough": "^2.0.0", - "mdast-util-gfm-table": "^2.0.0", - "mdast-util-gfm-task-list-item": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-autolink-literal": { + "node_modules/micromark-factory-destination": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", - "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "ccount": "^2.0.0", - "devlop": "^1.0.0", - "mdast-util-find-and-replace": "^3.0.0", - "micromark-util-character": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-footnote": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", - "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", - "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", + "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", - "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", + "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "@types/mdast": "^4.0.0", "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-phrasing": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", - "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", - "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^4.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "node_modules/micromark-factory-space": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", + "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "@types/mdast": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 8" + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", - "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", + "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", "dev": true, "funding": [ { @@ -6123,31 +4779,17 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-core-commonmark": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", - "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", + "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", "dev": true, "funding": [ { @@ -6160,183 +4802,38 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-destination": "^2.0.0", - "micromark-factory-label": "^2.0.0", "micromark-factory-space": "^2.0.0", - "micromark-factory-title": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-html-tag-name": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-extension-frontmatter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", - "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fault": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", - "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-extension-gfm-autolink-literal": "^2.0.0", - "micromark-extension-gfm-footnote": "^2.0.0", - "micromark-extension-gfm-strikethrough": "^2.0.0", - "micromark-extension-gfm-table": "^2.0.0", - "micromark-extension-gfm-tagfilter": "^2.0.0", - "micromark-extension-gfm-task-list-item": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", - "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-footnote": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", - "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", - "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-gfm-table": { + "node_modules/micromark-util-character": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz", - "integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", - "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", - "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-factory-destination": { + "node_modules/micromark-util-chunked": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", - "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", + "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", "dev": true, "funding": [ { @@ -6349,17 +4846,14 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-factory-label": { + "node_modules/micromark-util-classify-character": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", - "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", + "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", "dev": true, "funding": [ { @@ -6372,18 +4866,16 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "devlop": "^1.0.0", "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-factory-space": { + "node_modules/micromark-util-combine-extensions": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", - "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", + "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", "dev": true, "funding": [ { @@ -6396,16 +4888,15 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-factory-title": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", - "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", + "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", "dev": true, "funding": [ { @@ -6418,18 +4909,14 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-factory-whitespace": { + "node_modules/micromark-util-decode-string": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", - "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", + "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", "dev": true, "funding": [ { @@ -6442,18 +4929,17 @@ } ], "license": "MIT", - "peer": true, "dependencies": { - "micromark-factory-space": "^2.0.0", + "decode-named-character-reference": "^1.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-util-character": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", "dev": true, "funding": [ { @@ -6465,17 +4951,12 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } + "license": "MIT" }, - "node_modules/micromark-util-chunked": { + "node_modules/micromark-util-html-tag-name": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", - "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", + "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", "dev": true, "funding": [ { @@ -6487,16 +4968,12 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } + "license": "MIT" }, - "node_modules/micromark-util-classify-character": { + "node_modules/micromark-util-normalize-identifier": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", - "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", + "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", "dev": true, "funding": [ { @@ -6509,1591 +4986,710 @@ } ], "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-combine-extensions": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", - "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", - "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-decode-string": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", - "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-encode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true - }, - "node_modules/micromark-util-html-tag-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", - "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true - }, - "node_modules/micromark-util-normalize-identifier": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", - "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-resolve-all": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", - "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-subtokenize": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", - "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-symbol": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true - }, - "node_modules/micromark-util-types": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", - "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "peer": true - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/napi-postinstall": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.2.4.tgz", - "integrity": "sha512-ZEzHJwBhZ8qQSbknHqYcdtQVr8zUgGyM/q6h6qAyhtyVMNrSgDhrC4disf03dYW0e+czXyLnZINnCTEkWy0eJg==", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "napi-postinstall": "lib/cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/napi-postinstall" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/node-releases": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", - "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/object-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.values": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/oxc-resolver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/oxc-resolver/-/oxc-resolver-5.3.0.tgz", - "integrity": "sha512-FHqtZx0idP5QRPSNcI5g2ItmADg7fhR3XIeWg5eRMGfp44xqRpfkdvo+EX4ZceqV9bxvl0Z8vaqMqY0gYaNYNA==", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/Boshen" - }, - "optionalDependencies": { - "@oxc-resolver/binding-darwin-arm64": "5.3.0", - "@oxc-resolver/binding-darwin-x64": "5.3.0", - "@oxc-resolver/binding-freebsd-x64": "5.3.0", - "@oxc-resolver/binding-linux-arm-gnueabihf": "5.3.0", - "@oxc-resolver/binding-linux-arm64-gnu": "5.3.0", - "@oxc-resolver/binding-linux-arm64-musl": "5.3.0", - "@oxc-resolver/binding-linux-riscv64-gnu": "5.3.0", - "@oxc-resolver/binding-linux-s390x-gnu": "5.3.0", - "@oxc-resolver/binding-linux-x64-gnu": "5.3.0", - "@oxc-resolver/binding-linux-x64-musl": "5.3.0", - "@oxc-resolver/binding-wasm32-wasi": "5.3.0", - "@oxc-resolver/binding-win32-arm64-msvc": "5.3.0", - "@oxc-resolver/binding-win32-x64-msvc": "5.3.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true, - "license": "BlueOak-1.0.0" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true, - "license": "ISC", - "peer": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pirates": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", - "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", - "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/prettier-plugin-packagejson": { - "version": "2.5.10", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.10.tgz", - "integrity": "sha512-LUxATI5YsImIVSaaLJlJ3aE6wTD+nvots18U3GuQMJpUyClChaZlQrqx3dBnbhF20OnKWZyx8EgyZypQtBDtgQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "sort-package-json": "2.15.1", - "synckit": "0.9.2" - }, - "peerDependencies": { - "prettier": ">= 1.16.0" - }, - "peerDependenciesMeta": { - "prettier": { - "optional": true - } + "dependencies": { + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/prettier-plugin-svelte": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-3.3.3.tgz", - "integrity": "sha512-yViK9zqQ+H2qZD1w/bH7W8i+bVfKrD8GIFjkFe4Thl6kCT9SlAsXVNmt3jCvQOCsnOhcvYgsoVlRV/Eu6x5nNw==", + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", + "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true, - "peerDependencies": { - "prettier": "^3.0.0", - "svelte": "^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0" + "dependencies": { + "micromark-util-types": "^2.0.0" } }, - "node_modules/prettier-plugin-tailwindcss": { - "version": "0.6.11", - "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.6.11.tgz", - "integrity": "sha512-YxaYSIvZPAqhrrEpRtonnrXdghZg1irNg4qrjboCXrpybLWVs55cW2N3juhspVJiO0JBvYJT8SYsJpc8OQSnsA==", + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=14.21.3" - }, - "peerDependencies": { - "@ianvs/prettier-plugin-sort-imports": "*", - "@prettier/plugin-pug": "*", - "@shopify/prettier-plugin-liquid": "*", - "@trivago/prettier-plugin-sort-imports": "*", - "@zackad/prettier-plugin-twig": "*", - "prettier": "^3.0", - "prettier-plugin-astro": "*", - "prettier-plugin-css-order": "*", - "prettier-plugin-import-sort": "*", - "prettier-plugin-jsdoc": "*", - "prettier-plugin-marko": "*", - "prettier-plugin-multiline-arrays": "*", - "prettier-plugin-organize-attributes": "*", - "prettier-plugin-organize-imports": "*", - "prettier-plugin-sort-imports": "*", - "prettier-plugin-style-order": "*", - "prettier-plugin-svelte": "*" - }, - "peerDependenciesMeta": { - "@ianvs/prettier-plugin-sort-imports": { - "optional": true - }, - "@prettier/plugin-pug": { - "optional": true - }, - "@shopify/prettier-plugin-liquid": { - "optional": true - }, - "@trivago/prettier-plugin-sort-imports": { - "optional": true - }, - "@zackad/prettier-plugin-twig": { - "optional": true - }, - "prettier-plugin-astro": { - "optional": true - }, - "prettier-plugin-css-order": { - "optional": true - }, - "prettier-plugin-import-sort": { - "optional": true - }, - "prettier-plugin-jsdoc": { - "optional": true - }, - "prettier-plugin-marko": { - "optional": true - }, - "prettier-plugin-multiline-arrays": { - "optional": true - }, - "prettier-plugin-organize-attributes": { - "optional": true - }, - "prettier-plugin-organize-imports": { - "optional": true - }, - "prettier-plugin-sort-imports": { - "optional": true - }, - "prettier-plugin-style-order": { - "optional": true + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, - "prettier-plugin-svelte": { - "optional": true + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "node_modules/micromark-util-subtokenize": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", + "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "node_modules/micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", "dev": true, "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/feross" + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "consulting", - "url": "https://feross.org/support" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } ], - "license": "MIT", - "peer": true + "license": "MIT" }, - "node_modules/refa": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/refa/-/refa-0.12.1.tgz", - "integrity": "sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==", + "node_modules/minimatch": { + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", "dev": true, - "license": "MIT", - "peer": true, + "license": "BlueOak-1.0.0", "dependencies": { - "@eslint-community/regexpp": "^4.8.0" + "brace-expansion": "^5.0.8" }, "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - }, + "license": "BlueOak-1.0.0", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/regexp-ast-analysis": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/regexp-ast-analysis/-/regexp-ast-analysis-0.7.1.tgz", - "integrity": "sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==", + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/napi-postinstall": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", + "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "@eslint-community/regexpp": "^4.8.0", - "refa": "^0.12.1" + "bin": { + "napi-postinstall": "lib/cli.js" }, "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" } }, - "node_modules/regexp-to-ast": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz", - "integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.54", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.54.tgz", + "integrity": "sha512-YHs7BmmcsdAI5Ozuf8JZo6PT0mv2GIWC9vMfvUC3dp65M8hn7Ux8CPL+2oBI7juNuj9d0ndhTcznq2ODBps9cQ==", "dev": true, "license": "MIT", - "peer": true + "engines": { + "node": ">=18" + } }, - "node_modules/regexp-tree": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", - "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "license": "MIT", - "peer": true, - "bin": { - "regexp-tree": "bin/regexp-tree" + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "node_modules/oxc-parser": { + "version": "0.139.0", + "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.139.0.tgz", + "integrity": "sha512-cf1TKZN+zc0lwqigeyXKzKVk5+vNRe99Or2+wVJsXLdlhJgC+gsIniYDfj/ZEBzCJ8Xm21ZG6YtMbR262CcS2w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" + "@oxc-project/types": "^0.139.0" }, "engines": { - "node": ">= 0.4" + "node": "^20.19.0 || >=22.12.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regjsparser": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", - "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", + "url": "https://github.com/sponsors/Boshen" + }, + "optionalDependencies": { + "@oxc-parser/binding-android-arm-eabi": "0.139.0", + "@oxc-parser/binding-android-arm64": "0.139.0", + "@oxc-parser/binding-darwin-arm64": "0.139.0", + "@oxc-parser/binding-darwin-x64": "0.139.0", + "@oxc-parser/binding-freebsd-x64": "0.139.0", + "@oxc-parser/binding-linux-arm-gnueabihf": "0.139.0", + "@oxc-parser/binding-linux-arm-musleabihf": "0.139.0", + "@oxc-parser/binding-linux-arm64-gnu": "0.139.0", + "@oxc-parser/binding-linux-arm64-musl": "0.139.0", + "@oxc-parser/binding-linux-ppc64-gnu": "0.139.0", + "@oxc-parser/binding-linux-riscv64-gnu": "0.139.0", + "@oxc-parser/binding-linux-riscv64-musl": "0.139.0", + "@oxc-parser/binding-linux-s390x-gnu": "0.139.0", + "@oxc-parser/binding-linux-x64-gnu": "0.139.0", + "@oxc-parser/binding-linux-x64-musl": "0.139.0", + "@oxc-parser/binding-openharmony-arm64": "0.139.0", + "@oxc-parser/binding-wasm32-wasi": "0.139.0", + "@oxc-parser/binding-win32-arm64-msvc": "0.139.0", + "@oxc-parser/binding-win32-ia32-msvc": "0.139.0", + "@oxc-parser/binding-win32-x64-msvc": "0.139.0" + } + }, + "node_modules/p-event": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-6.0.1.tgz", + "integrity": "sha512-Q6Bekk5wpzW5qIyUP4gdMEujObYstZl6DMMOSenwBvV0BlE5LkDwkjs5yHbZmdCEq2o4RJx4tE1vwxFVf2FG1w==", "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "license": "MIT", "dependencies": { - "jsesc": "~3.0.2" + "p-timeout": "^6.1.2" }, - "bin": { - "regjsparser": "bin/parser" + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "license": "MIT", - "peer": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve": { - "version": "1.22.10", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", - "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-core-module": "^2.16.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" + "p-limit": "^3.0.2" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/p-timeout": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-6.1.4.tgz", + "integrity": "sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + "engines": { + "node": ">=8" } }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/rimraf": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", - "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", + "node_modules/path-scurry": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz", + "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==", "dev": true, - "license": "ISC", + "license": "BlueOak-1.0.0", "dependencies": { - "glob": "^11.0.0", - "package-json-from-dist": "^1.0.0" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" }, "engines": { - "node": "20 || >=22" + "node": "18 || 20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "queue-microtask": "^1.2.2" - } + "license": "ISC" }, - "node_modules/safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - }, "engines": { - "node": ">=0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4" } }, - "node_modules/safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8.0" } }, - "node_modules/scslre": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/scslre/-/scslre-0.3.0.tgz", - "integrity": "sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==", + "node_modules/prettier": { + "version": "3.9.6", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.9.6.tgz", + "integrity": "sha512-OpN0zzVdiaiAhxpuuj5efpIS4sY9j7bY6uR5mnj5yPzGkdkjNKSJeUThPb60Jw29QuAZgA4o+/iB49kFiaBX6g==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "@eslint-community/regexpp": "^4.8.0", - "refa": "^0.12.0", - "regexp-ast-analysis": "^0.7.0" - }, - "engines": { - "node": "^14.0.0 || >=16.0.0" - } - }, - "node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "dev": true, - "license": "ISC", - "peer": true, "bin": { - "semver": "bin/semver.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10" - } - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" + "node": ">=14" }, - "engines": { - "node": ">= 0.4" + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "node_modules/prettier-plugin-packagejson": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-3.0.2.tgz", + "integrity": "sha512-kmoj3hEynXwoHDo8ZhmWAIjRBoQWCDUVackiWfSDWdgD0rS3LGB61T9zoVbume/cotYdCoadUh4sqViAmXvpBQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" + "sort-package-json": "^3.6.0" }, - "engines": { - "node": ">= 0.4" + "peerDependencies": { + "prettier": "^3" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true + } } }, - "node_modules/set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "node_modules/prettier-plugin-svelte": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-4.1.1.tgz", + "integrity": "sha512-wXvbXMjSvb4C9ENWTHXyd+ihakKCsJ6rJhLP6/8HFNj4GkZr48jqL9PoKsl2sk7SyCZRTnJ7O2TTowUpOxP/KA==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" + "node": ">=20" }, - "engines": { - "node": ">=8" + "peerDependencies": { + "prettier": "^3.0.0", + "svelte": "^5.0.0" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/prettier-plugin-tailwindcss": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.8.1.tgz", + "integrity": "sha512-iaFMYqDsE4ffdDkn5qup0j5f2aCEBFZrdrZnvu9QKTlWx/iGPeQ4HHu7b7fCPMxeo9nwQBiOAh2nSypdFYWJkw==", "dev": true, "license": "MIT", + "peer": true, "engines": { - "node": ">=8" + "node": ">=20.19" + }, + "peerDependencies": { + "@ianvs/prettier-plugin-sort-imports": "*", + "@prettier/plugin-hermes": "*", + "@prettier/plugin-oxc": "*", + "@prettier/plugin-pug": "*", + "@shopify/prettier-plugin-liquid": "*", + "@trivago/prettier-plugin-sort-imports": "*", + "@zackad/prettier-plugin-twig": "*", + "prettier": "^3.0", + "prettier-plugin-astro": "*", + "prettier-plugin-css-order": "*", + "prettier-plugin-jsdoc": "*", + "prettier-plugin-marko": "*", + "prettier-plugin-multiline-arrays": "*", + "prettier-plugin-organize-attributes": "*", + "prettier-plugin-organize-imports": "*", + "prettier-plugin-sort-imports": "*", + "prettier-plugin-svelte": "*" + }, + "peerDependenciesMeta": { + "@ianvs/prettier-plugin-sort-imports": { + "optional": true + }, + "@prettier/plugin-hermes": { + "optional": true + }, + "@prettier/plugin-oxc": { + "optional": true + }, + "@prettier/plugin-pug": { + "optional": true + }, + "@shopify/prettier-plugin-liquid": { + "optional": true + }, + "@trivago/prettier-plugin-sort-imports": { + "optional": true + }, + "@zackad/prettier-plugin-twig": { + "optional": true + }, + "prettier-plugin-astro": { + "optional": true + }, + "prettier-plugin-css-order": { + "optional": true + }, + "prettier-plugin-jsdoc": { + "optional": true + }, + "prettier-plugin-marko": { + "optional": true + }, + "prettier-plugin-multiline-arrays": { + "optional": true + }, + "prettier-plugin-organize-attributes": { + "optional": true + }, + "prettier-plugin-organize-imports": { + "optional": true + }, + "prettier-plugin-sort-imports": { + "optional": true + }, + "prettier-plugin-svelte": { + "optional": true + } } }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "node_modules/quote-js-string": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/quote-js-string/-/quote-js-string-0.1.0.tgz", + "integrity": "sha512-Y3NoRtprEEZQD8RfxMCfS0ZTqc4e+i18OrXEXAvpM6TfC/3y+0L5rNbZiSnbBBEkDfFzbpd8o+cE8q3/anjMGA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, "engines": { - "node": ">= 0.4" + "node": ">=22" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sindresorhus/quote-js-string?sponsor=1" } }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "node_modules/refa": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/refa/-/refa-0.12.1.tgz", + "integrity": "sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" + "@eslint-community/regexpp": "^4.8.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "node_modules/regexp-ast-analysis": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regexp-ast-analysis/-/regexp-ast-analysis-0.7.1.tgz", + "integrity": "sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" + "@eslint-community/regexpp": "^4.8.0", + "refa": "^0.12.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "license": "ISC", "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/sort-object-keys": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz", - "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==", + "node_modules/regexp-to-ast": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz", + "integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, - "node_modules/sort-package-json": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.15.1.tgz", - "integrity": "sha512-9x9+o8krTT2saA9liI4BljNjwAbvUnWf11Wq+i/iZt8nl2UGYnf3TH5uBydE7VALmP7AGwlfszuEeL8BDyb0YA==", + "node_modules/regjsparser": { + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.2.tgz", + "integrity": "sha512-NgRBy2Nx/bE+9F27nVHnqcN5HjyLmecqsqx2PJHu3/IEtADD4WuxuXIVExD5PoSDFVrl78dOonfcOe5O+5nbzQ==", "dev": true, - "license": "MIT", - "peer": true, + "license": "BSD-2-Clause", "dependencies": { - "detect-indent": "^7.0.1", - "detect-newline": "^4.0.0", - "get-stdin": "^9.0.0", - "git-hooks-list": "^3.0.0", - "is-plain-obj": "^4.1.0", - "semver": "^7.6.0", - "sort-object-keys": "^1.1.3", - "tinyglobby": "^0.2.9" + "jsesc": "~3.1.0" }, "bin": { - "sort-package-json": "cli.js" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/stable-hash": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", - "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/stable-hash-x": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/stable-hash-x/-/stable-hash-x-0.1.1.tgz", - "integrity": "sha512-l0x1D6vhnsNUGPFVDx45eif0y6eedVC8nm5uACTrVFJFtl2mLRW17aWtVyxFCpn5t94VUPkjU8vSLwIuwwqtJQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12.0.0" + "regjsparser": "bin/parser" } }, - "node_modules/stop-iteration-iterator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", - "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "es-errors": "^1.3.0", - "internal-slot": "^1.1.0" - }, "engines": { - "node": ">= 0.4" + "node": ">=0.10.0" } }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "node_modules/reserved-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/reserved-identifiers/-/reserved-identifiers-1.2.0.tgz", + "integrity": "sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==", "dev": true, "license": "MIT", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", "dev": true, "license": "MIT", - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, - "node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/scslre": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/scslre/-/scslre-0.3.0.tgz", + "integrity": "sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "@eslint-community/regexpp": "^4.8.0", + "refa": "^0.12.0", + "regexp-ast-analysis": "^0.7.0" }, "engines": { - "node": ">=8" + "node": "^14.0.0 || >=16.0.0" } }, - "node_modules/string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10" } }, - "node_modules/string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" + "shebang-regex": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "node_modules/sort-object-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-2.1.0.tgz", + "integrity": "sha512-SOiEnthkJKPv2L6ec6HMwhUcN0/lppkeYuN1x63PbyPRrgSPIuBJCiYxYyvWRTtjMlOi14vQUCGUJqS6PLVm8g==", "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } + "license": "MIT" }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/sort-package-json": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-3.7.1.tgz", + "integrity": "sha512-ssk1HG7whF8N/T1IsNAQrtHG5Cbdi0rAgRJZXYBr9hF5xaHnBNzUx/W6LcthEW7FhOwvZssbESZuO+GxssqAyA==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "detect-indent": "^7.0.2", + "detect-newline": "^4.0.1", + "git-hooks-list": "^4.1.1", + "is-plain-obj": "^4.1.0", + "semver": "^7.7.3", + "sort-object-keys": "^2.0.1", + "tinyglobby": "^0.2.15" + }, + "bin": { + "sort-package-json": "cli.js" }, "engines": { - "node": ">=8" + "node": ">=20" } }, - "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "node_modules/stable-hash-x": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/stable-hash-x/-/stable-hash-x-0.2.0.tgz", + "integrity": "sha512-o3yWv49B/o4QZk5ZcsALc6t0+eCelPc44zZsLtCQnZPDwFpDYSWcDnrv2TtMmMbQ7uKo3J0HTURCqckw23czNQ==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">=12.0.0" } }, "node_modules/strip-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", - "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.1.1.tgz", + "integrity": "sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "min-indent": "^1.0.1" - }, "engines": { "node": ">=12" }, @@ -8101,66 +5697,44 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/super-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/super-regex/-/super-regex-1.1.0.tgz", + "integrity": "sha512-WHkws2ZflZe41zj6AolvvmaTrWds/VuyeYr9iPVv/oQeaIoVxMKaushfFWpOGDT+GuBrM/sVqF8KUCYQlSSTdQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "function-timeout": "^1.0.1", + "make-asynchronous": "^1.0.1", + "time-span": "^5.1.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" + "node": ">=18" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/svelte": { - "version": "5.33.18", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.33.18.tgz", - "integrity": "sha512-GVAhi8vi8pGne/wlEdnfWIJvSR9eKvEknxjfL5Sr8gQALiyk8Ey+H0lhUYLpjW+MrqgH9h4dgh2NF6/BTFprRg==", + "version": "5.56.10", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.56.10.tgz", + "integrity": "sha512-Lcxbj8I/KAbpY+VjtY4ENQBV0dDCipfGAhqb51XQZ67CIQqXgsv/8dPkbILaj4Fb6/b6JAEM/PIVbILXgDQy2g==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@ampproject/remapping": "^2.3.0", + "@jridgewell/remapping": "^2.3.4", "@jridgewell/sourcemap-codec": "^1.5.0", - "@sveltejs/acorn-typescript": "^1.0.5", + "@sveltejs/acorn-typescript": "^1.0.10", "@types/estree": "^1.0.5", + "@types/trusted-types": "^2.0.7", "acorn": "^8.12.1", - "aria-query": "^5.3.1", + "aria-query": "5.3.1", "axobject-query": "^4.1.0", "clsx": "^2.1.1", + "devalue": "^5.8.1", "esm-env": "^1.2.1", - "esrap": "^1.4.8", + "esrap": "^2.2.12", "is-reference": "^3.0.3", "locate-character": "^3.0.0", "magic-string": "^0.30.11", @@ -8170,104 +5744,59 @@ "node": ">=18" } }, - "node_modules/synckit": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, "node_modules/tapable": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", - "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/tinyglobby": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", - "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fdir": "^6.4.4", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.4.5", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", - "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", - "dev": true, - "license": "MIT", - "peer": true, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "node_modules/time-span": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/time-span/-/time-span-5.1.0.tgz", + "integrity": "sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "convert-hrtime": "^5.0.0" + }, "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-number": "^7.0.0" + "fdir": "^6.5.0", + "picomatch": "^4.0.4" }, "engines": { - "node": ">=8.0" + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" } }, "node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=18.12" }, @@ -8275,27 +5804,13 @@ "typescript": ">=4.8.4" } }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, "node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true, "license": "0BSD", - "peer": true + "optional": true }, "node_modules/type-check": { "version": "0.4.0", @@ -8303,7 +5818,6 @@ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "prelude-ls": "^1.2.1" }, @@ -8311,92 +5825,23 @@ "node": ">= 0.8.0" } }, - "node_modules/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "node_modules/type-fest": { + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - }, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">= 0.4" + "node": ">=16" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, "license": "Apache-2.0", "peer": true, @@ -8409,16 +5854,16 @@ } }, "node_modules/typescript-eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.33.0.tgz", - "integrity": "sha512-5YmNhF24ylCsvdNW2oJwMzTbaeO4bg90KeGtMjUw0AGtHksgEPLRTUil+coHwCfiu4QjVJFnjp94DmU6zV7DhQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.67.0.tgz", + "integrity": "sha512-S2udFs8tCKEKffuJ4TB1idGUZiXdCPGi3IPBGWXarbLQ5UPXORV8QEVzJ4gCRduURMb5EkpNCdjbk0eDIuI8Yg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/eslint-plugin": "8.33.0", - "@typescript-eslint/parser": "8.33.0", - "@typescript-eslint/utils": "8.33.0" + "@typescript-eslint/eslint-plugin": "8.67.0", + "@typescript-eslint/parser": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0", + "@typescript-eslint/utils": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -8428,21 +5873,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/project-service": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.33.0.tgz", - "integrity": "sha512-d1hz0u9l6N+u/gcrk6s6gYdl7/+pp8yHheRTqP6X5hVDKALEaTn8WfGiit7G511yueBEL3OpOEpD+3/MBdoN+A==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.67.0.tgz", + "integrity": "sha512-cvE8c7ulYeXN9fYuszhCeCsbzyVEXuhrRCybnBre7TUmqb5nRmBfQAwCj0O3WJFDeyAZt4VYv51vMCC9LHSdYw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.33.0", - "@typescript-eslint/types": "^8.33.0", - "debug": "^4.3.4" + "@typescript-eslint/tsconfig-utils": "^8.67.0", + "@typescript-eslint/types": "^8.67.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -8450,18 +5894,20 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/scope-manager": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.33.0.tgz", - "integrity": "sha512-LMi/oqrzpqxyO72ltP+dBSP6V0xiUb4saY7WLtxSfiNEBI8m321LLVFU9/QDJxjDQG9/tjSqKz/E3380TEqSTw==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.67.0.tgz", + "integrity": "sha512-EgvsleTwS4E+WzzSvem8fAUubLwatMNF1B5hHSLQxcvs7q2dtRhGyujHwLJSYlG41niJ7GP24Aha2+0mb1b2kg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0" + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -8472,12 +5918,11 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.33.0.tgz", - "integrity": "sha512-sTkETlbqhEoiFmGr1gsdq5HyVbSOF0145SYDJ/EQmXHtKViCaGvnyLqWFFHtEXoS0J1yU8Wyou2UGmgW88fEug==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.67.0.tgz", + "integrity": "sha512-vV+LUSv5njUWsknE71fqKTlXUva+R76SaeORd6Zojcunk/6DvKFXONU3BrAs2H49mbygUXt6gbYunzwqNwlhdg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -8486,16 +5931,15 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/types": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.0.tgz", - "integrity": "sha512-DKuXOKpM5IDT1FA2g9x9x1Ug81YuKrzf4mYX8FAVSNu5Wo/LELHWQyM1pQaDkI42bX15PWl0vNPt1uGiIFUOpg==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.67.0.tgz", + "integrity": "sha512-sBtgslww8nsMYUjhdPBiSyUqSzT8uR6g93A2QXnQC8+cGdjz0CyaOdqHDRJb1AtORbZCNUJBBeFA/tNR2uQmww==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -8505,23 +5949,21 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.33.0.tgz", - "integrity": "sha512-vegY4FQoB6jL97Tu/lWRsAiUUp8qJTqzAmENH2k59SJhw0Th1oszb9Idq/FyyONLuNqT1OADJPXfyUNOR8SzAQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.67.0.tgz", + "integrity": "sha512-EKQBCE9yNlRJYm7jdTW5AhDacDUmSwQb0FAJAmK2EKYrNXIsa2vxcSZx6PvJ/dEdI6lS+Y9W+EXckLj0iPFGcw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/project-service": "8.33.0", - "@typescript-eslint/tsconfig-utils": "8.33.0", - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/visitor-keys": "8.33.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/project-service": "8.67.0", + "@typescript-eslint/tsconfig-utils": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -8531,21 +5973,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/utils": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.33.0.tgz", - "integrity": "sha512-lPFuQaLA9aSNa7D5u2EpRiqdAUhzShwGg/nhpBlc4GR6kcTABttCuyjFs8BcEZ8VWrjCBof/bePhP3Q3fS+Yrw==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.67.0.tgz", + "integrity": "sha512-U9D1FdwEWBwok3hxxSdhclMb0twvt9QnjIQ0VfQ1AiX2epnpSgv2ubVDsayOFyY8K6FX+AQ7E0FKWVG3iKsj1A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.33.0", - "@typescript-eslint/types": "8.33.0", - "@typescript-eslint/typescript-estree": "8.33.0" + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -8555,20 +5996,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.33.0.tgz", - "integrity": "sha512-7RW7CMYoskiz5OOGAWjJFxgb7c5UNjTG292gYhWeOAcFmYCtVCSqjqSBj5zMhxbXo2JOW95YYrUWJfU0zrpaGQ==", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.67.0.tgz", + "integrity": "sha512-fkv8dHRDqfGtTHuJeebdrQ7cX6Ad4WAS00rgHh9UGvMycF1mjBfsxry1XsLIFhWZ6Judlh6UdzK+TYlbpCXgnA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@typescript-eslint/types": "8.33.0", - "eslint-visitor-keys": "^4.2.0" + "@typescript-eslint/types": "8.67.0", + "eslint-visitor-keys": "^5.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -8578,85 +6018,59 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/typescript-eslint/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/typescript-eslint/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { "url": "https://opencollective.com/eslint" } }, - "node_modules/typescript-eslint/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "node_modules/undici": { + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.28.0.tgz", + "integrity": "sha512-LIY910g9TI13YS95lrMFrs8Rm/u/irgHeTWoKCoteeJ04CUJ92eEfj0rVn+7VKMPBpUPiUoBKfhNyLI23EE/KA==", "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, + "license": "MIT", "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=18.17" } }, - "node_modules/unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "node_modules/undici-types": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-8.3.0.tgz", + "integrity": "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/unist-util-is": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz", + "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/unist-util-remove-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", + "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/unist": "^3.0.0" + "@types/unist": "^3.0.0", + "unist-util-visit": "^5.0.0" }, "funding": { "type": "opencollective", @@ -8669,7 +6083,6 @@ "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/unist": "^3.0.0" }, @@ -8679,12 +6092,11 @@ } }, "node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0", @@ -8696,12 +6108,11 @@ } }, "node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", + "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0" @@ -8712,43 +6123,47 @@ } }, "node_modules/unrs-resolver": { - "version": "1.7.12", - "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.7.12.tgz", - "integrity": "sha512-pfcdDxrVoUc5ZB3VCVJNSWbs63lgQVYLVw4k/rCr8Smi/V2Sxi1odEckVq6Zf803OtbYia1+YpiGCZoODfWLsQ==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.12.2.tgz", + "integrity": "sha512-dmlRxBJJayXjqTwC+JtF1HhJmgf3ftQ3YejFcZrf4+KKtJv0qDsK1pjqaaVjG7wJ5NJ6UVP1OqRMQ71Z4C3rxQ==", "dev": true, "hasInstallScript": true, "license": "MIT", - "peer": true, "dependencies": { - "napi-postinstall": "^0.2.2" + "napi-postinstall": "^0.3.4" }, "funding": { "url": "https://opencollective.com/unrs-resolver" }, "optionalDependencies": { - "@unrs/resolver-binding-darwin-arm64": "1.7.12", - "@unrs/resolver-binding-darwin-x64": "1.7.12", - "@unrs/resolver-binding-freebsd-x64": "1.7.12", - "@unrs/resolver-binding-linux-arm-gnueabihf": "1.7.12", - "@unrs/resolver-binding-linux-arm-musleabihf": "1.7.12", - "@unrs/resolver-binding-linux-arm64-gnu": "1.7.12", - "@unrs/resolver-binding-linux-arm64-musl": "1.7.12", - "@unrs/resolver-binding-linux-ppc64-gnu": "1.7.12", - "@unrs/resolver-binding-linux-riscv64-gnu": "1.7.12", - "@unrs/resolver-binding-linux-riscv64-musl": "1.7.12", - "@unrs/resolver-binding-linux-s390x-gnu": "1.7.12", - "@unrs/resolver-binding-linux-x64-gnu": "1.7.12", - "@unrs/resolver-binding-linux-x64-musl": "1.7.12", - "@unrs/resolver-binding-wasm32-wasi": "1.7.12", - "@unrs/resolver-binding-win32-arm64-msvc": "1.7.12", - "@unrs/resolver-binding-win32-ia32-msvc": "1.7.12", - "@unrs/resolver-binding-win32-x64-msvc": "1.7.12" + "@unrs/resolver-binding-android-arm-eabi": "1.12.2", + "@unrs/resolver-binding-android-arm64": "1.12.2", + "@unrs/resolver-binding-darwin-arm64": "1.12.2", + "@unrs/resolver-binding-darwin-x64": "1.12.2", + "@unrs/resolver-binding-freebsd-x64": "1.12.2", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.12.2", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.12.2", + "@unrs/resolver-binding-linux-arm64-gnu": "1.12.2", + "@unrs/resolver-binding-linux-arm64-musl": "1.12.2", + "@unrs/resolver-binding-linux-loong64-gnu": "1.12.2", + "@unrs/resolver-binding-linux-loong64-musl": "1.12.2", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.12.2", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.12.2", + "@unrs/resolver-binding-linux-riscv64-musl": "1.12.2", + "@unrs/resolver-binding-linux-s390x-gnu": "1.12.2", + "@unrs/resolver-binding-linux-x64-gnu": "1.12.2", + "@unrs/resolver-binding-linux-x64-musl": "1.12.2", + "@unrs/resolver-binding-openharmony-arm64": "1.12.2", + "@unrs/resolver-binding-wasm32-wasi": "1.12.2", + "@unrs/resolver-binding-win32-arm64-msvc": "1.12.2", + "@unrs/resolver-binding-win32-ia32-msvc": "1.12.2", + "@unrs/resolver-binding-win32-x64-msvc": "1.12.2" } }, "node_modules/update-browserslist-db": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", - "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.2.tgz", + "integrity": "sha512-UQ+MSxlhRm1bzjhU+DcuXfjFO1FzNtqhK5+9Yvlp90ItDLk5vT932A0rFu619nf7RVS+Y/VeaUW1jaRDqZ8VJw==", "dev": true, "funding": [ { @@ -8765,7 +6180,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "escalade": "^3.2.0", "picocolors": "^1.1.1" @@ -8783,11 +6197,17 @@ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { "punycode": "^2.1.0" } }, + "node_modules/web-worker": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.5.0.tgz", + "integrity": "sha512-RiMReJrTAiA+mBjGONMnjVDP2u3p9R1vkcGz6gDIrOMT3oGuYwX2WRMYI9ipkphSuE5XKEhydbhNEJh4NY9mlw==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -8804,235 +6224,60 @@ "node": ">= 8" } }, - "node_modules/which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "for-each": "^0.3.5", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "node_modules/yaml": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz", + "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==", "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" + "license": "ISC", + "bin": { + "yaml": "bin.mjs" }, "engines": { - "node": ">=12" + "node": ">= 14.6" }, "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "url": "https://github.com/sponsors/eemeli" } }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "node_modules/yaml-eslint-parser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-2.1.0.tgz", + "integrity": "sha512-1zo9KRfp6vIAXBEhWAz09ex3hUwh3T+/6dGbGteHvNseA0Uk4FgQnPES55klZ6cDzSy9FpgKS0D/CoLUvCCj4w==", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "eslint-visitor-keys": "^5.0.0", + "yaml": "^2.0.0" }, "engines": { - "node": ">=10" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "url": "https://github.com/sponsors/ota-meshi" } }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "node_modules/yaml-eslint-parser/node_modules/eslint-visitor-keys": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/yaml": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", - "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - } - }, - "node_modules/yaml-eslint-parser": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.3.0.tgz", - "integrity": "sha512-E/+VitOorXSLiAqtTd7Yqax0/pAS3xaYMP+AUUJGOK1OZG3rhcj9fcJOM5HJ2VrP1FrStVCWr1muTfQCdj4tAA==", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "eslint-visitor-keys": "^3.0.0", - "yaml": "^2.0.0" - }, + "license": "Apache-2.0", "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": "^20.19.0 || ^22.13.0 || >=24" }, "funding": { - "url": "https://github.com/sponsors/ota-meshi" + "url": "https://opencollective.com/eslint" } }, "node_modules/yocto-queue": { @@ -9041,7 +6286,6 @@ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=10" }, @@ -9050,12 +6294,11 @@ } }, "node_modules/zimmerframe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/zimmerframe/-/zimmerframe-1.1.2.tgz", - "integrity": "sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/zimmerframe/-/zimmerframe-1.1.4.tgz", + "integrity": "sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/zwitch": { "version": "2.0.4", @@ -9063,7 +6306,6 @@ "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", "dev": true, "license": "MIT", - "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" diff --git a/package.json b/package.json index 03e3356..acaa2bb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@checkdigit/time", - "version": "5.0.0", + "version": "6.0.0", "description": "Standard time handling", "homepage": "https://github.com/checkdigit/time#readme", "bugs": { @@ -34,31 +34,29 @@ "SECURITY.md" ], "scripts": { - "build:dist-mjs": "rimraf dist-mjs && npx builder --type=module --sourceMap --outDir=dist-mjs && node dist-mjs/index.mjs", - "build:dist-types": "rimraf dist-types && npx builder --type=types --outDir=dist-types", + "build:dist-mjs": "node -e \"require('node:fs').rmSync('dist-mjs', { recursive: true, force: true })\" && npx builder --type=module --sourceMap --outDir=dist-mjs && node dist-mjs/index.mjs", + "build:dist-types": "node -e \"require('node:fs').rmSync('dist-types', { recursive: true, force: true })\" && npx builder --type=types --outDir=dist-types", "ci:compile": "tsc --noEmit", - "ci:coverage": "rimraf coverage && mkdir coverage && node --disable-warning ExperimentalWarning --experimental-strip-types --test-timeout 600000 --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test \"src/**/*.spec.ts\"", + "ci:coverage": "node -e \"const fs = require('node:fs'); fs.rmSync('coverage', { recursive: true, force: true }); fs.mkdirSync('coverage')\" && node --test-timeout 600000 --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test \"src/**/*.spec.ts\"", "ci:lint": "npm run lint", "ci:style": "npm run prettier", - "ci:test": "node --disable-warning ExperimentalWarning --experimental-strip-types --test-timeout 600000 --test \"src/**/*.spec.ts\"", - "clean": "npm cache verify && rimraf coverage node_modules", - "coverage": "node --disable-warning ExperimentalWarning --experimental-strip-types --test-timeout 600000 --experimental-test-coverage --test \"src/**/*.spec.ts\"", + "ci:test": "node --pending-deprecation --throw-deprecation --test-timeout 600000 --test \"src/**/*.spec.ts\"", + "clean": "npm cache verify && node -e \"const fs = require('node:fs'); for (const path of ['coverage', 'node_modules']) fs.rmSync(path, { recursive: true, force: true })\"", + "coverage": "node --test-timeout 600000 --experimental-test-coverage --test \"src/**/*.spec.ts\"", "lint": "eslint --max-warnings 0 .", "lint:fix": "eslint . --fix", - "prepare": "", "prepublishOnly": "npm run build:dist-types && npm run build:dist-mjs", - "prettier": "prettier --ignore-path .gitignore --list-different .", - "prettier:fix": "prettier --ignore-path .gitignore --write .", + "prettier": "prettier . --check", + "prettier:fix": "prettier . --write", "test": "npm run ci:compile && npm run ci:test && npm run ci:lint && npm run ci:style" }, "prettier": "@checkdigit/prettier-config", "devDependencies": { - "@checkdigit/eslint-config": "^11.2.7", - "@checkdigit/prettier-config": "^6.3.0", - "@checkdigit/typescript-config": "^9.1.1", - "rimraf": "^6.0.1" + "@checkdigit/eslint-config": "^12.1.0", + "@checkdigit/prettier-config": "^8.1.1", + "@checkdigit/typescript-config": "^10.2.1" }, "engines": { - "node": ">=22.15" + "node": ">=24.18.0" } } diff --git a/src/date-fns-tz.spec.ts b/src/date-fns-tz.spec.ts index c8ad76e..81c76f6 100644 --- a/src/date-fns-tz.spec.ts +++ b/src/date-fns-tz.spec.ts @@ -10,15 +10,23 @@ describe('date-fns-tz', () => { it('tzFormat works', () => { assert.equal( - tzFormat(tzUtcToZonedTime(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'UTC'), 'yyyy-MM-dd', { - timeZone: 'UTC', - }), + tzFormat( + tzUtcToZonedTime(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'UTC'), + 'yyyy-MM-dd', + { + timeZone: 'UTC', + }, + ), '2022-09-13', ); assert.equal( - tzFormat(tzUtcToZonedTime(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'UTC'), 'yyyy-MM-dd-hh-mm-ss', { - timeZone: 'UTC', - }), + tzFormat( + tzUtcToZonedTime(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'UTC'), + 'yyyy-MM-dd-hh-mm-ss', + { + timeZone: 'UTC', + }, + ), '2022-09-13-05-38-00', ); }); diff --git a/src/date-fns-tz/_lib/getTimezoneOffsetInMilliseconds/index.ts b/src/date-fns-tz/_lib/getTimezoneOffsetInMilliseconds/index.ts index c73deaf..7412aa8 100644 --- a/src/date-fns-tz/_lib/getTimezoneOffsetInMilliseconds/index.ts +++ b/src/date-fns-tz/_lib/getTimezoneOffsetInMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns-tz/_lib/newDateUTC/index.ts b/src/date-fns-tz/_lib/newDateUTC/index.ts index a2188f9..3afeed4 100644 --- a/src/date-fns-tz/_lib/newDateUTC/index.ts +++ b/src/date-fns-tz/_lib/newDateUTC/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns-tz/_lib/tzIntlTimeZoneName/index.ts b/src/date-fns-tz/_lib/tzIntlTimeZoneName/index.ts index 798b157..4311892 100644 --- a/src/date-fns-tz/_lib/tzIntlTimeZoneName/index.ts +++ b/src/date-fns-tz/_lib/tzIntlTimeZoneName/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -16,11 +15,20 @@ export function tzIntlTimeZoneName( options: FormatOptionsWithTZ, ): string | undefined { const defaultOptions = getDefaultOptions(); - const dtf = getDTF(length, options.timeZone, options.locale ?? defaultOptions.locale); - return 'formatToParts' in dtf ? partsTimeZone(dtf, date) : hackyTimeZone(dtf, date); + const dtf = getDTF( + length, + options.timeZone, + options.locale ?? defaultOptions.locale, + ); + return 'formatToParts' in dtf + ? partsTimeZone(dtf, date) + : hackyTimeZone(dtf, date); } -function partsTimeZone(dtf: Intl.DateTimeFormat, date: Date): string | undefined { +function partsTimeZone( + dtf: Intl.DateTimeFormat, + date: Date, +): string | undefined { const formatted = dtf.formatToParts(date); for (let i = formatted.length - 1; i >= 0; --i) { diff --git a/src/date-fns-tz/_lib/tzParseTimezone/index.ts b/src/date-fns-tz/_lib/tzParseTimezone/index.ts index 48697a8..e08a551 100644 --- a/src/date-fns-tz/_lib/tzParseTimezone/index.ts +++ b/src/date-fns-tz/_lib/tzParseTimezone/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -57,7 +56,8 @@ export function tzParseTimezone( return NaN; } - absoluteOffset = Math.abs(hours) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE; + absoluteOffset = + Math.abs(hours) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE; return token[1] === '+' ? -absoluteOffset : absoluteOffset; } @@ -68,7 +68,9 @@ export function tzParseTimezone( const offset = calcOffset(utcDate, timezoneString); - const fixedOffset = isUtcDate ? offset : fixOffset(date, offset, timezoneString); + const fixedOffset = isUtcDate + ? offset + : fixOffset(date, offset, timezoneString); return -fixedOffset; } @@ -92,7 +94,15 @@ function calcOffset(date: Date, timezoneString: string) { const tokens = tzTokenizeDate(date, timezoneString); // ms dropped because it's not provided by tzTokenizeDate - const asUTC = newDateUTC(tokens[0], tokens[1] - 1, tokens[2], tokens[3] % 24, tokens[4], tokens[5], 0).getTime(); + const asUTC = newDateUTC( + tokens[0], + tokens[1] - 1, + tokens[2], + tokens[3] % 24, + tokens[4], + tokens[5], + 0, + ).getTime(); let asTS = date.getTime(); const over = asTS % 1000; @@ -128,7 +138,11 @@ function fixOffset(date: Date, offset: number, timezoneString: string) { } function validateTimezone(hours: number, minutes?: number | null) { - return -23 <= hours && hours <= 23 && (minutes == null || (0 <= minutes && minutes <= 59)); + return ( + -23 <= hours && + hours <= 23 && + (minutes == null || (0 <= minutes && minutes <= 59)) + ); } const validIANATimezoneCache: Record = {}; diff --git a/src/date-fns-tz/_lib/tzPattern/index.ts b/src/date-fns-tz/_lib/tzPattern/index.ts index 2cd34a2..59222ca 100644 --- a/src/date-fns-tz/_lib/tzPattern/index.ts +++ b/src/date-fns-tz/_lib/tzPattern/index.ts @@ -1,8 +1,8 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck /** Regex to identify the presence of a time zone specifier in a date string */ -export const tzPattern: RegExp = /(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/; +export const tzPattern: RegExp = + /(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/; /* eslint-enable */ diff --git a/src/date-fns-tz/_lib/tzTokenizeDate/index.ts b/src/date-fns-tz/_lib/tzTokenizeDate/index.ts index 21cad79..84c9dbc 100644 --- a/src/date-fns-tz/_lib/tzTokenizeDate/index.ts +++ b/src/date-fns-tz/_lib/tzTokenizeDate/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,10 +7,14 @@ */ export function tzTokenizeDate(date: Date, timeZone: string): number[] { const dtf = getDateTimeFormat(timeZone); - return 'formatToParts' in dtf ? partsOffset(dtf, date) : hackyOffset(dtf, date); + return 'formatToParts' in dtf + ? partsOffset(dtf, date) + : hackyOffset(dtf, date); } -const typeToPos: { [type in keyof Intl.DateTimeFormatPartTypesRegistry]?: number } = { +const typeToPos: { + [type in keyof Intl.DateTimeFormatPartTypesRegistry]?: number; +} = { year: 0, month: 1, day: 2, @@ -72,7 +75,8 @@ const testDateFormatted = new Intl.DateTimeFormat('en-US', { second: '2-digit', }).format(new Date('2014-06-25T04:00:00.123Z')); const hourCycleSupported = - testDateFormatted === '06/25/2014, 00:00:00' || testDateFormatted === '‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00'; + testDateFormatted === '06/25/2014, 00:00:00' || + testDateFormatted === '‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00'; function getDateTimeFormat(timeZone: string) { if (!dtfCache[timeZone]) { diff --git a/src/date-fns-tz/format/formatters/index.ts b/src/date-fns-tz/format/formatters/index.ts index 735b079..d2f36bf 100644 --- a/src/date-fns-tz/format/formatters/index.ts +++ b/src/date-fns-tz/format/formatters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,11 @@ const MILLISECONDS_IN_MINUTE = 60 * 1000; export const formatters: Record< string, - (date: Date, token: string, options: FormatOptionsWithTZ) => string | undefined + ( + date: Date, + token: string, + options: FormatOptionsWithTZ, + ) => string | undefined > = { // Timezone (ISO-8601. If offset is 0, output is always `'Z'`) X: function (date, token, options) { diff --git a/src/date-fns-tz/format/index.ts b/src/date-fns-tz/format/index.ts index 6fb4ff9..6ec7bc1 100644 --- a/src/date-fns-tz/format/index.ts +++ b/src/date-fns-tz/format/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -320,7 +319,11 @@ const tzFormattingTokensRegExp = /([xXOz]+)|''|'(''|[^'])+('|$)/g; * const result = format(new Date(2014, 6, 2, 15), "h 'o''clock'") * //=> "3 o'clock" */ -export function format(date: Date | string | number, formatStr: string, options: FormatOptionsWithTZ = {}): string { +export function format( + date: Date | string | number, + formatStr: string, + options: FormatOptionsWithTZ = {}, +): string { formatStr = String(formatStr); const matches = formatStr.match(tzFormattingTokensRegExp); @@ -334,10 +337,15 @@ export function format(date: Date | string | number, formatStr: string, options: } const pos = result.indexOf(token); const precededByQuotedSection = result[pos - 1] === "'"; - const replaced = result.replace(token, "'" + formatters[token[0]](d, token, options) + "'"); + const replaced = result.replace( + token, + "'" + formatters[token[0]](d, token, options) + "'", + ); // If the replacement results in two adjoining quoted strings, the back to back quotes // are removed, so it doesn't look like an escaped quote. - return precededByQuotedSection ? replaced.substring(0, pos - 1) + replaced.substring(pos + 1) : replaced; + return precededByQuotedSection + ? replaced.substring(0, pos - 1) + replaced.substring(pos + 1) + : replaced; }, formatStr); } diff --git a/src/date-fns-tz/formatInTimeZone/index.ts b/src/date-fns-tz/formatInTimeZone/index.ts index c9d97aa..8f8edf3 100644 --- a/src/date-fns-tz/formatInTimeZone/index.ts +++ b/src/date-fns-tz/formatInTimeZone/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -38,7 +37,11 @@ export function formatInTimeZone( timeZone, originalDate: date, }; - return format(toZonedTime(date, timeZone, { timeZone: options.timeZone }), formatStr, options); + return format( + toZonedTime(date, timeZone, { timeZone: options.timeZone }), + formatStr, + options, + ); } /* eslint-enable */ diff --git a/src/date-fns-tz/fromZonedTime/index.ts b/src/date-fns-tz/fromZonedTime/index.ts index 742706b..f9a0e2c 100644 --- a/src/date-fns-tz/fromZonedTime/index.ts +++ b/src/date-fns-tz/fromZonedTime/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,7 +30,11 @@ import type { ToDateOptionsWithTZ } from '../index.ts'; * const result = fromZonedTime(new Date(2014, 5, 25, 10, 0, 0), 'America/Los_Angeles') * //=> 2014-06-25T17:00:00.000Z */ -export function fromZonedTime(date: Date | string | number, timeZone: string, options?: ToDateOptionsWithTZ): Date { +export function fromZonedTime( + date: Date | string | number, + timeZone: string, + options?: ToDateOptionsWithTZ, +): Date { if (typeof date === 'string' && !date.match(tzPattern)) { return toDate(date, { ...options, timeZone }); } diff --git a/src/date-fns-tz/getTimezoneOffset/index.ts b/src/date-fns-tz/getTimezoneOffset/index.ts index b7ca8e1..37cfa48 100644 --- a/src/date-fns-tz/getTimezoneOffset/index.ts +++ b/src/date-fns-tz/getTimezoneOffset/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -30,7 +29,10 @@ import { tzParseTimezone } from '../_lib/tzParseTimezone/index.ts'; * const result = getTimezoneOffset('America/New_York', new Date(2016, 6, 1)) * //=> -14400000 (-4 * 60 * 60 * 1000) */ -export function getTimezoneOffset(timeZone: string, date?: Date | number): number { +export function getTimezoneOffset( + timeZone: string, + date?: Date | number, +): number { return -tzParseTimezone(timeZone, date); } diff --git a/src/date-fns-tz/index.ts b/src/date-fns-tz/index.ts index e9b7b4e..1dbf49e 100644 --- a/src/date-fns-tz/index.ts +++ b/src/date-fns-tz/index.ts @@ -1,8 +1,11 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck -import type { FormatOptions, ParseISOOptions, Locale } from '../date-fns/index.ts'; +import type { + FormatOptions, + ParseISOOptions, + Locale, +} from '../date-fns/index.ts'; export interface FormatOptionsWithTZ extends Omit { locale?: FormatOptions['locale'] & Pick; diff --git a/src/date-fns-tz/toDate/index.ts b/src/date-fns-tz/toDate/index.ts index 7502c1b..6d4094a 100644 --- a/src/date-fns-tz/toDate/index.ts +++ b/src/date-fns-tz/toDate/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -87,9 +86,14 @@ const patterns = { * const result = toDate('+02014101', {additionalDigits: 1}) * //=> Fri Apr 11 2014 00:00:00 */ -export function toDate(argument: Date | string | number, options: ToDateOptionsWithTZ = {}): Date { +export function toDate( + argument: Date | string | number, + options: ToDateOptionsWithTZ = {}, +): Date { if (arguments.length < 1) { - throw new TypeError('1 argument required, but only ' + arguments.length + ' present'); + throw new TypeError( + '1 argument required, but only ' + arguments.length + ' present', + ); } if (argument === null) { @@ -97,27 +101,42 @@ export function toDate(argument: Date | string | number, options: ToDateOptionsW } const additionalDigits = - options.additionalDigits == null ? DEFAULT_ADDITIONAL_DIGITS : Number(options.additionalDigits); - if (additionalDigits !== 2 && additionalDigits !== 1 && additionalDigits !== 0) { + options.additionalDigits == null + ? DEFAULT_ADDITIONAL_DIGITS + : Number(options.additionalDigits); + if ( + additionalDigits !== 2 && + additionalDigits !== 1 && + additionalDigits !== 0 + ) { throw new RangeError('additionalDigits must be 0, 1 or 2'); } // Clone the date if ( argument instanceof Date || - (typeof argument === 'object' && Object.prototype.toString.call(argument) === '[object Date]') + (typeof argument === 'object' && + Object.prototype.toString.call(argument) === '[object Date]') ) { // Prevent the date to lose the milliseconds when passed to new Date() in IE10 return new Date(argument.getTime()); - } else if (typeof argument === 'number' || Object.prototype.toString.call(argument) === '[object Number]') { + } else if ( + typeof argument === 'number' || + Object.prototype.toString.call(argument) === '[object Number]' + ) { return new Date(argument); - } else if (!(Object.prototype.toString.call(argument) === '[object String]')) { + } else if ( + !(Object.prototype.toString.call(argument) === '[object String]') + ) { return new Date(NaN); } const dateStrings = splitDateString(argument); - const { year, restDateString } = parseYear(dateStrings.date, additionalDigits); + const { year, restDateString } = parseYear( + dateStrings.date, + additionalDigits, + ); const date = parseDate(restDateString, year); @@ -139,14 +158,19 @@ export function toDate(argument: Date | string | number, options: ToDateOptionsW } if (dateStrings.timeZone || options.timeZone) { - offset = tzParseTimezone(dateStrings.timeZone || options.timeZone, new Date(timestamp + time)); + offset = tzParseTimezone( + dateStrings.timeZone || options.timeZone, + new Date(timestamp + time), + ); if (isNaN(offset)) { return new Date(NaN); } } else { // get offset accurate to hour in time zones that change offset offset = getTimezoneOffsetInMilliseconds(new Date(timestamp + time)); - offset = getTimezoneOffsetInMilliseconds(new Date(timestamp + time + offset)); + offset = getTimezoneOffsetInMilliseconds( + new Date(timestamp + time + offset), + ); } return new Date(timestamp + time + offset); @@ -156,7 +180,11 @@ export function toDate(argument: Date | string | number, options: ToDateOptionsW } function splitDateString(dateString: string) { - const dateStrings: { date?: string | null; time?: string; timeZone?: string } = {}; + const dateStrings: { + date?: string | null; + time?: string; + timeZone?: string; + } = {}; let parts = patterns.dateTimePattern.exec(dateString); let timeString: string; @@ -187,7 +215,10 @@ function splitDateString(dateString: string) { return dateStrings; } -function parseYear(dateString: string | null | undefined, additionalDigits: number) { +function parseYear( + dateString: string | null | undefined, + additionalDigits: number, +) { if (dateString) { const patternYYY = patterns.YYY[additionalDigits]; const patternYYYYY = patterns.YYYYY[additionalDigits]; @@ -334,7 +365,9 @@ function parseTime(timeString: string) { return NaN; } - return (hours % 24) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE; + return ( + (hours % 24) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE + ); } // hh:mm:ss or hhmmss @@ -348,14 +381,22 @@ function parseTime(timeString: string) { return NaN; } - return (hours % 24) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE + seconds * 1000; + return ( + (hours % 24) * MILLISECONDS_IN_HOUR + + minutes * MILLISECONDS_IN_MINUTE + + seconds * 1000 + ); } // Invalid ISO-formatted time return null; } -function dayOfISOWeekYear(isoWeekYear: number, week: number, day?: number | null) { +function dayOfISOWeekYear( + isoWeekYear: number, + week: number, + day?: number | null, +) { week = week || 0; day = day || 0; const date = new Date(0); @@ -369,7 +410,9 @@ function dayOfISOWeekYear(isoWeekYear: number, week: number, day?: number | null // Validation functions const DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -const DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +const DAYS_IN_MONTH_LEAP_YEAR = [ + 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31, +]; function isLeapYearIndex(year: number) { return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0); @@ -425,7 +468,11 @@ function validateWeekDate(week: number, day?: number | null) { return true; } -function validateTime(hours: number, minutes?: number | null, seconds?: number | null) { +function validateTime( + hours: number, + minutes?: number | null, + seconds?: number | null, +) { if (hours < 0 || hours >= 25) { return false; } diff --git a/src/date-fns-tz/toZonedTime/index.ts b/src/date-fns-tz/toZonedTime/index.ts index 82fdebc..07dfaea 100644 --- a/src/date-fns-tz/toZonedTime/index.ts +++ b/src/date-fns-tz/toZonedTime/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -30,7 +29,11 @@ import type { ToDateOptionsWithTZ } from '../index.ts'; * const result = toZonedTime('2014-06-25T10:00:00.000Z', 'America/New_York') * //=> Jun 25 2014 06:00:00 */ -export function toZonedTime(date: Date | string | number, timeZone: string, options?: ToDateOptionsWithTZ): Date { +export function toZonedTime( + date: Date | string | number, + timeZone: string, + options?: ToDateOptionsWithTZ, +): Date { date = toDate(date, options); const offsetMilliseconds = tzParseTimezone(timeZone, date, true); @@ -41,7 +44,12 @@ export function toZonedTime(date: Date | string | number, timeZone: string, opti resultDate.setFullYear(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate()); - resultDate.setHours(d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(), d.getUTCMilliseconds()); + resultDate.setHours( + d.getUTCHours(), + d.getUTCMinutes(), + d.getUTCSeconds(), + d.getUTCMilliseconds(), + ); // [PATCH:] this hack is required because setHours doesn't work for hours that are close to daylight saving timezone threshold (resultDate as any)[Symbol.for('UTCHours')] = d.getUTCHours(); diff --git a/src/date-fns/CHANGELOG.md b/src/date-fns/CHANGELOG.md index e53a25a..0b4640d 100644 --- a/src/date-fns/CHANGELOG.md +++ b/src/date-fns/CHANGELOG.md @@ -1266,7 +1266,10 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https var maxDate = max(date1, date2); // v2.0.0 onward: - var dates = [new Date(1989, 6 /* Jul */, 10), new Date(1987, 1 /* Feb */, 11)]; + var dates = [ + new Date(1989, 6 /* Jul */, 10), + new Date(1987, 1 /* Feb */, 11), + ]; var minDate = min(dates); var maxDate = max(dates); @@ -1322,7 +1325,12 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https ```javascript // Before v2.0.0 - areRangesOverlapping(new Date(2014, 0, 10), new Date(2014, 0, 20), new Date(2014, 0, 17), new Date(2014, 0, 21)); + areRangesOverlapping( + new Date(2014, 0, 10), + new Date(2014, 0, 20), + new Date(2014, 0, 17), + new Date(2014, 0, 21), + ); eachDay(new Date(2014, 0, 10), new Date(2014, 0, 20)); @@ -1333,7 +1341,11 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https new Date(2014, 0, 21), ); - isWithinRange(new Date(2014, 0, 3), new Date(2014, 0, 1), new Date(2014, 0, 7)); + isWithinRange( + new Date(2014, 0, 3), + new Date(2014, 0, 1), + new Date(2014, 0, 7), + ); // v2.0.0 onward @@ -1372,11 +1384,19 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https ```javascript // Before v2.0.0 - distanceInWords(new Date(1986, 3, 4, 10, 32, 0), new Date(1986, 3, 4, 11, 32, 0), { addSuffix: true }); //=> 'in about 1 hour' + distanceInWords( + new Date(1986, 3, 4, 10, 32, 0), + new Date(1986, 3, 4, 11, 32, 0), + { addSuffix: true }, + ); //=> 'in about 1 hour' // v2.0.0 onward - formatDistance(new Date(1986, 3, 4, 11, 32, 0), new Date(1986, 3, 4, 10, 32, 0), { addSuffix: true }); //=> 'in about 1 hour' + formatDistance( + new Date(1986, 3, 4, 11, 32, 0), + new Date(1986, 3, 4, 10, 32, 0), + { addSuffix: true }, + ); //=> 'in about 1 hour' ``` - **BREAKING**: `partialMethod` option in `formatDistanceStrict` is renamed to `roundingMethod`. @@ -1384,11 +1404,19 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https ```javascript // Before v2.0.0 - distanceInWordsStrict(new Date(1986, 3, 4, 10, 32, 0), new Date(1986, 3, 4, 10, 33, 1), { partialMethod: 'ceil' }); //=> '2 minutes' + distanceInWordsStrict( + new Date(1986, 3, 4, 10, 32, 0), + new Date(1986, 3, 4, 10, 33, 1), + { partialMethod: 'ceil' }, + ); //=> '2 minutes' // v2.0.0 onward - formatDistanceStrict(new Date(1986, 3, 4, 10, 33, 1), new Date(1986, 3, 4, 10, 32, 0), { roundingMethod: 'ceil' }); //=> '2 minutes' + formatDistanceStrict( + new Date(1986, 3, 4, 10, 33, 1), + new Date(1986, 3, 4, 10, 32, 0), + { roundingMethod: 'ceil' }, + ); //=> '2 minutes' ``` - **BREAKING**: in `formatDistanceStrict`, if `roundingMethod` is not specified, @@ -1400,11 +1428,19 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https ```javascript // Before v2.0.0 - distanceInWordsStrict(new Date(1986, 3, 4, 10, 32, 0), new Date(1986, 3, 4, 10, 33, 1), { unit: 'm' }); + distanceInWordsStrict( + new Date(1986, 3, 4, 10, 32, 0), + new Date(1986, 3, 4, 10, 33, 1), + { unit: 'm' }, + ); // v2.0.0 onward - formatDistanceStrict(new Date(1986, 3, 4, 10, 33, 1), new Date(1986, 3, 4, 10, 32, 0), { unit: 'minute' }); + formatDistanceStrict( + new Date(1986, 3, 4, 10, 33, 1), + new Date(1986, 3, 4, 10, 32, 0), + { unit: 'minute' }, + ); ``` - **BREAKING**: `parse` that previously used to convert strings and @@ -1559,7 +1595,11 @@ If you're upgrading from v2 alpha or beta, [see the pre-release changelog](https // Several arguments can be curried at once const dateToString = formatWithOptions({ locale: eo }, 'd MMMM yyyy'); - const dates = [new Date(2017, 0 /* Jan */, 1), new Date(2017, 1 /* Feb */, 11), new Date(2017, 6 /* Jul */, 2)]; + const dates = [ + new Date(2017, 0 /* Jan */, 1), + new Date(2017, 1 /* Feb */, 11), + new Date(2017, 6 /* Jul */, 2), + ]; const formattedDates = dates.map((date) => dateToString(addFiveYears(date))); //=> ['1 januaro 2022', '11 februaro 2022', '2 julio 2022'] diff --git a/src/date-fns/_lib/addLeadingZeros/index.ts b/src/date-fns/_lib/addLeadingZeros/index.ts index 8c36b50..30c1e29 100644 --- a/src/date-fns/_lib/addLeadingZeros/index.ts +++ b/src/date-fns/_lib/addLeadingZeros/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/_lib/defaultLocale/index.ts b/src/date-fns/_lib/defaultLocale/index.ts index 3936ed5..e7055c4 100644 --- a/src/date-fns/_lib/defaultLocale/index.ts +++ b/src/date-fns/_lib/defaultLocale/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/_lib/defaultOptions/index.ts b/src/date-fns/_lib/defaultOptions/index.ts index 2d17857..5b95bdf 100644 --- a/src/date-fns/_lib/defaultOptions/index.ts +++ b/src/date-fns/_lib/defaultOptions/index.ts @@ -1,10 +1,16 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck -import type { FirstWeekContainsDateOptions, Locale, LocalizedOptions, WeekOptions } from '../../types.ts'; +import type { + FirstWeekContainsDateOptions, + Locale, + LocalizedOptions, + WeekOptions, +} from '../../types.ts'; -export type DefaultOptions = LocalizedOptions & WeekOptions & FirstWeekContainsDateOptions; +export type DefaultOptions = LocalizedOptions & + WeekOptions & + FirstWeekContainsDateOptions; let defaultOptions: DefaultOptions = {}; diff --git a/src/date-fns/_lib/format/formatters/index.ts b/src/date-fns/_lib/format/formatters/index.ts index 0e94f23..b326ae1 100644 --- a/src/date-fns/_lib/format/formatters/index.ts +++ b/src/date-fns/_lib/format/formatters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -35,7 +34,9 @@ type Formatter = ( date: Date, token: string, localize: Localize, - options: Required & WeekOptions & FirstWeekContainsDateOptions>, + options: Required< + LocalizedOptions<'options'> & WeekOptions & FirstWeekContainsDateOptions + >, ) => string; /* @@ -779,7 +780,10 @@ function formatTimezoneShort(offset: number, delimiter: string = ''): string { return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2); } -function formatTimezoneWithOptionalMinutes(offset: number, delimiter?: string): string { +function formatTimezoneWithOptionalMinutes( + offset: number, + delimiter?: string, +): string { if (offset % 60 === 0) { const sign = offset > 0 ? '-' : '+'; return sign + addLeadingZeros(Math.abs(offset) / 60, 2); diff --git a/src/date-fns/_lib/format/lightFormatters/index.ts b/src/date-fns/_lib/format/lightFormatters/index.ts index c629d13..84947dd 100644 --- a/src/date-fns/_lib/format/lightFormatters/index.ts +++ b/src/date-fns/_lib/format/lightFormatters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -49,7 +48,10 @@ export const lightFormatters = { // AM or PM a(date: Date, token: string): string { // [PATCH:] this hack is required because setHours doesn't work for hours that are close to daylight saving timezone threshold - const dayPeriodEnumValue = ((date as any)[Symbol.for('UTCHours')] ?? date.getHours()) / 12 >= 1 ? 'pm' : 'am'; + const dayPeriodEnumValue = + ((date as any)[Symbol.for('UTCHours')] ?? date.getHours()) / 12 >= 1 + ? 'pm' + : 'am'; // original: // const dayPeriodEnumValue = date.getHours() / 12 >= 1 ? "pm" : "am"; @@ -70,7 +72,10 @@ export const lightFormatters = { // Hour [1-12] h(date: Date, token: string): string { // [PATCH:] this hack is required because setHours doesn't work for hours that are close to daylight saving timezone threshold - return addLeadingZeros(((date as any)[Symbol.for('UTCHours')] ?? date.getHours()) % 12 || 12, token.length); + return addLeadingZeros( + ((date as any)[Symbol.for('UTCHours')] ?? date.getHours()) % 12 || 12, + token.length, + ); // original: // return addLeadingZeros(date.getHours() % 12 || 12, token.length); }, @@ -78,7 +83,10 @@ export const lightFormatters = { // Hour [0-23] H(date: Date, token: string): string { // [PATCH:] this hack is required because setHours doesn't work for hours that are close to daylight saving timezone threshold - return addLeadingZeros((date as any)[Symbol.for('UTCHours')] ?? date.getHours(), token.length); + return addLeadingZeros( + (date as any)[Symbol.for('UTCHours')] ?? date.getHours(), + token.length, + ); // original: // return addLeadingZeros(date.getHours(), token.length); }, @@ -97,7 +105,9 @@ export const lightFormatters = { S(date: Date, token: string): string { const numberOfDigits = token.length; const milliseconds = date.getMilliseconds(); - const fractionalSeconds = Math.trunc(milliseconds * Math.pow(10, numberOfDigits - 3)); + const fractionalSeconds = Math.trunc( + milliseconds * Math.pow(10, numberOfDigits - 3), + ); return addLeadingZeros(fractionalSeconds, token.length); }, }; diff --git a/src/date-fns/_lib/format/longFormatters/index.ts b/src/date-fns/_lib/format/longFormatters/index.ts index a608663..f165f7e 100644 --- a/src/date-fns/_lib/format/longFormatters/index.ts +++ b/src/date-fns/_lib/format/longFormatters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -34,7 +33,10 @@ const timeLongFormatter: LongFormatter = (pattern, formatLong) => { } }; -const dateTimeLongFormatter: LongFormatter = (pattern: string, formatLong: FormatLong) => { +const dateTimeLongFormatter: LongFormatter = ( + pattern: string, + formatLong: FormatLong, +) => { const matchResult = pattern.match(/(P+)(p+)?/) || []; const datePattern = matchResult[1]; const timePattern = matchResult[2]; diff --git a/src/date-fns/_lib/getRoundingMethod/index.ts b/src/date-fns/_lib/getRoundingMethod/index.ts index 4a0876c..fccc7d0 100644 --- a/src/date-fns/_lib/getRoundingMethod/index.ts +++ b/src/date-fns/_lib/getRoundingMethod/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.ts b/src/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.ts index 2603025..766e819 100644 --- a/src/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.ts +++ b/src/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -16,7 +15,9 @@ import type { DateArg } from '../../types.ts'; * * This function returns the timezone offset in milliseconds that takes seconds in account. */ -export function getTimezoneOffsetInMilliseconds(date: DateArg & {}): number { +export function getTimezoneOffsetInMilliseconds( + date: DateArg & {}, +): number { const _date = toDate(date); const utcDate = new Date( Date.UTC( diff --git a/src/date-fns/_lib/normalizeDates/index.ts b/src/date-fns/_lib/normalizeDates/index.ts index 8688f89..8e602ab 100644 --- a/src/date-fns/_lib/normalizeDates/index.ts +++ b/src/date-fns/_lib/normalizeDates/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -15,10 +14,19 @@ export function normalizeDates( ...dates: [DateArg, DateArg] ): [Date, Date]; -export function normalizeDates(context: ContextFn | undefined, ...dates: Array & {}>): Date[]; +export function normalizeDates( + context: ContextFn | undefined, + ...dates: Array & {}> +): Date[]; -export function normalizeDates(context: ContextFn | undefined, ...dates: Array & {}>) { - const normalize = constructFrom.bind(null, context || dates.find((date) => typeof date === 'object')); +export function normalizeDates( + context: ContextFn | undefined, + ...dates: Array & {}> +) { + const normalize = constructFrom.bind( + null, + context || dates.find((date) => typeof date === 'object'), + ); return dates.map(normalize); } diff --git a/src/date-fns/_lib/normalizeInterval/index.ts b/src/date-fns/_lib/normalizeInterval/index.ts index 9b08f6c..f3727ea 100644 --- a/src/date-fns/_lib/normalizeInterval/index.ts +++ b/src/date-fns/_lib/normalizeInterval/index.ts @@ -1,11 +1,13 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import type { ContextFn, Interval, NormalizedInterval } from '../../types.ts'; import { normalizeDates } from '../normalizeDates/index.ts'; -export function normalizeInterval(context: ContextFn | undefined, interval: Interval): NormalizedInterval { +export function normalizeInterval( + context: ContextFn | undefined, + interval: Interval, +): NormalizedInterval { const [start, end] = normalizeDates(context, interval.start, interval.end); return { start, end }; } diff --git a/src/date-fns/_lib/protectedTokens/index.ts b/src/date-fns/_lib/protectedTokens/index.ts index 608260e..e17e3a3 100644 --- a/src/date-fns/_lib/protectedTokens/index.ts +++ b/src/date-fns/_lib/protectedTokens/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -15,7 +14,11 @@ export function isProtectedWeekYearToken(token: string): boolean { return weekYearTokenRE.test(token); } -export function warnOrThrowProtectedError(token: string, format: string, input: string): void { +export function warnOrThrowProtectedError( + token: string, + format: string, + input: string, +): void { const _message = message(token, format, input); console.warn(_message); if (throwTokens.includes(token)) throw new RangeError(_message); diff --git a/src/date-fns/add/index.ts b/src/date-fns/add/index.ts index 2376b3a..76680d7 100644 --- a/src/date-fns/add/index.ts +++ b/src/date-fns/add/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -11,7 +10,9 @@ import type { ContextOptions, DateArg, Duration } from '../types.ts'; /** * The {@link add} function options. */ -export interface AddOptions extends ContextOptions {} +export interface AddOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name add @@ -48,14 +49,24 @@ export function add( duration: Duration, options?: AddOptions | undefined, ): ResultDate { - const { years = 0, months = 0, weeks = 0, days = 0, hours = 0, minutes = 0, seconds = 0 } = duration; + const { + years = 0, + months = 0, + weeks = 0, + days = 0, + hours = 0, + minutes = 0, + seconds = 0, + } = duration; // Add years and months const _date = toDate(date, options?.in); - const dateWithMonths = months || years ? addMonths(_date, months + years * 12) : _date; + const dateWithMonths = + months || years ? addMonths(_date, months + years * 12) : _date; // Add weeks and days - const dateWithDays = days || weeks ? addDays(dateWithMonths, days + weeks * 7) : dateWithMonths; + const dateWithDays = + days || weeks ? addDays(dateWithMonths, days + weeks * 7) : dateWithMonths; // Add days, hours, minutes, and seconds const minutesToAdd = minutes + hours * 60; diff --git a/src/date-fns/addBusinessDays/index.ts b/src/date-fns/addBusinessDays/index.ts index 1fceb3b..57f4aad 100644 --- a/src/date-fns/addBusinessDays/index.ts +++ b/src/date-fns/addBusinessDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -12,7 +11,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addBusinessDays} function options. */ -export interface AddBusinessDaysOptions extends ContextOptions {} +export interface AddBusinessDaysOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addBusinessDays @@ -36,7 +37,10 @@ export interface AddBusinessDaysOptions extends Co * const result = addBusinessDays(new Date(2014, 8, 1), 10) * //=> Mon Sep 15 2014 00:00:00 (skipped weekend days) */ -export function addBusinessDays( +export function addBusinessDays< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddBusinessDaysOptions | undefined, @@ -67,8 +71,10 @@ export function addBusinessDays extends ContextOptions {} +export interface AddDaysOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addDays @@ -33,7 +34,10 @@ export interface AddDaysOptions extends ContextOpt * const result = addDays(new Date(2014, 8, 1), 10) * //=> Thu Sep 11 2014 00:00:00 */ -export function addDays( +export function addDays< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddDaysOptions | undefined, diff --git a/src/date-fns/addHours/index.ts b/src/date-fns/addHours/index.ts index d9da4e0..2b9b43d 100644 --- a/src/date-fns/addHours/index.ts +++ b/src/date-fns/addHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addHours} function options. */ -export interface AddHoursOptions extends ContextOptions {} +export interface AddHoursOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addHours @@ -33,7 +34,10 @@ export interface AddHoursOptions extends ContextOp * const result = addHours(new Date(2014, 6, 10, 23, 0), 2) * //=> Fri Jul 11 2014 01:00:00 */ -export function addHours( +export function addHours< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddHoursOptions | undefined, diff --git a/src/date-fns/addISOWeekYears/index.ts b/src/date-fns/addISOWeekYears/index.ts index eb1f454..2fdf648 100644 --- a/src/date-fns/addISOWeekYears/index.ts +++ b/src/date-fns/addISOWeekYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addISOWeekYears} function options. */ -export interface AddISOWeekYearsOptions extends ContextOptions {} +export interface AddISOWeekYearsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addISOWeekYears @@ -34,7 +35,10 @@ export interface AddISOWeekYearsOptions extends Co * const result = addISOWeekYears(new Date(2010, 6, 2), 5) * //=> Fri Jun 26 2015 00:00:00 */ -export function addISOWeekYears( +export function addISOWeekYears< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddISOWeekYearsOptions | undefined, diff --git a/src/date-fns/addMilliseconds/index.ts b/src/date-fns/addMilliseconds/index.ts index e1ecd96..31cb71c 100644 --- a/src/date-fns/addMilliseconds/index.ts +++ b/src/date-fns/addMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addMilliseconds} function options. */ -export interface AddMillisecondsOptions extends ContextOptions {} +export interface AddMillisecondsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addMilliseconds @@ -32,7 +33,10 @@ export interface AddMillisecondsOptions extends Co * const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750) * //=> Thu Jul 10 2014 12:45:30.750 */ -export function addMilliseconds( +export function addMilliseconds< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddMillisecondsOptions | undefined, diff --git a/src/date-fns/addMinutes/index.ts b/src/date-fns/addMinutes/index.ts index 189cd68..ba9864f 100644 --- a/src/date-fns/addMinutes/index.ts +++ b/src/date-fns/addMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addMinutes} function options. */ -export interface AddMinutesOptions extends ContextOptions {} +export interface AddMinutesOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addMinutes @@ -33,7 +34,10 @@ export interface AddMinutesOptions extends Context * const result = addMinutes(new Date(2014, 6, 10, 12, 0), 30) * //=> Thu Jul 10 2014 12:30:00 */ -export function addMinutes( +export function addMinutes< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddMinutesOptions | undefined, diff --git a/src/date-fns/addMonths/index.ts b/src/date-fns/addMonths/index.ts index c59aa52..59fc4f5 100644 --- a/src/date-fns/addMonths/index.ts +++ b/src/date-fns/addMonths/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addMonths} function options. */ -export interface AddMonthsOptions extends ContextOptions {} +export interface AddMonthsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addMonths @@ -37,7 +38,10 @@ export interface AddMonthsOptions extends ContextO * const result = addMonths(new Date(2023, 0, 30), 1) * //=> Tue Feb 28 2023 00:00:00 */ -export function addMonths( +export function addMonths< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddMonthsOptions | undefined, @@ -73,7 +77,11 @@ export function addMonths extends ContextOptions {} +export interface AddQuartersOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addQuarters @@ -32,7 +33,10 @@ export interface AddQuartersOptions extends Contex * const result = addQuarters(new Date(2014, 8, 1), 1) * //=; Mon Dec 01 2014 00:00:00 */ -export function addQuarters( +export function addQuarters< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddQuartersOptions | undefined, diff --git a/src/date-fns/addSeconds/index.ts b/src/date-fns/addSeconds/index.ts index 5278ec1..1357410 100644 --- a/src/date-fns/addSeconds/index.ts +++ b/src/date-fns/addSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addSeconds} function options. */ -export interface AddSecondsOptions extends ContextOptions {} +export interface AddSecondsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addSeconds @@ -32,7 +33,10 @@ export interface AddSecondsOptions extends Context * const result = addSeconds(new Date(2014, 6, 10, 12, 45, 0), 30) * //=> Thu Jul 10 2014 12:45:30 */ -export function addSeconds( +export function addSeconds< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddSecondsOptions | undefined, diff --git a/src/date-fns/addWeeks/index.ts b/src/date-fns/addWeeks/index.ts index db1f4f8..325c05e 100644 --- a/src/date-fns/addWeeks/index.ts +++ b/src/date-fns/addWeeks/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addWeeks} function options. */ -export interface AddWeeksOptions extends ContextOptions {} +export interface AddWeeksOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addWeeks @@ -32,7 +33,10 @@ export interface AddWeeksOptions extends ContextOp * const result = addWeeks(new Date(2014, 8, 1), 4) * //=> Mon Sep 29 2014 00:00:00 */ -export function addWeeks( +export function addWeeks< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddWeeksOptions | undefined, diff --git a/src/date-fns/addYears/index.ts b/src/date-fns/addYears/index.ts index d5ec223..4ac36f2 100644 --- a/src/date-fns/addYears/index.ts +++ b/src/date-fns/addYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link addYears} function options. */ -export interface AddYearsOptions extends ContextOptions {} +export interface AddYearsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name addYears @@ -32,7 +33,10 @@ export interface AddYearsOptions extends ContextOp * const result = addYears(new Date(2014, 8, 1), 5) * //=> Sun Sep 01 2019 00:00:00 */ -export function addYears( +export function addYears< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: AddYearsOptions | undefined, diff --git a/src/date-fns/areIntervalsOverlapping/index.ts b/src/date-fns/areIntervalsOverlapping/index.ts index 80626fe..1c3b0e6 100644 --- a/src/date-fns/areIntervalsOverlapping/index.ts +++ b/src/date-fns/areIntervalsOverlapping/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -74,7 +73,8 @@ export function areIntervalsOverlapping( +toDate(intervalRight.end, options?.in), ].sort((a, b) => a - b); - if (options?.inclusive) return leftStartTime <= rightEndTime && rightStartTime <= leftEndTime; + if (options?.inclusive) + return leftStartTime <= rightEndTime && rightStartTime <= leftEndTime; return leftStartTime < rightEndTime && rightStartTime < leftEndTime; } diff --git a/src/date-fns/clamp/index.ts b/src/date-fns/clamp/index.ts index 1776d3a..4af1974 100644 --- a/src/date-fns/clamp/index.ts +++ b/src/date-fns/clamp/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg, Interval } from '../types.ts'; /** * The {@link clamp} function options. */ -export interface ClampOptions extends ContextOptions {} +export interface ClampOptions< + ContextDate extends Date = Date, +> extends ContextOptions {} /** * The {@link clamp} function result type. It resolves the proper data type. @@ -68,10 +69,23 @@ export function clamp< DateType extends DateArg, IntervalType extends Interval, Options extends ClampOptions | undefined = undefined, ->(date: DateType, interval: IntervalType, options?: Options): ClampResult { - const [date_, start, end] = normalizeDates(options?.in, date, interval.start, interval.end); +>( + date: DateType, + interval: IntervalType, + options?: Options, +): ClampResult { + const [date_, start, end] = normalizeDates( + options?.in, + date, + interval.start, + interval.end, + ); - return min([max([date_, start], options), end], options) as ClampResult; + return min([max([date_, start], options), end], options) as ClampResult< + DateType, + IntervalType, + Options + >; } /* eslint-enable */ diff --git a/src/date-fns/closestIndexTo/index.ts b/src/date-fns/closestIndexTo/index.ts index 8b7cd00..cf10644 100644 --- a/src/date-fns/closestIndexTo/index.ts +++ b/src/date-fns/closestIndexTo/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/closestTo/index.ts b/src/date-fns/closestTo/index.ts index e2f97e0..6ce80b3 100644 --- a/src/date-fns/closestTo/index.ts +++ b/src/date-fns/closestTo/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link closestTo} function options. */ -export interface ClosestToOptions extends ContextOptions {} +export interface ClosestToOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * The {@link closestTo} function result type. It resolves the proper data type. @@ -66,14 +67,23 @@ export function closestTo< dates: DatesType, options?: Options | undefined, ): ClosestToResult | undefined { - const [dateToCompare_, ...dates_] = normalizeDates(options?.in, dateToCompare, ...dates); + const [dateToCompare_, ...dates_] = normalizeDates( + options?.in, + dateToCompare, + ...dates, + ); const index = closestIndexTo(dateToCompare_, dates_); if (typeof index === 'number' && isNaN(index)) - return constructFrom(dateToCompare_, NaN) as ClosestToResult; + return constructFrom(dateToCompare_, NaN) as ClosestToResult< + DateToCompare, + DatesType, + Options + >; - if (index !== undefined) return dates_[index] as ClosestToResult; + if (index !== undefined) + return dates_[index] as ClosestToResult; } /* eslint-enable */ diff --git a/src/date-fns/compareAsc/index.ts b/src/date-fns/compareAsc/index.ts index bc53568..add9274 100644 --- a/src/date-fns/compareAsc/index.ts +++ b/src/date-fns/compareAsc/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -37,7 +36,10 @@ import type { DateArg } from '../types.ts'; * // Sun Jul 02 1995 00:00:00 * // ] */ -export function compareAsc(dateLeft: DateArg & {}, dateRight: DateArg & {}): number { +export function compareAsc( + dateLeft: DateArg & {}, + dateRight: DateArg & {}, +): number { const diff = +toDate(dateLeft) - +toDate(dateRight); if (diff < 0) return -1; diff --git a/src/date-fns/compareDesc/index.ts b/src/date-fns/compareDesc/index.ts index fd70f7a..ff71e43 100644 --- a/src/date-fns/compareDesc/index.ts +++ b/src/date-fns/compareDesc/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -37,7 +36,10 @@ import type { DateArg } from '../types.ts'; * // Wed Feb 11 1987 00:00:00 * // ] */ -export function compareDesc(dateLeft: DateArg & {}, dateRight: DateArg & {}): number { +export function compareDesc( + dateLeft: DateArg & {}, + dateRight: DateArg & {}, +): number { const diff = +toDate(dateLeft) - +toDate(dateRight); if (diff > 0) return -1; diff --git a/src/date-fns/constants/index.ts b/src/date-fns/constants/index.ts index 0e11803..4c29dd8 100644 --- a/src/date-fns/constants/index.ts +++ b/src/date-fns/constants/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -217,6 +216,7 @@ export const secondsInQuarter: number = secondsInMonth * 3; * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as * a constructor argument. */ -export const constructFromSymbol: unique symbol = Symbol.for('constructDateFrom'); +export const constructFromSymbol: unique symbol = + Symbol.for('constructDateFrom'); /* eslint-enable */ diff --git a/src/date-fns/constructFrom/index.ts b/src/date-fns/constructFrom/index.ts index aa5d6fa..2fd77d6 100644 --- a/src/date-fns/constructFrom/index.ts +++ b/src/date-fns/constructFrom/index.ts @@ -1,9 +1,13 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { constructFromSymbol } from '../constants/index.ts'; -import type { ConstructableDate, ContextFn, DateArg, GenericDateConstructor } from '../types.ts'; +import type { + ConstructableDate, + ContextFn, + DateArg, + GenericDateConstructor, +} from '../types.ts'; /** * @name constructFrom @@ -40,7 +44,10 @@ import type { ConstructableDate, ContextFn, DateArg, GenericDateConstructor } fr * ); * } */ -export function constructFrom( +export function constructFrom< + DateType extends Date | ConstructableDate, + ResultDate extends Date = DateType, +>( date: DateArg | ContextFn | undefined, value: DateArg & {}, ): ResultDate { @@ -50,16 +57,22 @@ export function constructFrom)(value); + const dateToReturn = new ( + date.constructor as GenericDateConstructor + )(value); // [PATCH:] this hack is required because setHours doesn't work for hours that are close to daylight saving timezone threshold if ((date as any)[Symbol.for('UTCHours')] !== undefined) { - (dateToReturn as any)[Symbol.for('UTCHours')] = (date as any)[Symbol.for('UTCHours')]; + (dateToReturn as any)[Symbol.for('UTCHours')] = (date as any)[ + Symbol.for('UTCHours') + ]; } return dateToReturn; } diff --git a/src/date-fns/constructNow/index.ts b/src/date-fns/constructNow/index.ts index 2d4c569..000017c 100644 --- a/src/date-fns/constructNow/index.ts +++ b/src/date-fns/constructNow/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -33,9 +32,10 @@ import type { ContextFn, DateArg } from '../types.ts'; * return isSameDay(date, constructNow(date)); * } */ -export function constructNow( - date: DateArg | ContextFn | undefined, -): ResultDate { +export function constructNow< + DateType extends Date, + ResultDate extends Date = DateType, +>(date: DateArg | ContextFn | undefined): ResultDate { return constructFrom(date, Date.now()); } diff --git a/src/date-fns/daysToWeeks/index.ts b/src/date-fns/daysToWeeks/index.ts index 2904a33..1cf6195 100644 --- a/src/date-fns/daysToWeeks/index.ts +++ b/src/date-fns/daysToWeeks/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/differenceInBusinessDays/index.ts b/src/date-fns/differenceInBusinessDays/index.ts index 6a232ff..bbe3a20 100644 --- a/src/date-fns/differenceInBusinessDays/index.ts +++ b/src/date-fns/differenceInBusinessDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -70,7 +69,11 @@ export function differenceInBusinessDays( earlierDate: DateArg & {}, options?: DifferenceInBusinessDaysOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); if (!isValid(laterDate_) || !isValid(earlierDate_)) return NaN; diff --git a/src/date-fns/differenceInCalendarDays/index.ts b/src/date-fns/differenceInCalendarDays/index.ts index 8fa4c3b..95d4f68 100644 --- a/src/date-fns/differenceInCalendarDays/index.ts +++ b/src/date-fns/differenceInCalendarDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -49,13 +48,19 @@ export function differenceInCalendarDays( earlierDate: DateArg & {}, options?: DifferenceInCalendarDaysOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const laterStartOfDay = startOfDay(laterDate_); const earlierStartOfDay = startOfDay(earlierDate_); - const laterTimestamp = +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay); - const earlierTimestamp = +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay); + const laterTimestamp = + +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay); + const earlierTimestamp = + +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay); // Round the number of days to the nearest integer because the number of // milliseconds in a day is not constant (e.g. it's different in the week of diff --git a/src/date-fns/differenceInCalendarISOWeekYears/index.ts b/src/date-fns/differenceInCalendarISOWeekYears/index.ts index 3e7221b..5a7d560 100644 --- a/src/date-fns/differenceInCalendarISOWeekYears/index.ts +++ b/src/date-fns/differenceInCalendarISOWeekYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -40,8 +39,14 @@ export function differenceInCalendarISOWeekYears( earlierDate: DateArg & {}, options?: DifferenceInCalendarISOWeekYearsOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); - return getISOWeekYear(laterDate_, options) - getISOWeekYear(earlierDate_, options); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); + return ( + getISOWeekYear(laterDate_, options) - getISOWeekYear(earlierDate_, options) + ); } /* eslint-enable */ diff --git a/src/date-fns/differenceInCalendarISOWeeks/index.ts b/src/date-fns/differenceInCalendarISOWeeks/index.ts index b6cf679..03f18d1 100644 --- a/src/date-fns/differenceInCalendarISOWeeks/index.ts +++ b/src/date-fns/differenceInCalendarISOWeeks/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -42,13 +41,19 @@ export function differenceInCalendarISOWeeks( earlierDate: DateArg & {}, options?: DifferenceInCalendarISOWeeksOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const startOfISOWeekLeft = startOfISOWeek(laterDate_); const startOfISOWeekRight = startOfISOWeek(earlierDate_); - const timestampLeft = +startOfISOWeekLeft - getTimezoneOffsetInMilliseconds(startOfISOWeekLeft); - const timestampRight = +startOfISOWeekRight - getTimezoneOffsetInMilliseconds(startOfISOWeekRight); + const timestampLeft = + +startOfISOWeekLeft - getTimezoneOffsetInMilliseconds(startOfISOWeekLeft); + const timestampRight = + +startOfISOWeekRight - getTimezoneOffsetInMilliseconds(startOfISOWeekRight); // Round the number of weeks to the nearest integer because the number of // milliseconds in a week is not constant (e.g. it's different in the week of diff --git a/src/date-fns/differenceInCalendarMonths/index.ts b/src/date-fns/differenceInCalendarMonths/index.ts index 8fe88f9..732a3b7 100644 --- a/src/date-fns/differenceInCalendarMonths/index.ts +++ b/src/date-fns/differenceInCalendarMonths/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -37,7 +36,11 @@ export function differenceInCalendarMonths( earlierDate: DateArg & {}, options?: DifferenceInCalendarMonthsOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const yearsDiff = laterDate_.getFullYear() - earlierDate_.getFullYear(); const monthsDiff = laterDate_.getMonth() - earlierDate_.getMonth(); diff --git a/src/date-fns/differenceInCalendarQuarters/index.ts b/src/date-fns/differenceInCalendarQuarters/index.ts index 65c34d1..2725811 100644 --- a/src/date-fns/differenceInCalendarQuarters/index.ts +++ b/src/date-fns/differenceInCalendarQuarters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -38,7 +37,11 @@ export function differenceInCalendarQuarters( earlierDate: DateArg & {}, options?: DifferenceInCalendarQuartersOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const yearsDiff = laterDate_.getFullYear() - earlierDate_.getFullYear(); const quartersDiff = getQuarter(laterDate_) - getQuarter(earlierDate_); diff --git a/src/date-fns/differenceInCalendarWeeks/index.ts b/src/date-fns/differenceInCalendarWeeks/index.ts index dabfd4f..49b4d5b 100644 --- a/src/date-fns/differenceInCalendarWeeks/index.ts +++ b/src/date-fns/differenceInCalendarWeeks/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,15 +5,18 @@ import { getTimezoneOffsetInMilliseconds } from '../_lib/getTimezoneOffsetInMill import { normalizeDates } from '../_lib/normalizeDates/index.ts'; import { millisecondsInWeek } from '../constants/index.ts'; import { startOfWeek } from '../startOfWeek/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link differenceInCalendarWeeks} function options. */ export interface DifferenceInCalendarWeeksOptions - extends LocalizedOptions<'options'>, - WeekOptions, - ContextOptions {} + extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} /** * @name differenceInCalendarWeeks @@ -53,13 +55,19 @@ export function differenceInCalendarWeeks( earlierDate: DateArg & {}, options?: DifferenceInCalendarWeeksOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const laterStartOfWeek = startOfWeek(laterDate_, options); const earlierStartOfWeek = startOfWeek(earlierDate_, options); - const laterTimestamp = +laterStartOfWeek - getTimezoneOffsetInMilliseconds(laterStartOfWeek); - const earlierTimestamp = +earlierStartOfWeek - getTimezoneOffsetInMilliseconds(earlierStartOfWeek); + const laterTimestamp = + +laterStartOfWeek - getTimezoneOffsetInMilliseconds(laterStartOfWeek); + const earlierTimestamp = + +earlierStartOfWeek - getTimezoneOffsetInMilliseconds(earlierStartOfWeek); return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInWeek); } diff --git a/src/date-fns/differenceInCalendarYears/index.ts b/src/date-fns/differenceInCalendarYears/index.ts index 3b638e9..81804f8 100644 --- a/src/date-fns/differenceInCalendarYears/index.ts +++ b/src/date-fns/differenceInCalendarYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -37,7 +36,11 @@ export function differenceInCalendarYears( earlierDate: DateArg & {}, options?: DifferenceInCalendarYearsOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); return laterDate_.getFullYear() - earlierDate_.getFullYear(); } diff --git a/src/date-fns/differenceInDays/index.ts b/src/date-fns/differenceInDays/index.ts index 68b10ef..c717e1b 100644 --- a/src/date-fns/differenceInDays/index.ts +++ b/src/date-fns/differenceInDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -69,16 +68,24 @@ export function differenceInDays( earlierDate: DateArg & {}, options?: DifferenceInDaysOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const sign = compareLocalAsc(laterDate_, earlierDate_); - const difference = Math.abs(differenceInCalendarDays(laterDate_, earlierDate_)); + const difference = Math.abs( + differenceInCalendarDays(laterDate_, earlierDate_), + ); laterDate_.setDate(laterDate_.getDate() - sign * difference); // Math.abs(diff in full days - diff in calendar days) === 1 if last calendar day is not full // If so, result must be decreased by 1 in absolute value - const isLastDayNotFull = Number(compareLocalAsc(laterDate_, earlierDate_) === -sign); + const isLastDayNotFull = Number( + compareLocalAsc(laterDate_, earlierDate_) === -sign, + ); const result = sign * (difference - isLastDayNotFull); // Prevent negative zero diff --git a/src/date-fns/differenceInHours/index.ts b/src/date-fns/differenceInHours/index.ts index 7570ab5..7442074 100644 --- a/src/date-fns/differenceInHours/index.ts +++ b/src/date-fns/differenceInHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,8 @@ import type { ContextOptions, DateArg, RoundingOptions } from '../types.ts'; /** * The {@link differenceInHours} function options. */ -export interface DifferenceInHoursOptions extends RoundingOptions, ContextOptions {} +export interface DifferenceInHoursOptions + extends RoundingOptions, ContextOptions {} /** * @name differenceInHours @@ -39,7 +39,11 @@ export function differenceInHours( earlierDate: DateArg & {}, options?: DifferenceInHoursOptions, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const diff = (+laterDate_ - +earlierDate_) / millisecondsInHour; return getRoundingMethod(options?.roundingMethod)(diff); } diff --git a/src/date-fns/differenceInISOWeekYears/index.ts b/src/date-fns/differenceInISOWeekYears/index.ts index 02c4fa9..09d091c 100644 --- a/src/date-fns/differenceInISOWeekYears/index.ts +++ b/src/date-fns/differenceInISOWeekYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -42,14 +41,22 @@ export function differenceInISOWeekYears( earlierDate: DateArg & {}, options?: DifferenceInISOWeekYearsOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); const sign = compareAsc(laterDate_, earlierDate_); - const diff = Math.abs(differenceInCalendarISOWeekYears(laterDate_, earlierDate_, options)); + const diff = Math.abs( + differenceInCalendarISOWeekYears(laterDate_, earlierDate_, options), + ); const adjustedDate = subISOWeekYears(laterDate_, sign * diff, options); - const isLastISOWeekYearNotFull = Number(compareAsc(adjustedDate, earlierDate_) === -sign); + const isLastISOWeekYearNotFull = Number( + compareAsc(adjustedDate, earlierDate_) === -sign, + ); const result = sign * (diff - isLastISOWeekYearNotFull); // Prevent negative zero diff --git a/src/date-fns/differenceInMilliseconds/index.ts b/src/date-fns/differenceInMilliseconds/index.ts index ce6f0ea..1842076 100644 --- a/src/date-fns/differenceInMilliseconds/index.ts +++ b/src/date-fns/differenceInMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -27,7 +26,10 @@ import type { DateArg } from '../types.ts'; * ) * //=> 1100 */ -export function differenceInMilliseconds(laterDate: DateArg & {}, earlierDate: DateArg & {}): number { +export function differenceInMilliseconds( + laterDate: DateArg & {}, + earlierDate: DateArg & {}, +): number { return +toDate(laterDate) - +toDate(earlierDate); } diff --git a/src/date-fns/differenceInMinutes/index.ts b/src/date-fns/differenceInMinutes/index.ts index fe71185..9851bef 100644 --- a/src/date-fns/differenceInMinutes/index.ts +++ b/src/date-fns/differenceInMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -47,7 +46,8 @@ export function differenceInMinutes( dateRight: DateArg & {}, options?: DifferenceInMinutesOptions, ): number { - const diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInMinute; + const diff = + differenceInMilliseconds(dateLeft, dateRight) / millisecondsInMinute; return getRoundingMethod(options?.roundingMethod)(diff); } diff --git a/src/date-fns/differenceInMonths/index.ts b/src/date-fns/differenceInMonths/index.ts index 02c8d24..85824bd 100644 --- a/src/date-fns/differenceInMonths/index.ts +++ b/src/date-fns/differenceInMonths/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -34,20 +33,32 @@ export function differenceInMonths( earlierDate: DateArg & {}, options?: DifferenceInMonthsOptions | undefined, ): number { - const [laterDate_, workingLaterDate, earlierDate_] = normalizeDates(options?.in, laterDate, laterDate, earlierDate); + const [laterDate_, workingLaterDate, earlierDate_] = normalizeDates( + options?.in, + laterDate, + laterDate, + earlierDate, + ); const sign = compareAsc(workingLaterDate, earlierDate_); - const difference = Math.abs(differenceInCalendarMonths(workingLaterDate, earlierDate_)); + const difference = Math.abs( + differenceInCalendarMonths(workingLaterDate, earlierDate_), + ); if (difference < 1) return 0; - if (workingLaterDate.getMonth() === 1 && workingLaterDate.getDate() > 27) workingLaterDate.setDate(30); + if (workingLaterDate.getMonth() === 1 && workingLaterDate.getDate() > 27) + workingLaterDate.setDate(30); workingLaterDate.setMonth(workingLaterDate.getMonth() - sign * difference); let isLastMonthNotFull = compareAsc(workingLaterDate, earlierDate_) === -sign; - if (isLastDayOfMonth(laterDate_) && difference === 1 && compareAsc(laterDate_, earlierDate_) === 1) { + if ( + isLastDayOfMonth(laterDate_) && + difference === 1 && + compareAsc(laterDate_, earlierDate_) === 1 + ) { isLastMonthNotFull = false; } diff --git a/src/date-fns/differenceInQuarters/index.ts b/src/date-fns/differenceInQuarters/index.ts index ef05dd4..e53da82 100644 --- a/src/date-fns/differenceInQuarters/index.ts +++ b/src/date-fns/differenceInQuarters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,8 @@ import type { ContextOptions, DateArg, RoundingOptions } from '../types.ts'; /** * The {@link differenceInQuarters} function options. */ -export interface DifferenceInQuartersOptions extends RoundingOptions, ContextOptions {} +export interface DifferenceInQuartersOptions + extends RoundingOptions, ContextOptions {} /** * @name differenceInQuarters diff --git a/src/date-fns/differenceInSeconds/index.ts b/src/date-fns/differenceInSeconds/index.ts index eb8859c..8b56345 100644 --- a/src/date-fns/differenceInSeconds/index.ts +++ b/src/date-fns/differenceInSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/differenceInWeeks/index.ts b/src/date-fns/differenceInWeeks/index.ts index 4719703..55be821 100644 --- a/src/date-fns/differenceInWeeks/index.ts +++ b/src/date-fns/differenceInWeeks/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,8 @@ import type { ContextOptions, DateArg, RoundingOptions } from '../types.ts'; /** * The {@link differenceInWeeks} function options. */ -export interface DifferenceInWeeksOptions extends RoundingOptions, ContextOptions {} +export interface DifferenceInWeeksOptions + extends RoundingOptions, ContextOptions {} /** * @name differenceInWeeks diff --git a/src/date-fns/differenceInYears/index.ts b/src/date-fns/differenceInYears/index.ts index 54e5ab9..4629f3f 100644 --- a/src/date-fns/differenceInYears/index.ts +++ b/src/date-fns/differenceInYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -36,7 +35,11 @@ export function differenceInYears( earlierDate: DateArg & {}, options?: DifferenceInYearsOptions | undefined, ): number { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); // -1 if the left date is earlier than the right date // 2023-12-31 - 2024-01-01 = -1 diff --git a/src/date-fns/eachDayOfInterval/index.ts b/src/date-fns/eachDayOfInterval/index.ts index 5c0df11..c910429 100644 --- a/src/date-fns/eachDayOfInterval/index.ts +++ b/src/date-fns/eachDayOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,8 @@ import type { ContextOptions, Interval, StepOptions } from '../types.ts'; /** * The {@link eachDayOfInterval} function options. */ -export interface EachDayOfIntervalOptions extends StepOptions, ContextOptions {} +export interface EachDayOfIntervalOptions + extends StepOptions, ContextOptions {} /** * The {@link eachDayOfInterval} function result type. It resolves the proper data type. @@ -63,7 +63,10 @@ export type EachDayOfIntervalResult< export function eachDayOfInterval< IntervalType extends Interval, Options extends EachDayOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachDayOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachDayOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); let reversed = +start > +end; diff --git a/src/date-fns/eachHourOfInterval/index.ts b/src/date-fns/eachHourOfInterval/index.ts index d44e50e..e6c2710 100644 --- a/src/date-fns/eachHourOfInterval/index.ts +++ b/src/date-fns/eachHourOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,8 +9,7 @@ import type { ContextOptions, Interval, StepOptions } from '../types.ts'; * The {@link eachHourOfInterval} function options. */ export interface EachHourOfIntervalOptions - extends StepOptions, - ContextOptions {} + extends StepOptions, ContextOptions {} /** * The {@link eachHourOfInterval} function result type. @@ -62,7 +60,10 @@ export type EachHourOfIntervalResult< export function eachHourOfInterval< IntervalType extends Interval, Options extends EachHourOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachHourOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachHourOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); let reversed = +start > +end; diff --git a/src/date-fns/eachMinuteOfInterval/index.ts b/src/date-fns/eachMinuteOfInterval/index.ts index e90dde5..91714ac 100644 --- a/src/date-fns/eachMinuteOfInterval/index.ts +++ b/src/date-fns/eachMinuteOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -11,8 +10,7 @@ import type { ContextOptions, Interval, StepOptions } from '../types.ts'; * The {@link eachMinuteOfInterval} function options. */ export interface EachMinuteOfIntervalOptions - extends StepOptions, - ContextOptions {} + extends StepOptions, ContextOptions {} /** * The {@link eachMinuteOfInterval} function result type. It resolves the proper data type. @@ -65,7 +63,10 @@ export type EachMinuteOfIntervalResult< export function eachMinuteOfInterval< IntervalType extends Interval, Options extends EachMinuteOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachMinuteOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachMinuteOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); // Set to the start of the minute start.setSeconds(0, 0); diff --git a/src/date-fns/eachMonthOfInterval/index.ts b/src/date-fns/eachMonthOfInterval/index.ts index 0d14855..5f96e68 100644 --- a/src/date-fns/eachMonthOfInterval/index.ts +++ b/src/date-fns/eachMonthOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,8 +9,7 @@ import type { ContextOptions, Interval, StepOptions } from '../types.ts'; * The {@link eachMonthOfInterval} function options. */ export interface EachMonthOfIntervalOptions - extends StepOptions, - ContextOptions {} + extends StepOptions, ContextOptions {} /** * The {@link eachMonthOfInterval} function result type. It resolves the proper data type. @@ -64,7 +62,10 @@ export type EachMonthOfIntervalResult< export function eachMonthOfInterval< IntervalType extends Interval, Options extends EachMonthOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachMonthOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachMonthOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); let reversed = +start > +end; diff --git a/src/date-fns/eachQuarterOfInterval/index.ts b/src/date-fns/eachQuarterOfInterval/index.ts index 5b5dbff..25f9699 100644 --- a/src/date-fns/eachQuarterOfInterval/index.ts +++ b/src/date-fns/eachQuarterOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -12,8 +11,7 @@ import type { ContextOptions, Interval, StepOptions } from '../types.ts'; * The {@link eachQuarterOfInterval} function options. */ export interface EachQuarterOfIntervalOptions - extends StepOptions, - ContextOptions {} + extends StepOptions, ContextOptions {} /** * The {@link eachQuarterOfInterval} function result type. It resolves the proper data type. @@ -65,7 +63,10 @@ export type EachQuarterOfIntervalResult< export function eachQuarterOfInterval< IntervalType extends Interval, Options extends EachQuarterOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachQuarterOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachQuarterOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); let reversed = +start > +end; diff --git a/src/date-fns/eachWeekOfInterval/index.ts b/src/date-fns/eachWeekOfInterval/index.ts index c2e6b77..08f89dc 100644 --- a/src/date-fns/eachWeekOfInterval/index.ts +++ b/src/date-fns/eachWeekOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,13 +5,20 @@ import { normalizeInterval } from '../_lib/normalizeInterval/index.ts'; import { addWeeks } from '../addWeeks/index.ts'; import { constructFrom } from '../constructFrom/index.ts'; import { startOfWeek } from '../startOfWeek/index.ts'; -import type { ContextOptions, Interval, LocalizedOptions, StepOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + Interval, + LocalizedOptions, + StepOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link eachWeekOfInterval} function options. */ export interface EachWeekOfIntervalOptions - extends StepOptions, + extends + StepOptions, WeekOptions, LocalizedOptions<'options'>, ContextOptions {} @@ -68,12 +74,19 @@ export type EachWeekOfIntervalResult< export function eachWeekOfInterval< IntervalType extends Interval, Options extends EachWeekOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachWeekOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachWeekOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); let reversed = +start > +end; - const startDateWeek = reversed ? startOfWeek(end, options) : startOfWeek(start, options); - const endDateWeek = reversed ? startOfWeek(start, options) : startOfWeek(end, options); + const startDateWeek = reversed + ? startOfWeek(end, options) + : startOfWeek(start, options); + const endDateWeek = reversed + ? startOfWeek(start, options) + : startOfWeek(end, options); startDateWeek.setHours(15); endDateWeek.setHours(15); diff --git a/src/date-fns/eachWeekendOfInterval/index.ts b/src/date-fns/eachWeekendOfInterval/index.ts index d7580d2..2259465 100644 --- a/src/date-fns/eachWeekendOfInterval/index.ts +++ b/src/date-fns/eachWeekendOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -11,7 +10,9 @@ import type { ContextOptions, Interval } from '../types.ts'; /** * The {@link eachWeekendOfInterval} function options. */ -export interface EachWeekendOfIntervalOptions extends ContextOptions {} +export interface EachWeekendOfIntervalOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * The {@link eachWeekendOfInterval} function result type. @@ -61,7 +62,10 @@ export type EachWeekendOfIntervalResult< export function eachWeekendOfInterval< IntervalType extends Interval, Options extends EachWeekendOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachWeekendOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachWeekendOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); const dateInterval = eachDayOfInterval({ start, end }, options); const weekends: EachWeekendOfIntervalResult = []; diff --git a/src/date-fns/eachWeekendOfMonth/index.ts b/src/date-fns/eachWeekendOfMonth/index.ts index d2322e6..8f56e25 100644 --- a/src/date-fns/eachWeekendOfMonth/index.ts +++ b/src/date-fns/eachWeekendOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link eachWeekendOfMonth} function options. */ -export interface EachWeekendOfMonthOptions extends ContextOptions {} +export interface EachWeekendOfMonthOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name eachWeekendOfMonth @@ -42,7 +43,10 @@ export interface EachWeekendOfMonthOptions extends * // Sun Feb 27 2022 00:00:00 * // ] */ -export function eachWeekendOfMonth( +export function eachWeekendOfMonth< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EachWeekendOfMonthOptions, ): ResultDate[] { diff --git a/src/date-fns/eachWeekendOfYear/index.ts b/src/date-fns/eachWeekendOfYear/index.ts index 273bd90..1afd586 100644 --- a/src/date-fns/eachWeekendOfYear/index.ts +++ b/src/date-fns/eachWeekendOfYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link eachWeekendOfYear} function options. */ -export interface EachWeekendOfYearOptions extends ContextOptions {} +export interface EachWeekendOfYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name eachWeekendOfYear @@ -39,7 +40,10 @@ export interface EachWeekendOfYearOptions extends * // ] * ] */ -export function eachWeekendOfYear( +export function eachWeekendOfYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EachWeekendOfYearOptions, ): ResultDate[] { diff --git a/src/date-fns/eachYearOfInterval/index.ts b/src/date-fns/eachYearOfInterval/index.ts index c023039..73b122a 100644 --- a/src/date-fns/eachYearOfInterval/index.ts +++ b/src/date-fns/eachYearOfInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,8 +9,7 @@ import type { ContextOptions, Interval, StepOptions } from '../types.ts'; * The {@link eachYearOfInterval} function options. */ export interface EachYearOfIntervalOptions - extends StepOptions, - ContextOptions {} + extends StepOptions, ContextOptions {} /** * The {@link eachYearOfInterval} function result type. It resolves the proper data type. @@ -64,7 +62,10 @@ export type EachYearOfIntervalResult< export function eachYearOfInterval< IntervalType extends Interval, Options extends EachYearOfIntervalOptions | undefined = undefined, ->(interval: IntervalType, options?: Options): EachYearOfIntervalResult { +>( + interval: IntervalType, + options?: Options, +): EachYearOfIntervalResult { const { start, end } = normalizeInterval(options?.in, interval); let reversed = +start > +end; diff --git a/src/date-fns/endOfDay/index.ts b/src/date-fns/endOfDay/index.ts index 9c328b7..2f1d8f5 100644 --- a/src/date-fns/endOfDay/index.ts +++ b/src/date-fns/endOfDay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfDay} function options. */ -export interface EndOfDayOptions extends ContextOptions {} +export interface EndOfDayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfDay @@ -32,7 +33,10 @@ export interface EndOfDayOptions extends ContextOp * const result = endOfDay(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Sep 02 2014 23:59:59.999 */ -export function endOfDay( +export function endOfDay< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfDayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfDecade/index.ts b/src/date-fns/endOfDecade/index.ts index a78ddcd..b76bd78 100644 --- a/src/date-fns/endOfDecade/index.ts +++ b/src/date-fns/endOfDecade/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfDecade} function options. */ -export interface EndOfDecadeOptions extends ContextOptions {} +export interface EndOfDecadeOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfDecade @@ -31,7 +32,10 @@ export interface EndOfDecadeOptions extends Contex * const result = endOfDecade(new Date(1984, 4, 12, 00, 00, 00)) * //=> Dec 31 1989 23:59:59.999 */ -export function endOfDecade( +export function endOfDecade< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfDecadeOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfHour/index.ts b/src/date-fns/endOfHour/index.ts index 7409319..dd92b2e 100644 --- a/src/date-fns/endOfHour/index.ts +++ b/src/date-fns/endOfHour/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfHour} function options. */ -export interface EndOfHourOptions extends ContextOptions {} +export interface EndOfHourOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfHour @@ -32,7 +33,10 @@ export interface EndOfHourOptions extends ContextO * const result = endOfHour(new Date(2014, 8, 2, 11, 55)) * //=> Tue Sep 02 2014 11:59:59.999 */ -export function endOfHour( +export function endOfHour< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfHourOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfISOWeek/index.ts b/src/date-fns/endOfISOWeek/index.ts index 9915109..7189330 100644 --- a/src/date-fns/endOfISOWeek/index.ts +++ b/src/date-fns/endOfISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfISOWeek} function options. */ -export interface EndOfISOWeekOptions extends ContextOptions {} +export interface EndOfISOWeekOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfISOWeek @@ -34,7 +35,10 @@ export interface EndOfISOWeekOptions extends Conte * const result = endOfISOWeek(new Date(2014, 8, 2, 11, 55, 0)) * //=> Sun Sep 07 2014 23:59:59.999 */ -export function endOfISOWeek( +export function endOfISOWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfISOWeekOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfISOWeekYear/index.ts b/src/date-fns/endOfISOWeekYear/index.ts index 74510e4..c1cfa2d 100644 --- a/src/date-fns/endOfISOWeekYear/index.ts +++ b/src/date-fns/endOfISOWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfISOWeekYear} function options. */ -export interface EndOfISOWeekYearOptions extends ContextOptions {} +export interface EndOfISOWeekYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfISOWeekYear @@ -37,7 +38,10 @@ export interface EndOfISOWeekYearOptions extends C * const result = endOfISOWeekYear(new Date(2005, 6, 2)) * //=> Sun Jan 01 2006 23:59:59.999 */ -export function endOfISOWeekYear( +export function endOfISOWeekYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfISOWeekYearOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfMinute/index.ts b/src/date-fns/endOfMinute/index.ts index 4f64b82..02650b9 100644 --- a/src/date-fns/endOfMinute/index.ts +++ b/src/date-fns/endOfMinute/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfMinute} function options. */ -export interface EndOfMinuteOptions extends ContextOptions {} +export interface EndOfMinuteOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfMinute @@ -32,7 +33,10 @@ export interface EndOfMinuteOptions extends Contex * const result = endOfMinute(new Date(2014, 11, 1, 22, 15, 45, 400)) * //=> Mon Dec 01 2014 22:15:59.999 */ -export function endOfMinute( +export function endOfMinute< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfMinuteOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfMonth/index.ts b/src/date-fns/endOfMonth/index.ts index fbb0afd..50e28c5 100644 --- a/src/date-fns/endOfMonth/index.ts +++ b/src/date-fns/endOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfMonth} function options. */ -export interface EndOfMonthOptions extends ContextOptions {} +export interface EndOfMonthOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfMonth @@ -32,7 +33,10 @@ export interface EndOfMonthOptions extends Context * const result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Sep 30 2014 23:59:59.999 */ -export function endOfMonth( +export function endOfMonth< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfMonthOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfQuarter/index.ts b/src/date-fns/endOfQuarter/index.ts index 09e7634..8f3cb9c 100644 --- a/src/date-fns/endOfQuarter/index.ts +++ b/src/date-fns/endOfQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfQuarter} function options. */ -export interface EndOfQuarterOptions extends ContextOptions {} +export interface EndOfQuarterOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfQuarter @@ -32,7 +33,10 @@ export interface EndOfQuarterOptions extends Conte * const result = endOfQuarter(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Sep 30 2014 23:59:59.999 */ -export function endOfQuarter( +export function endOfQuarter< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfQuarterOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfSecond/index.ts b/src/date-fns/endOfSecond/index.ts index 47ed6a3..cfa31c0 100644 --- a/src/date-fns/endOfSecond/index.ts +++ b/src/date-fns/endOfSecond/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfSecond} function options. */ -export interface EndOfSecondOptions extends ContextOptions {} +export interface EndOfSecondOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfSecond @@ -32,7 +33,10 @@ export interface EndOfSecondOptions extends Contex * const result = endOfSecond(new Date(2014, 11, 1, 22, 15, 45, 400)) * //=> Mon Dec 01 2014 22:15:45.999 */ -export function endOfSecond( +export function endOfSecond< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: EndOfSecondOptions | undefined, ): ResultDate { diff --git a/src/date-fns/endOfToday/index.ts b/src/date-fns/endOfToday/index.ts index a556090..c7cb1d6 100644 --- a/src/date-fns/endOfToday/index.ts +++ b/src/date-fns/endOfToday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link endOfToday} function options. */ -export interface EndOfTodayOptions extends ContextOptions {} +export interface EndOfTodayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfToday @@ -31,7 +32,9 @@ export interface EndOfTodayOptions extends Context * const result = endOfToday() * //=> Mon Oct 6 2014 23:59:59.999 */ -export function endOfToday(options?: EndOfTodayOptions): ResultDate { +export function endOfToday( + options?: EndOfTodayOptions, +): ResultDate { return endOfDay(Date.now(), options); } diff --git a/src/date-fns/endOfTomorrow/index.ts b/src/date-fns/endOfTomorrow/index.ts index 4ced7a7..af11721 100644 --- a/src/date-fns/endOfTomorrow/index.ts +++ b/src/date-fns/endOfTomorrow/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link endOfTomorrow} function options. */ -export interface EndOfTomorrowOptions extends ContextOptions {} +export interface EndOfTomorrowOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfTomorrow @@ -30,9 +31,10 @@ export interface EndOfTomorrowOptions extends Cont * const result = endOfTomorrow() * //=> Tue Oct 7 2014 23:59:59.999 */ -export function endOfTomorrow( - options?: EndOfTomorrowOptions | undefined, -): ResultDate { +export function endOfTomorrow< + DateType extends Date, + ResultDate extends Date = DateType, +>(options?: EndOfTomorrowOptions | undefined): ResultDate { const now = constructNow(options?.in); const year = now.getFullYear(); const month = now.getMonth(); diff --git a/src/date-fns/endOfWeek/index.ts b/src/date-fns/endOfWeek/index.ts index abecaf7..8e501e7 100644 --- a/src/date-fns/endOfWeek/index.ts +++ b/src/date-fns/endOfWeek/index.ts @@ -1,18 +1,20 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getDefaultOptions } from '../_lib/defaultOptions/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link endOfWeek} function options. */ export interface EndOfWeekOptions - extends WeekOptions, - LocalizedOptions<'options'>, - ContextOptions {} + extends WeekOptions, LocalizedOptions<'options'>, ContextOptions {} /** * @name endOfWeek @@ -41,10 +43,10 @@ export interface EndOfWeekOptions * const result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 }) * //=> Sun Sep 07 2014 23:59:59.999 */ -export function endOfWeek( - date: DateArg, - options?: EndOfWeekOptions, -): ResultDate { +export function endOfWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>(date: DateArg, options?: EndOfWeekOptions): ResultDate { const defaultOptions = getDefaultOptions(); const weekStartsOn = options?.weekStartsOn ?? diff --git a/src/date-fns/endOfYear/index.ts b/src/date-fns/endOfYear/index.ts index 986233a..49ca04e 100644 --- a/src/date-fns/endOfYear/index.ts +++ b/src/date-fns/endOfYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link endOfYear} function options. */ -export interface EndOfYearOptions extends ContextOptions {} +export interface EndOfYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfYear @@ -32,10 +33,10 @@ export interface EndOfYearOptions extends ContextO * const result = endOfYear(new Date(2014, 8, 2, 11, 55, 0)) * //=> Wed Dec 31 2014 23:59:59.999 */ -export function endOfYear( - date: DateArg, - options?: EndOfYearOptions, -): ResultDate { +export function endOfYear< + DateType extends Date, + ResultDate extends Date = DateType, +>(date: DateArg, options?: EndOfYearOptions): ResultDate { const _date = toDate(date, options?.in); const year = _date.getFullYear(); _date.setFullYear(year + 1, 0, 0); diff --git a/src/date-fns/endOfYesterday/index.ts b/src/date-fns/endOfYesterday/index.ts index 41d3fce..5183804 100644 --- a/src/date-fns/endOfYesterday/index.ts +++ b/src/date-fns/endOfYesterday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link endOfYesterday} function options. */ -export interface EndOfYesterdayOptions extends ContextOptions {} +export interface EndOfYesterdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name endOfYesterday @@ -30,9 +31,10 @@ export interface EndOfYesterdayOptions extends Con * const result = endOfYesterday() * //=> Sun Oct 5 2014 23:59:59.999 */ -export function endOfYesterday( - options?: EndOfYesterdayOptions | undefined, -): ResultDate { +export function endOfYesterday< + DateType extends Date, + ResultDate extends Date = DateType, +>(options?: EndOfYesterdayOptions | undefined): ResultDate { const now = constructNow(options?.in); const date = constructFrom(options?.in, 0); date.setFullYear(now.getFullYear(), now.getMonth(), now.getDate() - 1); diff --git a/src/date-fns/format/index.ts b/src/date-fns/format/index.ts index 4542942..cf9196d 100644 --- a/src/date-fns/format/index.ts +++ b/src/date-fns/format/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -38,7 +37,8 @@ export { formatters, longFormatters }; // If there is no matching single quote // then the sequence will continue until the end of the string. // - . matches any single character unmatched by previous parts of the RegExps -const formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; +const formattingTokensRegExp = + /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also // sequences of symbols P, p, and the combinations like `PPPPPPPppppp` @@ -55,7 +55,8 @@ export type { FormatOptions as FormatDateOptions }; * The {@link format} function options. */ export interface FormatOptions - extends LocalizedOptions<'options' | 'localize' | 'formatLong'>, + extends + LocalizedOptions<'options' | 'localize' | 'formatLong'>, WeekOptions, FirstWeekContainsDateOptions, AdditionalTokensOptions, @@ -345,7 +346,11 @@ export interface FormatOptions * const result = format(new Date(2014, 6, 2, 15), "h 'o''clock'") * //=> "3 o'clock" */ -export function format(date: DateArg & {}, formatStr: string, options?: FormatOptions): string { +export function format( + date: DateArg & {}, + formatStr: string, + options?: FormatOptions, +): string { const defaultOptions = getDefaultOptions(); const locale = options?.locale ?? defaultOptions.locale ?? defaultLocale; @@ -397,7 +402,11 @@ export function format(date: DateArg & {}, formatStr: string, options?: Fo } if (firstCharacter.match(unescapedLatinCharacterRegExp)) { - throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`'); + throw new RangeError( + 'Format string contains an unescaped latin alphabet character `' + + firstCharacter + + '`', + ); } return { isToken: false, value: substring }; @@ -421,8 +430,10 @@ export function format(date: DateArg & {}, formatStr: string, options?: Fo const token = part.value; if ( - (!options?.useAdditionalWeekYearTokens && isProtectedWeekYearToken(token)) || - (!options?.useAdditionalDayOfYearTokens && isProtectedDayOfYearToken(token)) + (!options?.useAdditionalWeekYearTokens && + isProtectedWeekYearToken(token)) || + (!options?.useAdditionalDayOfYearTokens && + isProtectedDayOfYearToken(token)) ) { warnOrThrowProtectedError(token, formatStr, String(date)); } diff --git a/src/date-fns/formatDistance/index.ts b/src/date-fns/formatDistance/index.ts index 3b63968..bbcce32 100644 --- a/src/date-fns/formatDistance/index.ts +++ b/src/date-fns/formatDistance/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -15,7 +14,8 @@ import type { ContextOptions, DateArg, LocalizedOptions } from '../types.ts'; /** * The {@link formatDistance} function options. */ -export interface FormatDistanceOptions extends LocalizedOptions<'formatDistance'>, ContextOptions { +export interface FormatDistanceOptions + extends LocalizedOptions<'formatDistance'>, ContextOptions { /** Distances less than a minute are more detailed */ includeSeconds?: boolean; /** Add "X ago"/"in X" in the locale language */ @@ -125,7 +125,9 @@ export function formatDistance( const seconds = differenceInSeconds(earlierDate_, laterDate_); const offsetInSeconds = - (getTimezoneOffsetInMilliseconds(earlierDate_) - getTimezoneOffsetInMilliseconds(laterDate_)) / 1000; + (getTimezoneOffsetInMilliseconds(earlierDate_) - + getTimezoneOffsetInMilliseconds(laterDate_)) / + 1000; const minutes = Math.round((seconds - offsetInSeconds) / 60); let months; diff --git a/src/date-fns/formatDistanceStrict/index.ts b/src/date-fns/formatDistanceStrict/index.ts index 9975956..2d3abc1 100644 --- a/src/date-fns/formatDistanceStrict/index.ts +++ b/src/date-fns/formatDistanceStrict/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,14 +7,25 @@ import { getRoundingMethod } from '../_lib/getRoundingMethod/index.ts'; import { getTimezoneOffsetInMilliseconds } from '../_lib/getTimezoneOffsetInMilliseconds/index.ts'; import { normalizeDates } from '../_lib/normalizeDates/index.ts'; import { compareAsc } from '../compareAsc/index.ts'; -import { millisecondsInMinute, minutesInDay, minutesInMonth, minutesInYear } from '../constants/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, RoundingOptions } from '../types.ts'; +import { + millisecondsInMinute, + minutesInDay, + minutesInMonth, + minutesInYear, +} from '../constants/index.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + RoundingOptions, +} from '../types.ts'; /** * The {@link formatDistanceStrict} function options. */ export interface FormatDistanceStrictOptions - extends LocalizedOptions<'formatDistance'>, + extends + LocalizedOptions<'formatDistance'>, RoundingOptions, ContextOptions { /** Add "X ago"/"in X" in the locale language */ @@ -27,7 +37,8 @@ export interface FormatDistanceStrictOptions /** * The unit used to format the distance in {@link formatDistanceStrict}. */ -export type FormatDistanceStrictUnit = 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year'; +export type FormatDistanceStrictUnit = + 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year'; /** * @name formatDistanceStrict @@ -136,11 +147,14 @@ export function formatDistanceStrict( const milliseconds = earlierDate_.getTime() - laterDate_.getTime(); const minutes = milliseconds / millisecondsInMinute; - const timezoneOffset = getTimezoneOffsetInMilliseconds(earlierDate_) - getTimezoneOffsetInMilliseconds(laterDate_); + const timezoneOffset = + getTimezoneOffsetInMilliseconds(earlierDate_) - + getTimezoneOffsetInMilliseconds(laterDate_); // Use DST-normalized difference in minutes for years, months and days; // use regular difference in minutes for hours, minutes and seconds. - const dstNormalizedMinutes = (milliseconds - timezoneOffset) / millisecondsInMinute; + const dstNormalizedMinutes = + (milliseconds - timezoneOffset) / millisecondsInMinute; const defaultUnit = options?.unit; let unit: FormatDistanceStrictUnit; diff --git a/src/date-fns/formatDistanceToNow/index.ts b/src/date-fns/formatDistanceToNow/index.ts index 7bde6f0..0aa3563 100644 --- a/src/date-fns/formatDistanceToNow/index.ts +++ b/src/date-fns/formatDistanceToNow/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,8 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link formatDistanceToNow} function options. */ -export interface FormatDistanceToNowOptions extends FormatDistanceOptions, ContextOptions {} +export interface FormatDistanceToNowOptions + extends FormatDistanceOptions, ContextOptions {} /** * @name formatDistanceToNow @@ -93,7 +93,10 @@ export interface FormatDistanceToNowOptions extends FormatDistanceOptions, Conte * ) * //=> 'pli ol 1 jaro' */ -export function formatDistanceToNow(date: DateArg & {}, options?: FormatDistanceToNowOptions): string { +export function formatDistanceToNow( + date: DateArg & {}, + options?: FormatDistanceToNowOptions, +): string { return formatDistance(date, constructNow(date), options); } diff --git a/src/date-fns/formatDistanceToNowStrict/index.ts b/src/date-fns/formatDistanceToNowStrict/index.ts index 5eeb8e6..06c3c1a 100644 --- a/src/date-fns/formatDistanceToNowStrict/index.ts +++ b/src/date-fns/formatDistanceToNowStrict/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,8 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link formatDistanceToNowStrict} function options. */ -export interface FormatDistanceToNowStrictOptions extends FormatDistanceStrictOptions, ContextOptions {} +export interface FormatDistanceToNowStrictOptions + extends FormatDistanceStrictOptions, ContextOptions {} /** * @name formatDistanceToNowStrict diff --git a/src/date-fns/formatDuration/index.ts b/src/date-fns/formatDuration/index.ts index 4dabbe8..da72326 100644 --- a/src/date-fns/formatDuration/index.ts +++ b/src/date-fns/formatDuration/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -19,7 +18,15 @@ export interface FormatDurationOptions extends LocalizedOptions<'formatDistance' delimiter?: string; } -const defaultFormat: DurationUnit[] = ['years', 'months', 'weeks', 'days', 'hours', 'minutes', 'seconds']; +const defaultFormat: DurationUnit[] = [ + 'years', + 'months', + 'weeks', + 'days', + 'hours', + 'minutes', + 'seconds', +]; /** * @name formatDuration @@ -79,7 +86,10 @@ const defaultFormat: DurationUnit[] = ['years', 'months', 'weeks', 'days', 'hour * formatDuration({ years: 2, months: 9, weeks: 3 }, { delimiter: ', ' }) * //=> '2 years, 9 months, 3 weeks' */ -export function formatDuration(duration: Duration, options?: FormatDurationOptions): string { +export function formatDuration( + duration: Duration, + options?: FormatDurationOptions, +): string { const defaultOptions = getDefaultOptions(); const locale = options?.locale ?? defaultOptions.locale ?? defaultLocale; const format = options?.format ?? defaultFormat; @@ -92,7 +102,8 @@ export function formatDuration(duration: Duration, options?: FormatDurationOptio const result = format .reduce((acc, unit) => { - const token = `x${unit.replace(/(^.)/, (m) => m.toUpperCase())}` as FormatDistanceToken; + const token = + `x${unit.replace(/(^.)/, (m) => m.toUpperCase())}` as FormatDistanceToken; const value = duration[unit]; if (value !== undefined && (zero || duration[unit])) { return acc.concat(locale.formatDistance(token, value)); diff --git a/src/date-fns/formatISO/index.ts b/src/date-fns/formatISO/index.ts index 2e941d3..ef2dbaf 100644 --- a/src/date-fns/formatISO/index.ts +++ b/src/date-fns/formatISO/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,8 @@ import type { ContextOptions, DateArg, ISOFormatOptions } from '../types.ts'; /** * The {@link formatISO} function options. */ -export interface FormatISOOptions extends ISOFormatOptions, ContextOptions {} +export interface FormatISOOptions + extends ISOFormatOptions, ContextOptions {} /** * @name formatISO @@ -46,7 +46,10 @@ export interface FormatISOOptions extends ISOFormatOptions, ContextOptions * const result = formatISO(new Date(2019, 8, 18, 19, 0, 52), { representation: 'time' }) * //=> '19:00:52Z' */ -export function formatISO(date: DateArg & {}, options?: FormatISOOptions): string { +export function formatISO( + date: DateArg & {}, + options?: FormatISOOptions, +): string { const date_ = toDate(date, options?.in); if (isNaN(+date_)) { diff --git a/src/date-fns/formatISO9075/index.ts b/src/date-fns/formatISO9075/index.ts index 6f25325..14664a5 100644 --- a/src/date-fns/formatISO9075/index.ts +++ b/src/date-fns/formatISO9075/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,8 @@ import type { ContextOptions, DateArg, ISOFormatOptions } from '../types.ts'; /** * The {@link formatISO9075} function options. */ -export interface FormatISO9075Options extends ISOFormatOptions, ContextOptions {} +export interface FormatISO9075Options + extends ISOFormatOptions, ContextOptions {} /** * @name formatISO9075 @@ -47,7 +47,10 @@ export interface FormatISO9075Options extends ISOFormatOptions, ContextOptions '19:00:52' */ -export function formatISO9075(date: DateArg & {}, options?: FormatISO9075Options): string { +export function formatISO9075( + date: DateArg & {}, + options?: FormatISO9075Options, +): string { const date_ = toDate(date, options?.in); if (!isValid(date_)) { diff --git a/src/date-fns/formatISODuration/index.ts b/src/date-fns/formatISODuration/index.ts index a0b7cda..7e33f67 100644 --- a/src/date-fns/formatISODuration/index.ts +++ b/src/date-fns/formatISODuration/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -29,7 +28,14 @@ import type { Duration } from '../types.ts'; * //=> 'P39Y2M20DT0H0M0S' */ export function formatISODuration(duration: Duration): string { - const { years = 0, months = 0, days = 0, hours = 0, minutes = 0, seconds = 0 } = duration; + const { + years = 0, + months = 0, + days = 0, + hours = 0, + minutes = 0, + seconds = 0, + } = duration; return `P${years}Y${months}M${days}DT${hours}H${minutes}M${seconds}S`; } diff --git a/src/date-fns/formatRFC3339/index.ts b/src/date-fns/formatRFC3339/index.ts index 33273fc..c28dcbf 100644 --- a/src/date-fns/formatRFC3339/index.ts +++ b/src/date-fns/formatRFC3339/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -42,7 +41,10 @@ export interface FormatRFC3339Options extends ContextOptions { * }) * //=> '2019-09-18T19:00:52.234Z' */ -export function formatRFC3339(date: DateArg & {}, options?: FormatRFC3339Options): string { +export function formatRFC3339( + date: DateArg & {}, + options?: FormatRFC3339Options, +): string { const date_ = toDate(date, options?.in); if (!isValid(date_)) { @@ -62,7 +64,9 @@ export function formatRFC3339(date: DateArg & {}, options?: FormatRFC3339O let fractionalSecond = ''; if (fractionDigits > 0) { const milliseconds = date_.getMilliseconds(); - const fractionalSeconds = Math.trunc(milliseconds * Math.pow(10, fractionDigits - 3)); + const fractionalSeconds = Math.trunc( + milliseconds * Math.pow(10, fractionDigits - 3), + ); fractionalSecond = '.' + addLeadingZeros(fractionalSeconds, fractionDigits); } diff --git a/src/date-fns/formatRFC7231/index.ts b/src/date-fns/formatRFC7231/index.ts index c3056e1..f548a98 100644 --- a/src/date-fns/formatRFC7231/index.ts +++ b/src/date-fns/formatRFC7231/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,20 @@ import type { DateArg } from '../types.ts'; const days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; -const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; +const months = [ + 'Jan', + 'Feb', + 'Mar', + 'Apr', + 'May', + 'Jun', + 'Jul', + 'Aug', + 'Sep', + 'Oct', + 'Nov', + 'Dec', +]; /** * @name formatRFC7231 diff --git a/src/date-fns/formatRelative/index.ts b/src/date-fns/formatRelative/index.ts index 679d899..b6554de 100644 --- a/src/date-fns/formatRelative/index.ts +++ b/src/date-fns/formatRelative/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,13 +7,19 @@ import { normalizeDates } from '../_lib/normalizeDates/index.ts'; import { differenceInCalendarDays } from '../differenceInCalendarDays/index.ts'; import { format } from '../format/index.ts'; import type { FormatRelativeToken } from '../locale/types.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link formatRelative} function options. */ export interface FormatRelativeOptions - extends LocalizedOptions<'options' | 'localize' | 'formatLong' | 'formatRelative'>, + extends + LocalizedOptions<'options' | 'localize' | 'formatLong' | 'formatRelative'>, WeekOptions, ContextOptions {} diff --git a/src/date-fns/fromUnixTime/index.ts b/src/date-fns/fromUnixTime/index.ts index 33703d6..c26ebc6 100644 --- a/src/date-fns/fromUnixTime/index.ts +++ b/src/date-fns/fromUnixTime/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link fromUnixTime} function options. */ -export interface FromUnixTimeOptions extends ContextOptions {} +export interface FromUnixTimeOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name fromUnixTime diff --git a/src/date-fns/getDate/index.ts b/src/date-fns/getDate/index.ts index 00a5fdd..7b448ae 100644 --- a/src/date-fns/getDate/index.ts +++ b/src/date-fns/getDate/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetDateOptions extends ContextOptions {} * const result = getDate(new Date(2012, 1, 29)) * //=> 29 */ -export function getDate(date: DateArg & {}, options?: GetDateOptions | undefined): number { +export function getDate( + date: DateArg & {}, + options?: GetDateOptions | undefined, +): number { return toDate(date, options?.in).getDate(); } diff --git a/src/date-fns/getDay/index.ts b/src/date-fns/getDay/index.ts index 515db2c..db83a0b 100644 --- a/src/date-fns/getDay/index.ts +++ b/src/date-fns/getDay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetDayOptions extends ContextOptions {} * const result = getDay(new Date(2012, 1, 29)) * //=> 3 */ -export function getDay(date: DateArg & {}, options?: GetDayOptions | undefined): number { +export function getDay( + date: DateArg & {}, + options?: GetDayOptions | undefined, +): number { return toDate(date, options?.in).getDay(); } diff --git a/src/date-fns/getDayOfYear/index.ts b/src/date-fns/getDayOfYear/index.ts index e4a8556..d1aaf50 100644 --- a/src/date-fns/getDayOfYear/index.ts +++ b/src/date-fns/getDayOfYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -30,7 +29,10 @@ export interface GetDayOfYearOptions extends ContextOptions {} * const result = getDayOfYear(new Date(2014, 6, 2)) * //=> 183 */ -export function getDayOfYear(date: DateArg & {}, options?: GetDayOfYearOptions | undefined): number { +export function getDayOfYear( + date: DateArg & {}, + options?: GetDayOfYearOptions | undefined, +): number { const _date = toDate(date, options?.in); const diff = differenceInCalendarDays(_date, startOfYear(_date)); const dayOfYear = diff + 1; diff --git a/src/date-fns/getDaysInMonth/index.ts b/src/date-fns/getDaysInMonth/index.ts index 9e278ee..1a1ea76 100644 --- a/src/date-fns/getDaysInMonth/index.ts +++ b/src/date-fns/getDaysInMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -29,7 +28,10 @@ export interface GetDaysInMonthOptions extends ContextOptions {} * const result = getDaysInMonth(new Date(2000, 1)) * //=> 29 */ -export function getDaysInMonth(date: DateArg & {}, options?: GetDaysInMonthOptions | undefined): number { +export function getDaysInMonth( + date: DateArg & {}, + options?: GetDaysInMonthOptions | undefined, +): number { const _date = toDate(date, options?.in); const year = _date.getFullYear(); const monthIndex = _date.getMonth(); diff --git a/src/date-fns/getDaysInYear/index.ts b/src/date-fns/getDaysInYear/index.ts index 40a6086..7648eb0 100644 --- a/src/date-fns/getDaysInYear/index.ts +++ b/src/date-fns/getDaysInYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -29,7 +28,10 @@ export interface GetDaysInYearOptions extends ContextOptions {} * const result = getDaysInYear(new Date(2012, 0, 1)) * //=> 366 */ -export function getDaysInYear(date: DateArg & {}, options?: GetDaysInYearOptions | undefined): number { +export function getDaysInYear( + date: DateArg & {}, + options?: GetDaysInYearOptions | undefined, +): number { const _date = toDate(date, options?.in); if (Number.isNaN(+_date)) return NaN; return isLeapYear(_date) ? 366 : 365; diff --git a/src/date-fns/getDecade/index.ts b/src/date-fns/getDecade/index.ts index 9c01947..502f5a8 100644 --- a/src/date-fns/getDecade/index.ts +++ b/src/date-fns/getDecade/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetDecadeOptions extends ContextOptions {} * const result = getDecade(new Date(1942, 10, 27)) * //=> 1940 */ -export function getDecade(date: DateArg & {}, options?: GetDecadeOptions | undefined): number { +export function getDecade( + date: DateArg & {}, + options?: GetDecadeOptions | undefined, +): number { // TODO: Switch to more technical definition in of decades that start with 1 // end with 0. I.e. 2001-2010 instead of current 2000-2009. It's a breaking // change, so it can only be done in 4.0. diff --git a/src/date-fns/getDefaultOptions/index.ts b/src/date-fns/getDefaultOptions/index.ts index 531f509..0d53249 100644 --- a/src/date-fns/getDefaultOptions/index.ts +++ b/src/date-fns/getDefaultOptions/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/getHours/index.ts b/src/date-fns/getHours/index.ts index ebccfcd..26a00b9 100644 --- a/src/date-fns/getHours/index.ts +++ b/src/date-fns/getHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetHoursOptions extends ContextOptions {} * const result = getHours(new Date(2012, 1, 29, 11, 45)) * //=> 11 */ -export function getHours(date: DateArg & {}, options?: GetHoursOptions | undefined): number { +export function getHours( + date: DateArg & {}, + options?: GetHoursOptions | undefined, +): number { return toDate(date, options?.in).getHours(); } diff --git a/src/date-fns/getISODay/index.ts b/src/date-fns/getISODay/index.ts index 8c207d1..deb820e 100644 --- a/src/date-fns/getISODay/index.ts +++ b/src/date-fns/getISODay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,7 +30,10 @@ export interface GetISODayOptions extends ContextOptions {} * const result = getISODay(new Date(2012, 1, 26)) * //=> 7 */ -export function getISODay(date: DateArg & {}, options?: GetISODayOptions): number { +export function getISODay( + date: DateArg & {}, + options?: GetISODayOptions, +): number { const day = toDate(date, options?.in).getDay(); return day === 0 ? 7 : day; } diff --git a/src/date-fns/getISOWeek/index.ts b/src/date-fns/getISOWeek/index.ts index 7143284..20a3f30 100644 --- a/src/date-fns/getISOWeek/index.ts +++ b/src/date-fns/getISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -33,7 +32,10 @@ export interface GetISOWeekOptions extends ContextOptions {} * const result = getISOWeek(new Date(2005, 0, 2)) * //=> 53 */ -export function getISOWeek(date: DateArg & {}, options?: GetISOWeekOptions | undefined): number { +export function getISOWeek( + date: DateArg & {}, + options?: GetISOWeekOptions | undefined, +): number { const _date = toDate(date, options?.in); const diff = +startOfISOWeek(_date) - +startOfISOWeekYear(_date); diff --git a/src/date-fns/getISOWeekYear/index.ts b/src/date-fns/getISOWeekYear/index.ts index 9006974..533b3d7 100644 --- a/src/date-fns/getISOWeekYear/index.ts +++ b/src/date-fns/getISOWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -32,7 +31,10 @@ export interface GetISOWeekYearOptions extends ContextOptions {} * const result = getISOWeekYear(new Date(2005, 0, 2)) * //=> 2004 */ -export function getISOWeekYear(date: DateArg & {}, options?: GetISOWeekYearOptions | undefined): number { +export function getISOWeekYear( + date: DateArg & {}, + options?: GetISOWeekYearOptions | undefined, +): number { const _date = toDate(date, options?.in); const year = _date.getFullYear(); diff --git a/src/date-fns/getISOWeeksInYear/index.ts b/src/date-fns/getISOWeeksInYear/index.ts index 06cee70..84b84e2 100644 --- a/src/date-fns/getISOWeeksInYear/index.ts +++ b/src/date-fns/getISOWeeksInYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -32,7 +31,10 @@ export interface GetISOWeeksInYearOptions extends ContextOptions {} * const result = getISOWeeksInYear(new Date(2015, 1, 11)) * //=> 53 */ -export function getISOWeeksInYear(date: DateArg & {}, options?: GetISOWeeksInYearOptions | undefined): number { +export function getISOWeeksInYear( + date: DateArg & {}, + options?: GetISOWeeksInYearOptions | undefined, +): number { const thisYear = startOfISOWeekYear(date, options); const nextYear = startOfISOWeekYear(addWeeks(thisYear, 60)); const diff = +nextYear - +thisYear; diff --git a/src/date-fns/getMilliseconds/index.ts b/src/date-fns/getMilliseconds/index.ts index 5e0a411..0026a4e 100644 --- a/src/date-fns/getMilliseconds/index.ts +++ b/src/date-fns/getMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/getMinutes/index.ts b/src/date-fns/getMinutes/index.ts index 54095dd..6669405 100644 --- a/src/date-fns/getMinutes/index.ts +++ b/src/date-fns/getMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetMinutesOptions extends ContextOptions {} * const result = getMinutes(new Date(2012, 1, 29, 11, 45, 5)) * //=> 45 */ -export function getMinutes(date: DateArg & {}, options?: GetMinutesOptions | undefined): number { +export function getMinutes( + date: DateArg & {}, + options?: GetMinutesOptions | undefined, +): number { return toDate(date, options?.in).getMinutes(); } diff --git a/src/date-fns/getMonth/index.ts b/src/date-fns/getMonth/index.ts index 2da3fd7..bb357bb 100644 --- a/src/date-fns/getMonth/index.ts +++ b/src/date-fns/getMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetMonthOptions extends ContextOptions {} * const result = getMonth(new Date(2012, 1, 29)) * //=> 1 */ -export function getMonth(date: DateArg & {}, options?: GetMonthOptions | undefined): number { +export function getMonth( + date: DateArg & {}, + options?: GetMonthOptions | undefined, +): number { return toDate(date, options?.in).getMonth(); } diff --git a/src/date-fns/getOverlappingDaysInIntervals/index.ts b/src/date-fns/getOverlappingDaysInIntervals/index.ts index de673b6..acb3c13 100644 --- a/src/date-fns/getOverlappingDaysInIntervals/index.ts +++ b/src/date-fns/getOverlappingDaysInIntervals/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -43,9 +42,18 @@ import type { Interval } from '../types.ts'; * //=> 0 */ -export function getOverlappingDaysInIntervals(intervalLeft: Interval, intervalRight: Interval): number { - const [leftStart, leftEnd] = [+toDate(intervalLeft.start), +toDate(intervalLeft.end)].sort((a, b) => a - b); - const [rightStart, rightEnd] = [+toDate(intervalRight.start), +toDate(intervalRight.end)].sort((a, b) => a - b); +export function getOverlappingDaysInIntervals( + intervalLeft: Interval, + intervalRight: Interval, +): number { + const [leftStart, leftEnd] = [ + +toDate(intervalLeft.start), + +toDate(intervalLeft.end), + ].sort((a, b) => a - b); + const [rightStart, rightEnd] = [ + +toDate(intervalRight.start), + +toDate(intervalRight.end), + ].sort((a, b) => a - b); // Prevent NaN result if intervals don't overlap at all. const isOverlapping = leftStart < rightEnd && rightStart < leftEnd; diff --git a/src/date-fns/getQuarter/index.ts b/src/date-fns/getQuarter/index.ts index b73fb03..4c67d27 100644 --- a/src/date-fns/getQuarter/index.ts +++ b/src/date-fns/getQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetQuarterOptions extends ContextOptions {} * const result = getQuarter(new Date(2014, 6, 2)); * //=> 3 */ -export function getQuarter(date: DateArg & {}, options?: GetQuarterOptions | undefined): number { +export function getQuarter( + date: DateArg & {}, + options?: GetQuarterOptions | undefined, +): number { const _date = toDate(date, options?.in); const quarter = Math.trunc(_date.getMonth() / 3) + 1; return quarter; diff --git a/src/date-fns/getSeconds/index.ts b/src/date-fns/getSeconds/index.ts index 97fdc77..bc6f4cc 100644 --- a/src/date-fns/getSeconds/index.ts +++ b/src/date-fns/getSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/getTime/index.ts b/src/date-fns/getTime/index.ts index d2e5732..f072c0a 100644 --- a/src/date-fns/getTime/index.ts +++ b/src/date-fns/getTime/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/getUnixTime/index.ts b/src/date-fns/getUnixTime/index.ts index 34ea424..d23dbc4 100644 --- a/src/date-fns/getUnixTime/index.ts +++ b/src/date-fns/getUnixTime/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/getWeek/index.ts b/src/date-fns/getWeek/index.ts index d125c91..6a42553 100644 --- a/src/date-fns/getWeek/index.ts +++ b/src/date-fns/getWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,13 +5,20 @@ import { millisecondsInWeek } from '../constants/index.ts'; import { startOfWeek } from '../startOfWeek/index.ts'; import { startOfWeekYear } from '../startOfWeekYear/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, FirstWeekContainsDateOptions, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + FirstWeekContainsDateOptions, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link getWeek} function options. */ export interface GetWeekOptions - extends LocalizedOptions<'options'>, + extends + LocalizedOptions<'options'>, WeekOptions, FirstWeekContainsDateOptions, ContextOptions {} @@ -51,7 +57,10 @@ export interface GetWeekOptions * }) * //=> 53 */ -export function getWeek(date: DateArg & {}, options?: GetWeekOptions | undefined): number { +export function getWeek( + date: DateArg & {}, + options?: GetWeekOptions | undefined, +): number { const _date = toDate(date, options?.in); const diff = +startOfWeek(_date, options) - +startOfWeekYear(_date, options); diff --git a/src/date-fns/getWeekOfMonth/index.ts b/src/date-fns/getWeekOfMonth/index.ts index 12fd003..da6d275 100644 --- a/src/date-fns/getWeekOfMonth/index.ts +++ b/src/date-fns/getWeekOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -7,12 +6,18 @@ import { getDate } from '../getDate/index.ts'; import { getDay } from '../getDay/index.ts'; import { startOfMonth } from '../startOfMonth/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link getWeekOfMonth} function options. */ -export interface GetWeekOfMonthOptions extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} +export interface GetWeekOfMonthOptions + extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} /** * @name getWeekOfMonth @@ -32,7 +37,10 @@ export interface GetWeekOfMonthOptions extends LocalizedOptions<'options'>, Week * const result = getWeekOfMonth(new Date(2017, 10, 9)) * //=> 2 */ -export function getWeekOfMonth(date: DateArg & {}, options?: GetWeekOfMonthOptions): number { +export function getWeekOfMonth( + date: DateArg & {}, + options?: GetWeekOfMonthOptions, +): number { const defaultOptions = getDefaultOptions(); const weekStartsOn = options?.weekStartsOn ?? diff --git a/src/date-fns/getWeekYear/index.ts b/src/date-fns/getWeekYear/index.ts index b578681..fff29f5 100644 --- a/src/date-fns/getWeekYear/index.ts +++ b/src/date-fns/getWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,13 +5,20 @@ import { getDefaultOptions } from '../_lib/defaultOptions/index.ts'; import { constructFrom } from '../constructFrom/index.ts'; import { startOfWeek } from '../startOfWeek/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, FirstWeekContainsDateOptions, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + FirstWeekContainsDateOptions, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link getWeekYear} function options. */ export interface GetWeekYearOptions - extends LocalizedOptions<'options'>, + extends + LocalizedOptions<'options'>, WeekOptions, FirstWeekContainsDateOptions, ContextOptions {} @@ -51,7 +57,10 @@ export interface GetWeekYearOptions * const result = getWeekYear(new Date(2004, 11, 26), { firstWeekContainsDate: 4 }) * //=> 2004 */ -export function getWeekYear(date: DateArg & {}, options?: GetWeekYearOptions): number { +export function getWeekYear( + date: DateArg & {}, + options?: GetWeekYearOptions, +): number { const _date = toDate(date, options?.in); const year = _date.getFullYear(); diff --git a/src/date-fns/getWeeksInMonth/index.ts b/src/date-fns/getWeeksInMonth/index.ts index 6131ebf..a07a8b9 100644 --- a/src/date-fns/getWeeksInMonth/index.ts +++ b/src/date-fns/getWeeksInMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,12 +5,18 @@ import { differenceInCalendarWeeks } from '../differenceInCalendarWeeks/index.ts import { lastDayOfMonth } from '../lastDayOfMonth/index.ts'; import { startOfMonth } from '../startOfMonth/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link getWeeksInMonth} function options. */ -export interface GetWeeksInMonthOptions extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} +export interface GetWeeksInMonthOptions + extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} /** * @name getWeeksInMonth @@ -37,10 +42,17 @@ export interface GetWeeksInMonthOptions extends LocalizedOptions<'options'>, Wee * const result = getWeeksInMonth(new Date(2017, 6, 5), { weekStartsOn: 1 }) * //=> 6 */ -export function getWeeksInMonth(date: DateArg & {}, options?: GetWeeksInMonthOptions | undefined): number { +export function getWeeksInMonth( + date: DateArg & {}, + options?: GetWeeksInMonthOptions | undefined, +): number { const contextDate = toDate(date, options?.in); return ( - differenceInCalendarWeeks(lastDayOfMonth(contextDate, options), startOfMonth(contextDate, options), options) + 1 + differenceInCalendarWeeks( + lastDayOfMonth(contextDate, options), + startOfMonth(contextDate, options), + options, + ) + 1 ); } diff --git a/src/date-fns/getYear/index.ts b/src/date-fns/getYear/index.ts index 98d5ff8..83a46fc 100644 --- a/src/date-fns/getYear/index.ts +++ b/src/date-fns/getYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface GetYearOptions extends ContextOptions {} * const result = getYear(new Date(2014, 6, 2)) * //=> 2014 */ -export function getYear(date: DateArg & {}, options?: GetYearOptions | undefined): number { +export function getYear( + date: DateArg & {}, + options?: GetYearOptions | undefined, +): number { return toDate(date, options?.in).getFullYear(); } diff --git a/src/date-fns/hoursToMilliseconds/index.ts b/src/date-fns/hoursToMilliseconds/index.ts index fe10606..b3605b5 100644 --- a/src/date-fns/hoursToMilliseconds/index.ts +++ b/src/date-fns/hoursToMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/hoursToMinutes/index.ts b/src/date-fns/hoursToMinutes/index.ts index f517638..0e165b9 100644 --- a/src/date-fns/hoursToMinutes/index.ts +++ b/src/date-fns/hoursToMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/hoursToSeconds/index.ts b/src/date-fns/hoursToSeconds/index.ts index edf21f3..379dff1 100644 --- a/src/date-fns/hoursToSeconds/index.ts +++ b/src/date-fns/hoursToSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/index.ts b/src/date-fns/index.ts index 4f4cb3d..b4f0df8 100644 --- a/src/date-fns/index.ts +++ b/src/date-fns/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/interval/index.ts b/src/date-fns/interval/index.ts index 992cc2d..cdd9def 100644 --- a/src/date-fns/interval/index.ts +++ b/src/date-fns/interval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg, NormalizedInterval } from '../types.ts'; /** * The {@link interval} function options. */ -export interface IntervalOptions extends ContextOptions { +export interface IntervalOptions< + ContextDate extends Date = Date, +> extends ContextOptions { /** Asserts that the interval is positive (start is after the end). */ assertPositive?: boolean; } @@ -59,15 +60,24 @@ export function interval< StartDate extends DateArg, EndDate extends DateArg, Options extends IntervalOptions | undefined = undefined, ->(start: StartDate, end: EndDate, options?: Options): IntervalResult { +>( + start: StartDate, + end: EndDate, + options?: Options, +): IntervalResult { const [_start, _end] = normalizeDates(options?.in, start, end); if (isNaN(+_start)) throw new TypeError('Start date is invalid'); if (isNaN(+_end)) throw new TypeError('End date is invalid'); - if (options?.assertPositive && +_start > +_end) throw new TypeError('End date must be after start date'); + if (options?.assertPositive && +_start > +_end) + throw new TypeError('End date must be after start date'); - return { start: _start, end: _end } as IntervalResult; + return { start: _start, end: _end } as IntervalResult< + StartDate, + EndDate, + Options + >; } /* eslint-enable */ diff --git a/src/date-fns/intervalToDuration/index.ts b/src/date-fns/intervalToDuration/index.ts index 04f7310..673b648 100644 --- a/src/date-fns/intervalToDuration/index.ts +++ b/src/date-fns/intervalToDuration/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -38,7 +37,10 @@ export interface IntervalToDurationOptions extends ContextOptions {} * }); * //=> { years: 39, months: 2, days: 20, hours: 7, minutes: 5, seconds: 0 } */ -export function intervalToDuration(interval: Interval, options?: IntervalToDurationOptions | undefined): Duration { +export function intervalToDuration( + interval: Interval, + options?: IntervalToDurationOptions | undefined, +): Duration { const { start, end } = normalizeInterval(options?.in, interval); const duration: Duration = {}; diff --git a/src/date-fns/intlFormat/index.ts b/src/date-fns/intlFormat/index.ts index 07b62a1..f124ff4 100644 --- a/src/date-fns/intlFormat/index.ts +++ b/src/date-fns/intlFormat/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -67,7 +66,10 @@ export function intlFormat(date: DateArg & {}): string; * }) * //=> 2019. 10. 4. */ -export function intlFormat(date: DateArg & {}, localeOptions: IntlFormatLocaleOptions): string; +export function intlFormat( + date: DateArg & {}, + localeOptions: IntlFormatLocaleOptions, +): string; /** * @param date - The date to format @@ -88,7 +90,10 @@ export function intlFormat(date: DateArg & {}, localeOptions: IntlFormatLo * }) * //=> 10/4/2019, 12 PM */ -export function intlFormat(date: DateArg & {}, formatOptions: IntlFormatFormatOptions): string; +export function intlFormat( + date: DateArg & {}, + formatOptions: IntlFormatFormatOptions, +): string; /** * @param date - The date to format @@ -131,7 +136,9 @@ export function intlFormat( localeOptions = formatOrLocale; } - return new Intl.DateTimeFormat(localeOptions?.locale, formatOptions).format(toDate(date)); + return new Intl.DateTimeFormat(localeOptions?.locale, formatOptions).format( + toDate(date), + ); } function isFormatOptions( diff --git a/src/date-fns/intlFormatDistance/index.ts b/src/date-fns/intlFormatDistance/index.ts index 737e6be..fcbe0e3 100644 --- a/src/date-fns/intlFormatDistance/index.ts +++ b/src/date-fns/intlFormatDistance/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -25,7 +24,8 @@ import type { ContextOptions, DateArg, MaybeArray } from '../types.ts'; /** * The {@link intlFormatDistance} function options. */ -export interface IntlFormatDistanceOptions extends Intl.RelativeTimeFormatOptions, ContextOptions { +export interface IntlFormatDistanceOptions + extends Intl.RelativeTimeFormatOptions, ContextOptions { /** Force the distance unit */ unit?: IntlFormatDistanceUnit; /** The locales to use (see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument) */ @@ -35,7 +35,8 @@ export interface IntlFormatDistanceOptions extends Intl.RelativeTimeFormatOption /** * The unit used to format the distance in {@link intlFormatDistance}. */ -export type IntlFormatDistanceUnit = 'year' | 'quarter' | 'month' | 'week' | 'day' | 'hour' | 'minute' | 'second'; +export type IntlFormatDistanceUnit = + 'year' | 'quarter' | 'month' | 'week' | 'day' | 'hour' | 'minute' | 'second'; /** * @name intlFormatDistance @@ -142,7 +143,11 @@ export function intlFormatDistance( let value: number = 0; let unit: Intl.RelativeTimeFormatUnit; - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); if (!options?.unit) { // Get the unit based on diffInSeconds calculations if no unit is specified diff --git a/src/date-fns/isAfter/index.ts b/src/date-fns/isAfter/index.ts index dbd386c..d5f885a 100644 --- a/src/date-fns/isAfter/index.ts +++ b/src/date-fns/isAfter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -23,7 +22,10 @@ import type { DateArg } from '../types.ts'; * const result = isAfter(new Date(1989, 6, 10), new Date(1987, 1, 11)) * //=> true */ -export function isAfter(date: DateArg & {}, dateToCompare: DateArg & {}): boolean { +export function isAfter( + date: DateArg & {}, + dateToCompare: DateArg & {}, +): boolean { return +toDate(date) > +toDate(dateToCompare); } diff --git a/src/date-fns/isBefore/index.ts b/src/date-fns/isBefore/index.ts index 95d6c83..89a2ea3 100644 --- a/src/date-fns/isBefore/index.ts +++ b/src/date-fns/isBefore/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -23,7 +22,10 @@ import type { DateArg } from '../types.ts'; * const result = isBefore(new Date(1989, 6, 10), new Date(1987, 1, 11)) * //=> false */ -export function isBefore(date: DateArg & {}, dateToCompare: DateArg & {}): boolean { +export function isBefore( + date: DateArg & {}, + dateToCompare: DateArg & {}, +): boolean { return +toDate(date) < +toDate(dateToCompare); } diff --git a/src/date-fns/isDate/index.ts b/src/date-fns/isDate/index.ts index 69c9ba0..1e68be8 100644 --- a/src/date-fns/isDate/index.ts +++ b/src/date-fns/isDate/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -36,7 +35,9 @@ */ export function isDate(value: unknown): value is Date { return ( - value instanceof Date || (typeof value === 'object' && Object.prototype.toString.call(value) === '[object Date]') + value instanceof Date || + (typeof value === 'object' && + Object.prototype.toString.call(value) === '[object Date]') ); } diff --git a/src/date-fns/isEqual/index.ts b/src/date-fns/isEqual/index.ts index 7b1e9a3..5c4c2c2 100644 --- a/src/date-fns/isEqual/index.ts +++ b/src/date-fns/isEqual/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,10 @@ import type { DateArg } from '../types.ts'; * ) * //=> false */ -export function isEqual(leftDate: DateArg & {}, rightDate: DateArg & {}): boolean { +export function isEqual( + leftDate: DateArg & {}, + rightDate: DateArg & {}, +): boolean { return +toDate(leftDate) === +toDate(rightDate); } diff --git a/src/date-fns/isExists/index.ts b/src/date-fns/isExists/index.ts index 60efdf5..b5b438c 100644 --- a/src/date-fns/isExists/index.ts +++ b/src/date-fns/isExists/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,11 @@ */ export function isExists(year: number, month: number, day: number): boolean { const date = new Date(year, month, day); - return date.getFullYear() === year && date.getMonth() === month && date.getDate() === day; + return ( + date.getFullYear() === year && + date.getMonth() === month && + date.getDate() === day + ); } /* eslint-enable */ diff --git a/src/date-fns/isFirstDayOfMonth/index.ts b/src/date-fns/isFirstDayOfMonth/index.ts index 90a2b65..5959130 100644 --- a/src/date-fns/isFirstDayOfMonth/index.ts +++ b/src/date-fns/isFirstDayOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsFirstDayOfMonthOptions extends ContextOptions {} * const result = isFirstDayOfMonth(new Date(2014, 8, 1)) * //=> true */ -export function isFirstDayOfMonth(date: DateArg & {}, options?: IsFirstDayOfMonthOptions | undefined): boolean { +export function isFirstDayOfMonth( + date: DateArg & {}, + options?: IsFirstDayOfMonthOptions | undefined, +): boolean { return toDate(date, options?.in).getDate() === 1; } diff --git a/src/date-fns/isFriday/index.ts b/src/date-fns/isFriday/index.ts index 57a4170..df4b1b1 100644 --- a/src/date-fns/isFriday/index.ts +++ b/src/date-fns/isFriday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsFridayOptions extends ContextOptions {} * const result = isFriday(new Date(2014, 8, 26)) * //=> true */ -export function isFriday(date: DateArg & {}, options?: IsFridayOptions | undefined): boolean { +export function isFriday( + date: DateArg & {}, + options?: IsFridayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 5; } diff --git a/src/date-fns/isFuture/index.ts b/src/date-fns/isFuture/index.ts index b576b81..73c5156 100644 --- a/src/date-fns/isFuture/index.ts +++ b/src/date-fns/isFuture/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/isLastDayOfMonth/index.ts b/src/date-fns/isLastDayOfMonth/index.ts index 01d12f3..59be9c3 100644 --- a/src/date-fns/isLastDayOfMonth/index.ts +++ b/src/date-fns/isLastDayOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -27,7 +26,10 @@ export interface IsLastDayOfMonthOptions extends ContextOptions {} * const result = isLastDayOfMonth(new Date(2014, 1, 28)) * //=> true */ -export function isLastDayOfMonth(date: DateArg & {}, options?: IsLastDayOfMonthOptions | undefined): boolean { +export function isLastDayOfMonth( + date: DateArg & {}, + options?: IsLastDayOfMonthOptions | undefined, +): boolean { const _date = toDate(date, options?.in); return +endOfDay(_date, options) === +endOfMonth(_date, options); } diff --git a/src/date-fns/isLeapYear/index.ts b/src/date-fns/isLeapYear/index.ts index dc47a47..82cd785 100644 --- a/src/date-fns/isLeapYear/index.ts +++ b/src/date-fns/isLeapYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -25,7 +24,10 @@ export interface IsLeapYearOptions extends ContextOptions {} * const result = isLeapYear(new Date(2012, 8, 1)) * //=> true */ -export function isLeapYear(date: DateArg & {}, options?: IsLeapYearOptions | undefined): boolean { +export function isLeapYear( + date: DateArg & {}, + options?: IsLeapYearOptions | undefined, +): boolean { const _date = toDate(date, options?.in); const year = _date.getFullYear(); return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0); diff --git a/src/date-fns/isMatch/index.ts b/src/date-fns/isMatch/index.ts index d820d86..d0335ae 100644 --- a/src/date-fns/isMatch/index.ts +++ b/src/date-fns/isMatch/index.ts @@ -1,16 +1,21 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { isValid } from '../isValid/index.ts'; import { parse } from '../parse/index.ts'; -import type { AdditionalTokensOptions, FirstWeekContainsDateOptions, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + AdditionalTokensOptions, + FirstWeekContainsDateOptions, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link isMatch} function options. */ export interface IsMatchOptions - extends LocalizedOptions<'options' | 'match' | 'formatLong'>, + extends + LocalizedOptions<'options' | 'match' | 'formatLong'>, WeekOptions, FirstWeekContainsDateOptions, AdditionalTokensOptions {} @@ -299,7 +304,11 @@ export interface IsMatchOptions * }) * //=> true */ -export function isMatch(dateStr: string, formatStr: string, options?: IsMatchOptions): boolean { +export function isMatch( + dateStr: string, + formatStr: string, + options?: IsMatchOptions, +): boolean { return isValid(parse(dateStr, formatStr, new Date(), options)); } diff --git a/src/date-fns/isMonday/index.ts b/src/date-fns/isMonday/index.ts index 5d1a2d1..1bb7444 100644 --- a/src/date-fns/isMonday/index.ts +++ b/src/date-fns/isMonday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsMondayOptions extends ContextOptions {} * const result = isMonday(new Date(2014, 8, 22)) * //=> true */ -export function isMonday(date: DateArg & {}, options?: IsMondayOptions | undefined): boolean { +export function isMonday( + date: DateArg & {}, + options?: IsMondayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 1; } diff --git a/src/date-fns/isPast/index.ts b/src/date-fns/isPast/index.ts index e54a896..22b6719 100644 --- a/src/date-fns/isPast/index.ts +++ b/src/date-fns/isPast/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/isSameDay/index.ts b/src/date-fns/isSameDay/index.ts index 9501c22..764c40b 100644 --- a/src/date-fns/isSameDay/index.ts +++ b/src/date-fns/isSameDay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -45,7 +44,11 @@ export function isSameDay( earlierDate: DateArg & {}, options?: IsSameDayOptions | undefined, ): boolean { - const [dateLeft_, dateRight_] = normalizeDates(options?.in, laterDate, earlierDate); + const [dateLeft_, dateRight_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); return +startOfDay(dateLeft_) === +startOfDay(dateRight_); } diff --git a/src/date-fns/isSameHour/index.ts b/src/date-fns/isSameHour/index.ts index 00b9db9..33a8d91 100644 --- a/src/date-fns/isSameHour/index.ts +++ b/src/date-fns/isSameHour/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -40,7 +39,11 @@ export function isSameHour( dateRight: DateArg & {}, options?: IsSameHourOptions | undefined, ): boolean { - const [dateLeft_, dateRight_] = normalizeDates(options?.in, dateLeft, dateRight); + const [dateLeft_, dateRight_] = normalizeDates( + options?.in, + dateLeft, + dateRight, + ); return +startOfHour(dateLeft_) === +startOfHour(dateRight_); } diff --git a/src/date-fns/isSameISOWeek/index.ts b/src/date-fns/isSameISOWeek/index.ts index 9ef8537..e10c7d7 100644 --- a/src/date-fns/isSameISOWeek/index.ts +++ b/src/date-fns/isSameISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/isSameISOWeekYear/index.ts b/src/date-fns/isSameISOWeekYear/index.ts index f172cd3..44020d6 100644 --- a/src/date-fns/isSameISOWeekYear/index.ts +++ b/src/date-fns/isSameISOWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -37,7 +36,11 @@ export function isSameISOWeekYear( earlierDate: DateArg & {}, options?: IsSameISOWeekYearOptions | undefined, ): boolean { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); return +startOfISOWeekYear(laterDate_) === +startOfISOWeekYear(earlierDate_); } diff --git a/src/date-fns/isSameMinute/index.ts b/src/date-fns/isSameMinute/index.ts index 503e366..e0ecdfb 100644 --- a/src/date-fns/isSameMinute/index.ts +++ b/src/date-fns/isSameMinute/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -34,7 +33,10 @@ import type { DateArg } from '../types.ts'; * ) * //=> false */ -export function isSameMinute(laterDate: DateArg & {}, earlierDate: DateArg & {}): boolean { +export function isSameMinute( + laterDate: DateArg & {}, + earlierDate: DateArg & {}, +): boolean { return +startOfMinute(laterDate) === +startOfMinute(earlierDate); } diff --git a/src/date-fns/isSameMonth/index.ts b/src/date-fns/isSameMonth/index.ts index a4eba2a..ef01a74 100644 --- a/src/date-fns/isSameMonth/index.ts +++ b/src/date-fns/isSameMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -39,8 +38,15 @@ export function isSameMonth( earlierDate: DateArg & {}, options?: IsSameMonthOptions | undefined, ): boolean { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); - return laterDate_.getFullYear() === earlierDate_.getFullYear() && laterDate_.getMonth() === earlierDate_.getMonth(); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); + return ( + laterDate_.getFullYear() === earlierDate_.getFullYear() && + laterDate_.getMonth() === earlierDate_.getMonth() + ); } /* eslint-enable */ diff --git a/src/date-fns/isSameQuarter/index.ts b/src/date-fns/isSameQuarter/index.ts index 4dae9e2..59ed173 100644 --- a/src/date-fns/isSameQuarter/index.ts +++ b/src/date-fns/isSameQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -40,7 +39,11 @@ export function isSameQuarter( earlierDate: DateArg & {}, options?: IsSameQuarterOptions | undefined, ): boolean { - const [dateLeft_, dateRight_] = normalizeDates(options?.in, laterDate, earlierDate); + const [dateLeft_, dateRight_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); return +startOfQuarter(dateLeft_) === +startOfQuarter(dateRight_); } diff --git a/src/date-fns/isSameSecond/index.ts b/src/date-fns/isSameSecond/index.ts index 453f810..a9a5833 100644 --- a/src/date-fns/isSameSecond/index.ts +++ b/src/date-fns/isSameSecond/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -42,7 +41,10 @@ import type { DateArg } from '../types.ts'; * ) * //=> false */ -export function isSameSecond(laterDate: DateArg & {}, earlierDate: DateArg & {}): boolean { +export function isSameSecond( + laterDate: DateArg & {}, + earlierDate: DateArg & {}, +): boolean { return +startOfSecond(laterDate) === +startOfSecond(earlierDate); } diff --git a/src/date-fns/isSameWeek/index.ts b/src/date-fns/isSameWeek/index.ts index 19249d5..7f497ac 100644 --- a/src/date-fns/isSameWeek/index.ts +++ b/src/date-fns/isSameWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,8 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link isSameWeek} function options. */ -export interface IsSameWeekOptions extends WeekOptions, LocalizedOptions<'options'>, ContextOptions {} +export interface IsSameWeekOptions + extends WeekOptions, LocalizedOptions<'options'>, ContextOptions {} /** * @name isSameWeek @@ -49,8 +49,14 @@ export function isSameWeek( earlierDate: DateArg & {}, options?: IsSameWeekOptions, ): boolean { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); - return +startOfWeek(laterDate_, options) === +startOfWeek(earlierDate_, options); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); + return ( + +startOfWeek(laterDate_, options) === +startOfWeek(earlierDate_, options) + ); } /* eslint-enable */ diff --git a/src/date-fns/isSameYear/index.ts b/src/date-fns/isSameYear/index.ts index eb1cc3b..3ea234b 100644 --- a/src/date-fns/isSameYear/index.ts +++ b/src/date-fns/isSameYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -34,7 +33,11 @@ export function isSameYear( earlierDate: DateArg & {}, options?: IsSameYearOptions | undefined, ): boolean { - const [laterDate_, earlierDate_] = normalizeDates(options?.in, laterDate, earlierDate); + const [laterDate_, earlierDate_] = normalizeDates( + options?.in, + laterDate, + earlierDate, + ); return laterDate_.getFullYear() === earlierDate_.getFullYear(); } diff --git a/src/date-fns/isSaturday/index.ts b/src/date-fns/isSaturday/index.ts index bc5c19d..e13b85a 100644 --- a/src/date-fns/isSaturday/index.ts +++ b/src/date-fns/isSaturday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsSaturdayOptions extends ContextOptions {} * const result = isSaturday(new Date(2014, 8, 27)) * //=> true */ -export function isSaturday(date: DateArg & {}, options?: IsSaturdayOptions | undefined): boolean { +export function isSaturday( + date: DateArg & {}, + options?: IsSaturdayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 6; } diff --git a/src/date-fns/isSunday/index.ts b/src/date-fns/isSunday/index.ts index 03ae022..cf3b0e0 100644 --- a/src/date-fns/isSunday/index.ts +++ b/src/date-fns/isSunday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsSundayOptions extends ContextOptions {} * const result = isSunday(new Date(2014, 8, 21)) * //=> true */ -export function isSunday(date: DateArg & {}, options?: IsSundayOptions | undefined): boolean { +export function isSunday( + date: DateArg & {}, + options?: IsSundayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 0; } diff --git a/src/date-fns/isThisHour/index.ts b/src/date-fns/isThisHour/index.ts index 450cba6..e431c35 100644 --- a/src/date-fns/isThisHour/index.ts +++ b/src/date-fns/isThisHour/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -32,8 +31,14 @@ export interface IsThisHourOptions extends ContextOptions {} * const result = isThisHour(new Date(2014, 8, 25, 18)) * //=> true */ -export function isThisHour(date: DateArg & {}, options?: IsThisHourOptions): boolean { - return isSameHour(toDate(date, options?.in), constructNow(options?.in || date)); +export function isThisHour( + date: DateArg & {}, + options?: IsThisHourOptions, +): boolean { + return isSameHour( + toDate(date, options?.in), + constructNow(options?.in || date), + ); } /* eslint-enable */ diff --git a/src/date-fns/isThisISOWeek/index.ts b/src/date-fns/isThisISOWeek/index.ts index 3bbdbc3..82f607d 100644 --- a/src/date-fns/isThisISOWeek/index.ts +++ b/src/date-fns/isThisISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -33,8 +32,14 @@ export interface IsThisISOWeekOptions extends ContextOptions {} * const result = isThisISOWeek(new Date(2014, 8, 22)) * //=> true */ -export function isThisISOWeek(date: DateArg & {}, options?: IsThisISOWeekOptions | undefined): boolean { - return isSameISOWeek(constructFrom(options?.in || date, date), constructNow(options?.in || date)); +export function isThisISOWeek( + date: DateArg & {}, + options?: IsThisISOWeekOptions | undefined, +): boolean { + return isSameISOWeek( + constructFrom(options?.in || date, date), + constructNow(options?.in || date), + ); } /* eslint-enable */ diff --git a/src/date-fns/isThisMinute/index.ts b/src/date-fns/isThisMinute/index.ts index 35fb8bb..e512e85 100644 --- a/src/date-fns/isThisMinute/index.ts +++ b/src/date-fns/isThisMinute/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/isThisMonth/index.ts b/src/date-fns/isThisMonth/index.ts index cb3de21..0061c11 100644 --- a/src/date-fns/isThisMonth/index.ts +++ b/src/date-fns/isThisMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,8 +30,14 @@ export interface IsThisMonthOptions extends ContextOptions {} * const result = isThisMonth(new Date(2014, 8, 15)) * //=> true */ -export function isThisMonth(date: DateArg & {}, options?: IsThisMonthOptions | undefined): boolean { - return isSameMonth(constructFrom(options?.in || date, date), constructNow(options?.in || date)); +export function isThisMonth( + date: DateArg & {}, + options?: IsThisMonthOptions | undefined, +): boolean { + return isSameMonth( + constructFrom(options?.in || date, date), + constructNow(options?.in || date), + ); } /* eslint-enable */ diff --git a/src/date-fns/isThisQuarter/index.ts b/src/date-fns/isThisQuarter/index.ts index e35469b..ab913f2 100644 --- a/src/date-fns/isThisQuarter/index.ts +++ b/src/date-fns/isThisQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,8 +30,14 @@ export interface IsThisQuarterOptions extends ContextOptions {} * const result = isThisQuarter(new Date(2014, 6, 2)) * //=> true */ -export function isThisQuarter(date: DateArg & {}, options?: IsThisQuarterOptions): boolean { - return isSameQuarter(constructFrom(options?.in || date, date), constructNow(options?.in || date)); +export function isThisQuarter( + date: DateArg & {}, + options?: IsThisQuarterOptions, +): boolean { + return isSameQuarter( + constructFrom(options?.in || date, date), + constructNow(options?.in || date), + ); } /* eslint-enable */ diff --git a/src/date-fns/isThisSecond/index.ts b/src/date-fns/isThisSecond/index.ts index cdd0750..5ca389d 100644 --- a/src/date-fns/isThisSecond/index.ts +++ b/src/date-fns/isThisSecond/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/isThisWeek/index.ts b/src/date-fns/isThisWeek/index.ts index a0dae1e..031bd90 100644 --- a/src/date-fns/isThisWeek/index.ts +++ b/src/date-fns/isThisWeek/index.ts @@ -1,16 +1,21 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { constructFrom } from '../constructFrom/index.ts'; import { constructNow } from '../constructNow/index.ts'; import { isSameWeek } from '../isSameWeek/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link isThisWeek} function options. */ -export interface IsThisWeekOptions extends WeekOptions, LocalizedOptions<'options'>, ContextOptions {} +export interface IsThisWeekOptions + extends WeekOptions, LocalizedOptions<'options'>, ContextOptions {} /** * @name isThisWeek @@ -37,8 +42,15 @@ export interface IsThisWeekOptions extends WeekOptions, LocalizedOptions<'option * const result = isThisWeek(new Date(2014, 8, 21), { weekStartsOn: 1 }) * //=> false */ -export function isThisWeek(date: DateArg & {}, options?: IsThisWeekOptions): boolean { - return isSameWeek(constructFrom(options?.in || date, date), constructNow(options?.in || date), options); +export function isThisWeek( + date: DateArg & {}, + options?: IsThisWeekOptions, +): boolean { + return isSameWeek( + constructFrom(options?.in || date, date), + constructNow(options?.in || date), + options, + ); } /* eslint-enable */ diff --git a/src/date-fns/isThisYear/index.ts b/src/date-fns/isThisYear/index.ts index 37ec45b..2864ec4 100644 --- a/src/date-fns/isThisYear/index.ts +++ b/src/date-fns/isThisYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,8 +30,14 @@ export interface IsThisYearOptions extends ContextOptions {} * const result = isThisYear(new Date(2014, 6, 2)) * //=> true */ -export function isThisYear(date: DateArg & {}, options?: IsThisYearOptions | undefined): boolean { - return isSameYear(constructFrom(options?.in || date, date), constructNow(options?.in || date)); +export function isThisYear( + date: DateArg & {}, + options?: IsThisYearOptions | undefined, +): boolean { + return isSameYear( + constructFrom(options?.in || date, date), + constructNow(options?.in || date), + ); } /* eslint-enable */ diff --git a/src/date-fns/isThursday/index.ts b/src/date-fns/isThursday/index.ts index 8f52372..de11c4e 100644 --- a/src/date-fns/isThursday/index.ts +++ b/src/date-fns/isThursday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsThursdayOptions extends ContextOptions {} * const result = isThursday(new Date(2014, 8, 25)) * //=> true */ -export function isThursday(date: DateArg & {}, options?: IsThursdayOptions | undefined): boolean { +export function isThursday( + date: DateArg & {}, + options?: IsThursdayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 4; } diff --git a/src/date-fns/isToday/index.ts b/src/date-fns/isToday/index.ts index 87f61bd..1326b9b 100644 --- a/src/date-fns/isToday/index.ts +++ b/src/date-fns/isToday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,8 +30,14 @@ export interface IsTodayOptions extends ContextOptions {} * const result = isToday(new Date(2014, 9, 6, 14, 0)) * //=> true */ -export function isToday(date: DateArg & {}, options?: IsTodayOptions | undefined): boolean { - return isSameDay(constructFrom(options?.in || date, date), constructNow(options?.in || date)); +export function isToday( + date: DateArg & {}, + options?: IsTodayOptions | undefined, +): boolean { + return isSameDay( + constructFrom(options?.in || date, date), + constructNow(options?.in || date), + ); } /* eslint-enable */ diff --git a/src/date-fns/isTomorrow/index.ts b/src/date-fns/isTomorrow/index.ts index f2b0ad6..9367fb3 100644 --- a/src/date-fns/isTomorrow/index.ts +++ b/src/date-fns/isTomorrow/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -31,8 +30,15 @@ export interface IsTomorrowOptions extends ContextOptions {} * const result = isTomorrow(new Date(2014, 9, 7, 14, 0)) * //=> true */ -export function isTomorrow(date: DateArg & {}, options?: IsTomorrowOptions | undefined): boolean { - return isSameDay(date, addDays(constructNow(options?.in || date), 1), options); +export function isTomorrow( + date: DateArg & {}, + options?: IsTomorrowOptions | undefined, +): boolean { + return isSameDay( + date, + addDays(constructNow(options?.in || date), 1), + options, + ); } /* eslint-enable */ diff --git a/src/date-fns/isTuesday/index.ts b/src/date-fns/isTuesday/index.ts index e1c3eb9..5eebdf4 100644 --- a/src/date-fns/isTuesday/index.ts +++ b/src/date-fns/isTuesday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsTuesdayOptions extends ContextOptions {} * const result = isTuesday(new Date(2014, 8, 23)) * //=> true */ -export function isTuesday(date: DateArg & {}, options?: IsTuesdayOptions | undefined): boolean { +export function isTuesday( + date: DateArg & {}, + options?: IsTuesdayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 2; } diff --git a/src/date-fns/isValid/index.ts b/src/date-fns/isValid/index.ts index a66cb35..73634f5 100644 --- a/src/date-fns/isValid/index.ts +++ b/src/date-fns/isValid/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/isWednesday/index.ts b/src/date-fns/isWednesday/index.ts index 91fcbe3..0f1d6cf 100644 --- a/src/date-fns/isWednesday/index.ts +++ b/src/date-fns/isWednesday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsWednesdayOptions extends ContextOptions {} * const result = isWednesday(new Date(2014, 8, 24)) * //=> true */ -export function isWednesday(date: DateArg & {}, options?: IsWednesdayOptions | undefined): boolean { +export function isWednesday( + date: DateArg & {}, + options?: IsWednesdayOptions | undefined, +): boolean { return toDate(date, options?.in).getDay() === 3; } diff --git a/src/date-fns/isWeekend/index.ts b/src/date-fns/isWeekend/index.ts index bc6bf6b..b2051b7 100644 --- a/src/date-fns/isWeekend/index.ts +++ b/src/date-fns/isWeekend/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -28,7 +27,10 @@ export interface IsWeekendOptions extends ContextOptions {} * const result = isWeekend(new Date(2014, 9, 5)) * //=> true */ -export function isWeekend(date: DateArg & {}, options?: IsWeekendOptions | undefined): boolean { +export function isWeekend( + date: DateArg & {}, + options?: IsWeekendOptions | undefined, +): boolean { const day = toDate(date, options?.in).getDay(); return day === 0 || day === 6; } diff --git a/src/date-fns/isWithinInterval/index.ts b/src/date-fns/isWithinInterval/index.ts index b8ff72e..6fdb172 100644 --- a/src/date-fns/isWithinInterval/index.ts +++ b/src/date-fns/isWithinInterval/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -56,9 +55,10 @@ export function isWithinInterval( options?: IsWithinIntervalOptions | undefined, ): boolean { const time = +toDate(date, options?.in); - const [startTime, endTime] = [+toDate(interval.start, options?.in), +toDate(interval.end, options?.in)].sort( - (a, b) => a - b, - ); + const [startTime, endTime] = [ + +toDate(interval.start, options?.in), + +toDate(interval.end, options?.in), + ].sort((a, b) => a - b); return time >= startTime && time <= endTime; } diff --git a/src/date-fns/isYesterday/index.ts b/src/date-fns/isYesterday/index.ts index 26dd463..563c0ee 100644 --- a/src/date-fns/isYesterday/index.ts +++ b/src/date-fns/isYesterday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -32,8 +31,14 @@ export interface IsYesterdayOptions extends ContextOptions {} * const result = isYesterday(new Date(2014, 9, 5, 14, 0)) * //=> true */ -export function isYesterday(date: DateArg & {}, options?: IsYesterdayOptions | undefined): boolean { - return isSameDay(constructFrom(options?.in || date, date), subDays(constructNow(options?.in || date), 1)); +export function isYesterday( + date: DateArg & {}, + options?: IsYesterdayOptions | undefined, +): boolean { + return isSameDay( + constructFrom(options?.in || date, date), + subDays(constructNow(options?.in || date), 1), + ); } /* eslint-enable */ diff --git a/src/date-fns/lastDayOfDecade/index.ts b/src/date-fns/lastDayOfDecade/index.ts index b89b94c..af40681 100644 --- a/src/date-fns/lastDayOfDecade/index.ts +++ b/src/date-fns/lastDayOfDecade/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link lastDayOfDecade} function options. */ -export interface LastDayOfDecadeOptions extends ContextOptions {} +export interface LastDayOfDecadeOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name lastDayOfDecade @@ -31,7 +32,10 @@ export interface LastDayOfDecadeOptions extends Co * const result = lastDayOfDecade(new Date(2012, 11, 21, 21, 12, 00)) * //=> Wed Dec 31 2019 00:00:00 */ -export function lastDayOfDecade( +export function lastDayOfDecade< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfDecadeOptions | undefined, ): ResultDate { diff --git a/src/date-fns/lastDayOfISOWeek/index.ts b/src/date-fns/lastDayOfISOWeek/index.ts index 1bedf5b..e723dbb 100644 --- a/src/date-fns/lastDayOfISOWeek/index.ts +++ b/src/date-fns/lastDayOfISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link lastDayOfISOWeek} function options. */ -export interface LastDayOfISOWeekOptions extends ContextOptions {} +export interface LastDayOfISOWeekOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name lastDayOfISOWeek @@ -34,7 +35,10 @@ export interface LastDayOfISOWeekOptions extends C * const result = lastDayOfISOWeek(new Date(2014, 8, 2, 11, 55, 0)) * //=> Sun Sep 07 2014 00:00:00 */ -export function lastDayOfISOWeek( +export function lastDayOfISOWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfISOWeekOptions | undefined, ): ResultDate { diff --git a/src/date-fns/lastDayOfISOWeekYear/index.ts b/src/date-fns/lastDayOfISOWeekYear/index.ts index 9f996c1..ed264e6 100644 --- a/src/date-fns/lastDayOfISOWeekYear/index.ts +++ b/src/date-fns/lastDayOfISOWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link lastDayOfISOWeekYear} function options. */ -export interface LastDayOfISOWeekYearOptions extends ContextOptions {} +export interface LastDayOfISOWeekYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name lastDayOfISOWeekYear @@ -37,7 +38,10 @@ export interface LastDayOfISOWeekYearOptions exten * const result = lastDayOfISOWeekYear(new Date(2005, 6, 2)) * //=> Sun Jan 01 2006 00:00:00 */ -export function lastDayOfISOWeekYear( +export function lastDayOfISOWeekYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfISOWeekYearOptions | undefined, ): ResultDate { diff --git a/src/date-fns/lastDayOfMonth/index.ts b/src/date-fns/lastDayOfMonth/index.ts index f46a59e..d99008d 100644 --- a/src/date-fns/lastDayOfMonth/index.ts +++ b/src/date-fns/lastDayOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link lastDayOfMonth} function options. */ -export interface LastDayOfMonthOptions extends ContextOptions {} +export interface LastDayOfMonthOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name lastDayOfMonth @@ -32,7 +33,10 @@ export interface LastDayOfMonthOptions extends Con * const result = lastDayOfMonth(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Sep 30 2014 00:00:00 */ -export function lastDayOfMonth( +export function lastDayOfMonth< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfMonthOptions | undefined, ): ResultDate { diff --git a/src/date-fns/lastDayOfQuarter/index.ts b/src/date-fns/lastDayOfQuarter/index.ts index 2e5917e..01626ac 100644 --- a/src/date-fns/lastDayOfQuarter/index.ts +++ b/src/date-fns/lastDayOfQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link lastDayOfQuarter} function options. */ -export interface LastDayOfQuarterOptions extends ContextOptions {} +export interface LastDayOfQuarterOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name lastDayOfQuarter @@ -32,7 +33,10 @@ export interface LastDayOfQuarterOptions extends C * const result = lastDayOfQuarter(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Sep 30 2014 00:00:00 */ -export function lastDayOfQuarter( +export function lastDayOfQuarter< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfQuarterOptions | undefined, ): ResultDate { diff --git a/src/date-fns/lastDayOfWeek/index.ts b/src/date-fns/lastDayOfWeek/index.ts index ca4dec3..3475a86 100644 --- a/src/date-fns/lastDayOfWeek/index.ts +++ b/src/date-fns/lastDayOfWeek/index.ts @@ -1,18 +1,20 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getDefaultOptions } from '../_lib/defaultOptions/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link lastDayOfWeek} function options. */ export interface LastDayOfWeekOptions - extends LocalizedOptions<'options'>, - WeekOptions, - ContextOptions {} + extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} /** * @name lastDayOfWeek @@ -31,7 +33,10 @@ export interface LastDayOfWeekOptions * * @returns The last day of a week */ -export function lastDayOfWeek( +export function lastDayOfWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfWeekOptions, ): ResultDate { diff --git a/src/date-fns/lastDayOfYear/index.ts b/src/date-fns/lastDayOfYear/index.ts index 547e12f..9033cf4 100644 --- a/src/date-fns/lastDayOfYear/index.ts +++ b/src/date-fns/lastDayOfYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link lastDayOfYear} function options. */ -export interface LastDayOfYearOptions extends ContextOptions {} +export interface LastDayOfYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name lastDayOfYear @@ -32,7 +33,10 @@ export interface LastDayOfYearOptions extends Cont * const result = lastDayOfYear(new Date(2014, 8, 2, 11, 55, 00)) * //=> Wed Dec 31 2014 00:00:00 */ -export function lastDayOfYear( +export function lastDayOfYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: LastDayOfYearOptions, ): ResultDate { diff --git a/src/date-fns/lightFormat/index.ts b/src/date-fns/lightFormat/index.ts index 8baaa65..20b4924 100644 --- a/src/date-fns/lightFormat/index.ts +++ b/src/date-fns/lightFormat/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -88,7 +87,10 @@ type Token = keyof typeof lightFormatters; * const result = lightFormat(new Date(2014, 1, 11), 'yyyy-MM-dd') * //=> '2014-02-11' */ -export function lightFormat(date: DateArg & {}, formatStr: string): string { +export function lightFormat( + date: DateArg & {}, + formatStr: string, +): string { const date_ = toDate(date); if (!isValid(date_)) { @@ -118,7 +120,11 @@ export function lightFormat(date: DateArg & {}, formatStr: string): string } if (firstCharacter.match(unescapedLatinCharacterRegExp)) { - throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`'); + throw new RangeError( + 'Format string contains an unescaped latin alphabet character `' + + firstCharacter + + '`', + ); } return substring; diff --git a/src/date-fns/locale/_lib/buildFormatLongFn/index.ts b/src/date-fns/locale/_lib/buildFormatLongFn/index.ts index f9a6936..f31956b 100644 --- a/src/date-fns/locale/_lib/buildFormatLongFn/index.ts +++ b/src/date-fns/locale/_lib/buildFormatLongFn/index.ts @@ -1,10 +1,11 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import type { FormatLongFn, FormatLongWidth } from '../../types.ts'; -export interface BuildFormatLongFnArgs { +export interface BuildFormatLongFnArgs< + DefaultMatchWidth extends FormatLongWidth, +> { formats: Partial<{ [format in FormatLongWidth]: string }> & { [format in DefaultMatchWidth]: string; }; @@ -16,7 +17,9 @@ export function buildFormatLongFn( ): FormatLongFn { return (options = {}) => { // TODO: Remove String() - const width = options.width ? (String(options.width) as FormatLongWidth) : args.defaultWidth; + const width = options.width + ? (String(options.width) as FormatLongWidth) + : args.defaultWidth; const format = args.formats[width] || args.formats[args.defaultWidth]; return format; }; diff --git a/src/date-fns/locale/_lib/buildLocalizeFn/index.ts b/src/date-fns/locale/_lib/buildLocalizeFn/index.ts index 84a3b00..c28c169 100644 --- a/src/date-fns/locale/_lib/buildLocalizeFn/index.ts +++ b/src/date-fns/locale/_lib/buildLocalizeFn/index.ts @@ -1,9 +1,13 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import type { Day, Era, Month, Quarter } from '../../../types.ts'; -import type { LocaleDayPeriod, LocaleUnitValue, LocaleWidth, LocalizeFn } from '../../types.ts'; +import type { + LocaleDayPeriod, + LocaleUnitValue, + LocaleWidth, + LocalizeFn, +} from '../../types.ts'; export type BuildLocalizeFnArgs< Value extends LocaleUnitValue, @@ -25,7 +29,9 @@ export type BuildLocalizeFnArgs< * * @returns The converted value */ -export type LocalizeFnArgCallback = (value: Value) => LocalizeUnitIndex; +export type LocalizeFnArgCallback = ( + value: Value, +) => LocalizeUnitIndex; /** * The map of localized values for each width. @@ -38,24 +44,24 @@ export type LocalizePeriodValuesMap = { * The index type of the locale unit value. It types conversion of units of * values that don't start at 0 (i.e. quarters). */ -export type LocalizeUnitIndex = Value extends LocaleUnitValue - ? keyof LocalizeValues - : number; +export type LocalizeUnitIndex = + Value extends LocaleUnitValue ? keyof LocalizeValues : number; /** * Converts the unit value to the tuple of values. */ -export type LocalizeValues = Value extends LocaleDayPeriod - ? Record - : Value extends Era - ? LocalizeEraValues - : Value extends Quarter - ? LocalizeQuarterValues - : Value extends Day - ? LocalizeDayValues - : Value extends Month - ? LocalizeMonthValues - : never; +export type LocalizeValues = + Value extends LocaleDayPeriod + ? Record + : Value extends Era + ? LocalizeEraValues + : Value extends Quarter + ? LocalizeQuarterValues + : Value extends Day + ? LocalizeDayValues + : Value extends Month + ? LocalizeMonthValues + : never; /** * The tuple of localized era values. The first element represents BC, @@ -71,7 +77,15 @@ export type LocalizeQuarterValues = readonly [string, string, string, string]; /** * The tuple of localized day values. The first element represents Sunday. */ -export type LocalizeDayValues = readonly [string, string, string, string, string, string, string]; +export type LocalizeDayValues = readonly [ + string, + string, + string, + string, + string, + string, + string, +]; /** * The tuple of localized month values. The first element represents January. @@ -101,14 +115,22 @@ export function buildLocalizeFn< let valuesArray: LocalizeValues; if (context === 'formatting' && args.formattingValues) { const defaultWidth = args.defaultFormattingWidth || args.defaultWidth; - const width = (options?.width ? String(options.width) : defaultWidth) as LocaleWidth; - valuesArray = (args.formattingValues[width] || args.formattingValues[defaultWidth]) as LocalizeValues; + const width = ( + options?.width ? String(options.width) : defaultWidth + ) as LocaleWidth; + valuesArray = (args.formattingValues[width] || + args.formattingValues[defaultWidth]) as LocalizeValues; } else { const defaultWidth = args.defaultWidth; - const width = (options?.width ? String(options.width) : args.defaultWidth) as LocaleWidth; - valuesArray = (args.values[width] || args.values[defaultWidth]) as LocalizeValues; + const width = ( + options?.width ? String(options.width) : args.defaultWidth + ) as LocaleWidth; + valuesArray = (args.values[width] || + args.values[defaultWidth]) as LocalizeValues; } - const index = (args.argumentCallback ? args.argumentCallback(value as Value) : value) as LocalizeUnitIndex; + const index = ( + args.argumentCallback ? args.argumentCallback(value as Value) : value + ) as LocalizeUnitIndex; // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it! return valuesArray[index]; }; diff --git a/src/date-fns/locale/_lib/buildMatchFn/index.ts b/src/date-fns/locale/_lib/buildMatchFn/index.ts index 87eb806..4d5b536 100644 --- a/src/date-fns/locale/_lib/buildMatchFn/index.ts +++ b/src/date-fns/locale/_lib/buildMatchFn/index.ts @@ -1,9 +1,14 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import type { Quarter, Era, Day, Month } from '../../../types.ts'; -import type { LocaleUnitValue, LocaleWidth, LocaleDayPeriod, MatchFn, MatchValueCallback } from '../../types.ts'; +import type { + LocaleUnitValue, + LocaleWidth, + LocaleDayPeriod, + MatchFn, + MatchValueCallback, +} from '../../types.ts'; export interface BuildMatchFnArgs< Result extends LocaleUnitValue, @@ -14,7 +19,10 @@ export interface BuildMatchFnArgs< defaultMatchWidth: DefaultMatchWidth; parsePatterns: BuildMatchFnParsePatterns; defaultParseWidth: DefaultParseWidth; - valueCallback?: MatchValueCallback; + valueCallback?: MatchValueCallback< + Result extends LocaleDayPeriod ? string : number, + Result + >; } export type BuildMatchFnMatchPatterns = { @@ -23,33 +31,54 @@ export type BuildMatchFnMatchPatterns = { [Width in DefaultWidth]: RegExp; }; -export type BuildMatchFnParsePatterns = { +export type BuildMatchFnParsePatterns< + Value extends LocaleUnitValue, + DefaultWidth extends LocaleWidth, +> = { [Width in LocaleWidth]?: ParsePattern; } & { [Width in DefaultWidth]: ParsePattern; }; -export type ParsePattern = Value extends LocaleDayPeriod - ? Record - : Value extends Quarter - ? readonly [RegExp, RegExp, RegExp, RegExp] - : Value extends Era - ? readonly [RegExp, RegExp] - : Value extends Day - ? readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp] - : Value extends Month - ? readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp] - : never; +export type ParsePattern = + Value extends LocaleDayPeriod + ? Record + : Value extends Quarter + ? readonly [RegExp, RegExp, RegExp, RegExp] + : Value extends Era + ? readonly [RegExp, RegExp] + : Value extends Day + ? readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp] + : Value extends Month + ? readonly [ + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + RegExp, + ] + : never; export function buildMatchFn< Value extends LocaleUnitValue, DefaultMatchWidth extends LocaleWidth, DefaultParseWidth extends LocaleWidth, ->(args: BuildMatchFnArgs): MatchFn { +>( + args: BuildMatchFnArgs, +): MatchFn { return (string, options = {}) => { const width = options.width; - const matchPattern = (width && args.matchPatterns[width]) || args.matchPatterns[args.defaultMatchWidth]; + const matchPattern = + (width && args.matchPatterns[width]) || + args.matchPatterns[args.defaultMatchWidth]; const matchResult = string.match(matchPattern); if (!matchResult) { @@ -57,7 +86,9 @@ export function buildMatchFn< } const matchedString = matchResult[0]; - const parsePatterns = (width && args.parsePatterns[width]) || args.parsePatterns[args.defaultParseWidth]; + const parsePatterns = + (width && args.parsePatterns[width]) || + args.parsePatterns[args.defaultParseWidth]; const key = ( Array.isArray(parsePatterns) @@ -85,14 +116,20 @@ function findKey( predicate: (value: Value) => boolean, ): keyof Obj | undefined { for (const key in object) { - if (Object.prototype.hasOwnProperty.call(object, key) && predicate(object[key])) { + if ( + Object.prototype.hasOwnProperty.call(object, key) && + predicate(object[key]) + ) { return key; } } return undefined; } -function findIndex(array: Item[], predicate: (item: Item) => boolean): number | undefined { +function findIndex( + array: Item[], + predicate: (item: Item) => boolean, +): number | undefined { for (let key = 0; key < array.length; key++) { if (predicate(array[key])) { return key; diff --git a/src/date-fns/locale/_lib/buildMatchPatternFn/index.ts b/src/date-fns/locale/_lib/buildMatchPatternFn/index.ts index 5ecf756..086b544 100644 --- a/src/date-fns/locale/_lib/buildMatchPatternFn/index.ts +++ b/src/date-fns/locale/_lib/buildMatchPatternFn/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ export interface BuildMatchPatternFnArgs { valueCallback?: MatchValueCallback; } -export function buildMatchPatternFn(args: BuildMatchPatternFnArgs): MatchFn { +export function buildMatchPatternFn( + args: BuildMatchPatternFnArgs, +): MatchFn { return (string, options = {}) => { const matchResult = string.match(args.matchPattern); if (!matchResult) return null; @@ -18,7 +19,9 @@ export function buildMatchPatternFn(args: BuildMatchPatternFnArgs formatRelativeLocale[token]; +export const formatRelative: FormatRelativeFn = ( + token, + _date, + _baseDate, + _options, +) => formatRelativeLocale[token]; /* eslint-enable */ diff --git a/src/date-fns/locale/en-US/_lib/localize/index.ts b/src/date-fns/locale/en-US/_lib/localize/index.ts index 44319c4..034506e 100644 --- a/src/date-fns/locale/en-US/_lib/localize/index.ts +++ b/src/date-fns/locale/en-US/_lib/localize/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -23,7 +22,20 @@ const quarterValues = { // e.g. in Spanish language the weekdays and months should be in the lowercase. const monthValues = { narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'] as const, - abbreviated: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] as const, + abbreviated: [ + 'Jan', + 'Feb', + 'Mar', + 'Apr', + 'May', + 'Jun', + 'Jul', + 'Aug', + 'Sep', + 'Oct', + 'Nov', + 'Dec', + ] as const, wide: [ 'January', 'February', @@ -44,7 +56,15 @@ const dayValues = { narrow: ['S', 'M', 'T', 'W', 'T', 'F', 'S'] as const, short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'] as const, abbreviated: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'] as const, - wide: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] as const, + wide: [ + 'Sunday', + 'Monday', + 'Tuesday', + 'Wednesday', + 'Thursday', + 'Friday', + 'Saturday', + ] as const, }; const dayPeriodValues = { diff --git a/src/date-fns/locale/en-US/_lib/match/index.ts b/src/date-fns/locale/en-US/_lib/match/index.ts index 858ee6a..9e7b596 100644 --- a/src/date-fns/locale/en-US/_lib/match/index.ts +++ b/src/date-fns/locale/en-US/_lib/match/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -34,8 +33,34 @@ const matchMonthPatterns = { wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i, }; const parseMonthPatterns = { - narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i] as const, - any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i] as const, + narrow: [ + /^j/i, + /^f/i, + /^m/i, + /^a/i, + /^m/i, + /^j/i, + /^j/i, + /^a/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i, + ] as const, + any: [ + /^ja/i, + /^f/i, + /^mar/i, + /^ap/i, + /^may/i, + /^jun/i, + /^jul/i, + /^au/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i, + ] as const, }; const matchDayPatterns = { diff --git a/src/date-fns/locale/en-US/index.ts b/src/date-fns/locale/en-US/index.ts index 23834cb..3ab0e7d 100644 --- a/src/date-fns/locale/en-US/index.ts +++ b/src/date-fns/locale/en-US/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/locale/index.ts b/src/date-fns/locale/index.ts index 2d87bed..b1dfa80 100644 --- a/src/date-fns/locale/index.ts +++ b/src/date-fns/locale/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/locale/types.ts b/src/date-fns/locale/types.ts index d00ab36..c6bdce3 100644 --- a/src/date-fns/locale/types.ts +++ b/src/date-fns/locale/types.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -37,7 +36,8 @@ export interface Locale { /** * The locale options. */ -export interface LocaleOptions extends WeekOptions, FirstWeekContainsDateOptions {} +export interface LocaleOptions + extends WeekOptions, FirstWeekContainsDateOptions {} /// Format distance types @@ -51,7 +51,11 @@ export interface LocaleOptions extends WeekOptions, FirstWeekContainsDateOptions * * @returns The localized distance in words */ -export type FormatDistanceFn = (token: FormatDistanceToken, count: number, options?: FormatDistanceFnOptions) => string; +export type FormatDistanceFn = ( + token: FormatDistanceToken, + count: number, + options?: FormatDistanceFnOptions, +) => string; /** * The {@link FormatDistanceFn} function options. @@ -137,7 +141,8 @@ export type FormatRelativeFn = ( /** * The {@link FormatRelativeFn} function options. */ -export interface FormatRelativeFnOptions extends WeekOptions, LocalizedOptions<'options' | 'formatRelative'> {} +export interface FormatRelativeFnOptions + extends WeekOptions, LocalizedOptions<'options' | 'formatRelative'> {} /** * The locale function used inside the {@link FormatRelativeFn} function @@ -163,7 +168,8 @@ export interface FormatRelativeTokenFnOptions extends WeekOptions {} /** * The token used in format relative function. Represents the time unit. */ -export type FormatRelativeToken = 'lastWeek' | 'yesterday' | 'today' | 'tomorrow' | 'nextWeek' | 'other'; +export type FormatRelativeToken = + 'lastWeek' | 'yesterday' | 'today' | 'tomorrow' | 'nextWeek' | 'other'; /** * A format part that represents a token or string literal, used by format parser/tokenizer @@ -196,7 +202,10 @@ export interface Localize { dayPeriod: LocalizeFn; /** The function that can preprocess parts/tokens **/ - preprocessor?: (date: DateType, parts: FormatPart[]) => FormatPart[]; + preprocessor?: ( + date: DateType, + parts: FormatPart[], + ) => FormatPart[]; } /** @@ -209,7 +218,10 @@ export interface Localize { * * @returns The localized string */ -export type LocalizeFn = (value: Value, options?: LocalizeFnOptions) => string; +export type LocalizeFn = ( + value: Value, + options?: LocalizeFnOptions, +) => string; /** * The {@link LocalizeFn} function options. @@ -362,7 +374,15 @@ export type LocaleWidth = 'narrow' | 'short' | 'abbreviated' | 'wide' | 'any'; /** * Token representing particular period of the day. */ -export type LocaleDayPeriod = 'am' | 'pm' | 'midnight' | 'noon' | 'morning' | 'afternoon' | 'evening' | 'night'; +export type LocaleDayPeriod = + | 'am' + | 'pm' + | 'midnight' + | 'noon' + | 'morning' + | 'afternoon' + | 'evening' + | 'night'; /** * The units commonly used in the date formatting or parsing. diff --git a/src/date-fns/max/index.ts b/src/date-fns/max/index.ts index 69c3542..7f32c4b 100644 --- a/src/date-fns/max/index.ts +++ b/src/date-fns/max/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextFn, ContextOptions, DateArg } from '../types.ts'; /** * The {@link max} function options. */ -export interface MaxOptions extends ContextOptions {} +export interface MaxOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name max @@ -45,7 +46,8 @@ export function max( dates.forEach((date) => { // Use the first date object as the context function - if (!context && typeof date === 'object') context = constructFrom.bind(null, date) as ContextFn; + if (!context && typeof date === 'object') + context = constructFrom.bind(null, date) as ContextFn; const date_ = toDate(date, context); if (!result || result < date_ || isNaN(+date_)) result = date_; diff --git a/src/date-fns/milliseconds/index.ts b/src/date-fns/milliseconds/index.ts index c5e0d20..f8526fa 100644 --- a/src/date-fns/milliseconds/index.ts +++ b/src/date-fns/milliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -34,7 +33,15 @@ import type { Duration } from '../types.ts'; * milliseconds({ months: 3 }) * //=> 7889238000 */ -export function milliseconds({ years, months, weeks, days, hours, minutes, seconds }: Duration): number { +export function milliseconds({ + years, + months, + weeks, + days, + hours, + minutes, + seconds, +}: Duration): number { let totalDays = 0; if (years) totalDays += years * daysInYear; diff --git a/src/date-fns/millisecondsToHours/index.ts b/src/date-fns/millisecondsToHours/index.ts index ac02ba6..466b195 100644 --- a/src/date-fns/millisecondsToHours/index.ts +++ b/src/date-fns/millisecondsToHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/millisecondsToMinutes/index.ts b/src/date-fns/millisecondsToMinutes/index.ts index f08d06d..5195f74 100644 --- a/src/date-fns/millisecondsToMinutes/index.ts +++ b/src/date-fns/millisecondsToMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/millisecondsToSeconds/index.ts b/src/date-fns/millisecondsToSeconds/index.ts index 7e46e10..1ea3a31 100644 --- a/src/date-fns/millisecondsToSeconds/index.ts +++ b/src/date-fns/millisecondsToSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/min/index.ts b/src/date-fns/min/index.ts index 9c7bd70..585b042 100644 --- a/src/date-fns/min/index.ts +++ b/src/date-fns/min/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextFn, ContextOptions, DateArg } from '../types.ts'; /** * The {@link min} function options. */ -export interface MinOptions extends ContextOptions {} +export interface MinOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name min @@ -45,7 +46,8 @@ export function min( dates.forEach((date) => { // Use the first date object as the context function - if (!context && typeof date === 'object') context = constructFrom.bind(null, date) as ContextFn; + if (!context && typeof date === 'object') + context = constructFrom.bind(null, date) as ContextFn; const date_ = toDate(date, context); if (!result || result > date_ || isNaN(+date_)) result = date_; diff --git a/src/date-fns/minutesToHours/index.ts b/src/date-fns/minutesToHours/index.ts index 0dc6723..f1d93b6 100644 --- a/src/date-fns/minutesToHours/index.ts +++ b/src/date-fns/minutesToHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/minutesToMilliseconds/index.ts b/src/date-fns/minutesToMilliseconds/index.ts index 6a794eb..5d3089d 100644 --- a/src/date-fns/minutesToMilliseconds/index.ts +++ b/src/date-fns/minutesToMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/minutesToSeconds/index.ts b/src/date-fns/minutesToSeconds/index.ts index d728fee..adf35fc 100644 --- a/src/date-fns/minutesToSeconds/index.ts +++ b/src/date-fns/minutesToSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/monthsToQuarters/index.ts b/src/date-fns/monthsToQuarters/index.ts index 88d3616..97893d2 100644 --- a/src/date-fns/monthsToQuarters/index.ts +++ b/src/date-fns/monthsToQuarters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/monthsToYears/index.ts b/src/date-fns/monthsToYears/index.ts index 4f12877..4f8e2fc 100644 --- a/src/date-fns/monthsToYears/index.ts +++ b/src/date-fns/monthsToYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/nextDay/index.ts b/src/date-fns/nextDay/index.ts index ddfcf2a..9ff992c 100644 --- a/src/date-fns/nextDay/index.ts +++ b/src/date-fns/nextDay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg, Day } from '../types.ts'; /** * The {@link nextDay} function options. */ -export interface NextDayOptions extends ContextOptions {} +export interface NextDayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextDay @@ -35,7 +36,10 @@ export interface NextDayOptions extends ContextOpt * const result = nextDay(new Date(2020, 2, 21), 2) * //=> Tue Mar 24 2020 00:00:00 */ -export function nextDay( +export function nextDay< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, day: Day, options?: NextDayOptions | undefined, diff --git a/src/date-fns/nextFriday/index.ts b/src/date-fns/nextFriday/index.ts index cf02c31..9b0fce8 100644 --- a/src/date-fns/nextFriday/index.ts +++ b/src/date-fns/nextFriday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextFriday} function options. */ -export interface NextFridayOptions extends ContextOptions {} +export interface NextFridayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextFriday @@ -31,7 +32,10 @@ export interface NextFridayOptions extends Context * const result = nextFriday(new Date(2020, 2, 22)) * //=> Fri Mar 27 2020 00:00:00 */ -export function nextFriday( +export function nextFriday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextFridayOptions, ): ResultDate { diff --git a/src/date-fns/nextMonday/index.ts b/src/date-fns/nextMonday/index.ts index 657fdbb..074ad6e 100644 --- a/src/date-fns/nextMonday/index.ts +++ b/src/date-fns/nextMonday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextMonday} function options. */ -export interface NextMondayOptions extends ContextOptions {} +export interface NextMondayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextMonday @@ -31,7 +32,10 @@ export interface NextMondayOptions extends Context * const result = nextMonday(new Date(2020, 2, 22)) * //=> Mon Mar 23 2020 00:00:00 */ -export function nextMonday( +export function nextMonday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextMondayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/nextSaturday/index.ts b/src/date-fns/nextSaturday/index.ts index 5f4a438..ddf85bc 100644 --- a/src/date-fns/nextSaturday/index.ts +++ b/src/date-fns/nextSaturday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextSaturday} function options. */ -export interface NextSaturdayOptions extends ContextOptions {} +export interface NextSaturdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextSaturday @@ -31,7 +32,10 @@ export interface NextSaturdayOptions extends Conte * const result = nextSaturday(new Date(2020, 2, 22)) * //=> Sat Mar 28 2020 00:00:00 */ -export function nextSaturday( +export function nextSaturday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextSaturdayOptions, ): ResultDate { diff --git a/src/date-fns/nextSunday/index.ts b/src/date-fns/nextSunday/index.ts index f166042..f101c62 100644 --- a/src/date-fns/nextSunday/index.ts +++ b/src/date-fns/nextSunday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextSunday} function options. */ -export interface NextSundayOptions extends ContextOptions {} +export interface NextSundayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextSunday @@ -31,7 +32,10 @@ export interface NextSundayOptions extends Context * const result = nextSunday(new Date(2020, 2, 22)) * //=> Sun Mar 29 2020 00:00:00 */ -export function nextSunday( +export function nextSunday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextSundayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/nextThursday/index.ts b/src/date-fns/nextThursday/index.ts index da34741..d61e89b 100644 --- a/src/date-fns/nextThursday/index.ts +++ b/src/date-fns/nextThursday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextThursday} function options. */ -export interface NextThursdayOptions extends ContextOptions {} +export interface NextThursdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextThursday @@ -31,7 +32,10 @@ export interface NextThursdayOptions extends Conte * const result = nextThursday(new Date(2020, 2, 22)) * //=> Thur Mar 26 2020 00:00:00 */ -export function nextThursday( +export function nextThursday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextThursdayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/nextTuesday/index.ts b/src/date-fns/nextTuesday/index.ts index 6e83b41..4ddc620 100644 --- a/src/date-fns/nextTuesday/index.ts +++ b/src/date-fns/nextTuesday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextTuesday} function options. */ -export interface NextTuesdayOptions extends ContextOptions {} +export interface NextTuesdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextTuesday @@ -31,7 +32,10 @@ export interface NextTuesdayOptions extends Contex * const result = nextTuesday(new Date(2020, 2, 22)) * //=> Tue Mar 24 2020 00:00:00 */ -export function nextTuesday( +export function nextTuesday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextTuesdayOptions, ): ResultDate { diff --git a/src/date-fns/nextWednesday/index.ts b/src/date-fns/nextWednesday/index.ts index 75242e2..59b353a 100644 --- a/src/date-fns/nextWednesday/index.ts +++ b/src/date-fns/nextWednesday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link nextWednesday} function options. */ -export interface NextWednesdayOptions extends ContextOptions {} +export interface NextWednesdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name nextWednesday @@ -31,7 +32,10 @@ export interface NextWednesdayOptions extends Cont * const result = nextWednesday(new Date(2020, 2, 22)) * //=> Wed Mar 25 2020 00:00:00 */ -export function nextWednesday( +export function nextWednesday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: NextWednesdayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/parse/_lib/Parser.ts b/src/date-fns/parse/_lib/Parser.ts index e85cfa6..637bc9d 100644 --- a/src/date-fns/parse/_lib/Parser.ts +++ b/src/date-fns/parse/_lib/Parser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -23,14 +22,29 @@ export abstract class Parser { } return { - setter: new ValueSetter(result.value, this.validate, this.set, this.priority, this.subPriority), + setter: new ValueSetter( + result.value, + this.validate, + this.set, + this.priority, + this.subPriority, + ), rest: result.rest, }; } - protected abstract parse(dateString: string, token: string, match: Match, options: ParserOptions): ParseResult; + protected abstract parse( + dateString: string, + token: string, + match: Match, + options: ParserOptions, + ): ParseResult; - protected validate(_utcDate: DateType, _value: Value, _options: ParserOptions): boolean { + protected validate( + _utcDate: DateType, + _value: Value, + _options: ParserOptions, + ): boolean { return true; } diff --git a/src/date-fns/parse/_lib/Setter.ts b/src/date-fns/parse/_lib/Setter.ts index 8c6d78c..4811dcf 100644 --- a/src/date-fns/parse/_lib/Setter.ts +++ b/src/date-fns/parse/_lib/Setter.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -13,7 +12,10 @@ export abstract class Setter { public abstract priority: number; public subPriority = 0; - public validate(_utcDate: DateType, _options?: ParserOptions): boolean { + public validate( + _utcDate: DateType, + _options?: ParserOptions, + ): boolean { return true; } @@ -27,7 +29,11 @@ export abstract class Setter { export class ValueSetter extends Setter { private value: Value; - private validateValue: (date: DateType, value: Value, options: ParserOptions) => boolean; + private validateValue: ( + date: DateType, + value: Value, + options: ParserOptions, + ) => boolean; private setValue: ( date: DateType, @@ -40,7 +46,11 @@ export class ValueSetter extends Setter { constructor( value: Value, - validateValue: (date: DateType, value: Value, options: ParserOptions) => boolean, + validateValue: ( + date: DateType, + value: Value, + options: ParserOptions, + ) => boolean, setValue: ( date: DateType, flags: ParseFlags, @@ -60,7 +70,10 @@ export class ValueSetter extends Setter { } } - validate(date: DateType, options: ParserOptions): boolean { + validate( + date: DateType, + options: ParserOptions, + ): boolean { return this.validateValue(date, this.value, options); } @@ -78,7 +91,10 @@ export class DateTimezoneSetter extends Setter { subPriority = -1; context: ContextFn; - constructor(context: ContextFn | undefined, reference: DateArg & {}) { + constructor( + context: ContextFn | undefined, + reference: DateArg & {}, + ) { super(); this.context = context || ((date) => constructFrom(reference, date)); } diff --git a/src/date-fns/parse/_lib/constants.ts b/src/date-fns/parse/_lib/constants.ts index 10c6e07..5cd6c13 100644 --- a/src/date-fns/parse/_lib/constants.ts +++ b/src/date-fns/parse/_lib/constants.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/parse/_lib/parsers/AMPMMidnightParser.ts b/src/date-fns/parse/_lib/parsers/AMPMMidnightParser.ts index d118be6..9199824 100644 --- a/src/date-fns/parse/_lib/parsers/AMPMMidnightParser.ts +++ b/src/date-fns/parse/_lib/parsers/AMPMMidnightParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ import type { LocaleDayPeriod, Match } from '../../../locale/types.ts'; @@ -9,7 +8,11 @@ import { dayPeriodEnumToHours } from '../utils.ts'; export class AMPMMidnightParser extends Parser { priority = 80; - parse(dateString: string, token: string, match: Match): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + ): ParseResult { switch (token) { case 'b': case 'bb': @@ -48,7 +51,11 @@ export class AMPMMidnightParser extends Parser { } } - set(date: DateType, _flags: ParseFlags, value: LocaleDayPeriod): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: LocaleDayPeriod, + ): DateType { date.setHours(dayPeriodEnumToHours(value), 0, 0, 0); return date; } diff --git a/src/date-fns/parse/_lib/parsers/AMPMParser.ts b/src/date-fns/parse/_lib/parsers/AMPMParser.ts index 72002a3..779bdaa 100644 --- a/src/date-fns/parse/_lib/parsers/AMPMParser.ts +++ b/src/date-fns/parse/_lib/parsers/AMPMParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,11 @@ import { dayPeriodEnumToHours } from '../utils.ts'; export class AMPMParser extends Parser { priority = 80; - parse(dateString: string, token: string, match: Match): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + ): ParseResult { switch (token) { case 'a': case 'aa': @@ -49,7 +52,11 @@ export class AMPMParser extends Parser { } } - set(date: DateType, _flags: ParseFlags, value: LocaleDayPeriod): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: LocaleDayPeriod, + ): DateType { date.setHours(dayPeriodEnumToHours(value), 0, 0, 0); return date; } diff --git a/src/date-fns/parse/_lib/parsers/DateParser.ts b/src/date-fns/parse/_lib/parsers/DateParser.ts index 814ab6e..d00d01e 100644 --- a/src/date-fns/parse/_lib/parsers/DateParser.ts +++ b/src/date-fns/parse/_lib/parsers/DateParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,10 +5,16 @@ import type { Match } from '../../../locale/types.ts'; import { numericPatterns } from '../constants.ts'; import { Parser } from '../Parser.ts'; import type { ParseFlags, ParseResult } from '../types.ts'; -import { isLeapYearIndex, parseNDigits, parseNumericPattern } from '../utils.ts'; +import { + isLeapYearIndex, + parseNDigits, + parseNumericPattern, +} from '../utils.ts'; const DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -const DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +const DAYS_IN_MONTH_LEAP_YEAR = [ + 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31, +]; // Day of the month export class DateParser extends Parser { @@ -38,13 +43,30 @@ export class DateParser extends Parser { } } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setDate(value); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['Y', 'R', 'q', 'Q', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'q', + 'Q', + 'w', + 'I', + 'D', + 'i', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/DayOfYearParser.ts b/src/date-fns/parse/_lib/parsers/DayOfYearParser.ts index d82e9b8..1c15117 100644 --- a/src/date-fns/parse/_lib/parsers/DayOfYearParser.ts +++ b/src/date-fns/parse/_lib/parsers/DayOfYearParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,7 +5,11 @@ import type { Match } from '../../../locale/types.ts'; import { numericPatterns } from '../constants.ts'; import { Parser } from '../Parser.ts'; import type { ParseFlags, ParseResult } from '../types.ts'; -import { isLeapYearIndex, parseNDigits, parseNumericPattern } from '../utils.ts'; +import { + isLeapYearIndex, + parseNDigits, + parseNumericPattern, +} from '../utils.ts'; export class DayOfYearParser extends Parser { priority = 90; @@ -35,13 +38,33 @@ export class DayOfYearParser extends Parser { } } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMonth(0, value); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['Y', 'R', 'q', 'Q', 'M', 'L', 'w', 'I', 'd', 'E', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'q', + 'Q', + 'M', + 'L', + 'w', + 'I', + 'd', + 'E', + 'i', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/DayParser.ts b/src/date-fns/parse/_lib/parsers/DayParser.ts index ddc649a..e342a23 100644 --- a/src/date-fns/parse/_lib/parsers/DayParser.ts +++ b/src/date-fns/parse/_lib/parsers/DayParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -56,7 +55,12 @@ export class DayParser extends Parser { return value >= 0 && value <= 6; } - set(date: DateType, _flags: ParseFlags, value: number, options: ParserOptions): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + options: ParserOptions, + ): DateType { date = setDay(date, value, options); date.setHours(0, 0, 0, 0); return date; diff --git a/src/date-fns/parse/_lib/parsers/DayPeriodParser.ts b/src/date-fns/parse/_lib/parsers/DayPeriodParser.ts index dd5a7f0..bb6c238 100644 --- a/src/date-fns/parse/_lib/parsers/DayPeriodParser.ts +++ b/src/date-fns/parse/_lib/parsers/DayPeriodParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -11,7 +10,11 @@ import { dayPeriodEnumToHours } from '../utils.ts'; export class DayPeriodParser extends Parser { priority = 80; - parse(dateString: string, token: string, match: Match): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + ): ParseResult { switch (token) { case 'B': case 'BB': @@ -50,7 +53,11 @@ export class DayPeriodParser extends Parser { } } - set(date: DateType, _flags: ParseFlags, value: LocaleDayPeriod): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: LocaleDayPeriod, + ): DateType { date.setHours(dayPeriodEnumToHours(value), 0, 0, 0); return date; } diff --git a/src/date-fns/parse/_lib/parsers/EraParser.ts b/src/date-fns/parse/_lib/parsers/EraParser.ts index b0ed6dd..f200262 100644 --- a/src/date-fns/parse/_lib/parsers/EraParser.ts +++ b/src/date-fns/parse/_lib/parsers/EraParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -16,7 +15,10 @@ export class EraParser extends Parser { case 'G': case 'GG': case 'GGG': - return match.era(dateString, { width: 'abbreviated' }) || match.era(dateString, { width: 'narrow' }); + return ( + match.era(dateString, { width: 'abbreviated' }) || + match.era(dateString, { width: 'narrow' }) + ); // A, B case 'GGGGG': return match.era(dateString, { width: 'narrow' }); @@ -31,7 +33,11 @@ export class EraParser extends Parser { } } - set(date: DateType, flags: ParseFlags, value: number): DateType { + set( + date: DateType, + flags: ParseFlags, + value: number, + ): DateType { flags.era = value; date.setFullYear(value, 0, 1); date.setHours(0, 0, 0, 0); diff --git a/src/date-fns/parse/_lib/parsers/ExtendedYearParser.ts b/src/date-fns/parse/_lib/parsers/ExtendedYearParser.ts index 93283f2..d4ac44d 100644 --- a/src/date-fns/parse/_lib/parsers/ExtendedYearParser.ts +++ b/src/date-fns/parse/_lib/parsers/ExtendedYearParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -17,13 +16,29 @@ export class ExtendedYearParser extends Parser { return parseNDigitsSigned(token.length, dateString); } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setFullYear(value, 0, 1); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['G', 'y', 'Y', 'R', 'w', 'I', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'G', + 'y', + 'Y', + 'R', + 'w', + 'I', + 'i', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/FractionOfSecondParser.ts b/src/date-fns/parse/_lib/parsers/FractionOfSecondParser.ts index 7d5b7ec..560c1cf 100644 --- a/src/date-fns/parse/_lib/parsers/FractionOfSecondParser.ts +++ b/src/date-fns/parse/_lib/parsers/FractionOfSecondParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,11 +9,16 @@ export class FractionOfSecondParser extends Parser { priority = 30; parse(dateString: string, token: string): ParseResult { - const valueCallback = (value: number) => Math.trunc(value * Math.pow(10, -token.length + 3)); + const valueCallback = (value: number) => + Math.trunc(value * Math.pow(10, -token.length + 3)); return mapValue(parseNDigits(token.length, dateString), valueCallback); } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMilliseconds(value); return date; } diff --git a/src/date-fns/parse/_lib/parsers/Hour0To11Parser.ts b/src/date-fns/parse/_lib/parsers/Hour0To11Parser.ts index 43f1874..5866e34 100644 --- a/src/date-fns/parse/_lib/parsers/Hour0To11Parser.ts +++ b/src/date-fns/parse/_lib/parsers/Hour0To11Parser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,11 @@ export class Hour0To11Parser extends Parser { return value >= 0 && value <= 11; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { const isPM = date.getHours() >= 12; if (isPM && value < 12) { date.setHours(value + 12, 0, 0, 0); diff --git a/src/date-fns/parse/_lib/parsers/Hour0to23Parser.ts b/src/date-fns/parse/_lib/parsers/Hour0to23Parser.ts index ffa7c44..fea21c2 100644 --- a/src/date-fns/parse/_lib/parsers/Hour0to23Parser.ts +++ b/src/date-fns/parse/_lib/parsers/Hour0to23Parser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,11 @@ export class Hour0to23Parser extends Parser { return value >= 0 && value <= 23; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setHours(value, 0, 0, 0); return date; } diff --git a/src/date-fns/parse/_lib/parsers/Hour1To24Parser.ts b/src/date-fns/parse/_lib/parsers/Hour1To24Parser.ts index 2c9d8a0..d6ec619 100644 --- a/src/date-fns/parse/_lib/parsers/Hour1To24Parser.ts +++ b/src/date-fns/parse/_lib/parsers/Hour1To24Parser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,11 @@ export class Hour1To24Parser extends Parser { return value >= 1 && value <= 24; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { const hours = value <= 24 ? value % 24 : value; date.setHours(hours, 0, 0, 0); return date; diff --git a/src/date-fns/parse/_lib/parsers/Hour1to12Parser.ts b/src/date-fns/parse/_lib/parsers/Hour1to12Parser.ts index d0a7201..47a43fa 100644 --- a/src/date-fns/parse/_lib/parsers/Hour1to12Parser.ts +++ b/src/date-fns/parse/_lib/parsers/Hour1to12Parser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,11 @@ export class Hour1to12Parser extends Parser { return value >= 1 && value <= 12; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { const isPM = date.getHours() >= 12; if (isPM && value < 12) { date.setHours(value + 12, 0, 0, 0); diff --git a/src/date-fns/parse/_lib/parsers/ISODayParser.ts b/src/date-fns/parse/_lib/parsers/ISODayParser.ts index 98f376a..9933ebb 100644 --- a/src/date-fns/parse/_lib/parsers/ISODayParser.ts +++ b/src/date-fns/parse/_lib/parsers/ISODayParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -96,13 +95,33 @@ export class ISODayParser extends Parser { return value >= 1 && value <= 7; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date = setISODay(date, value); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'E', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'y', + 'Y', + 'u', + 'q', + 'Q', + 'M', + 'L', + 'w', + 'd', + 'D', + 'E', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/ISOTimezoneParser.ts b/src/date-fns/parse/_lib/parsers/ISOTimezoneParser.ts index 68f2b05..631ad33 100644 --- a/src/date-fns/parse/_lib/parsers/ISOTimezoneParser.ts +++ b/src/date-fns/parse/_lib/parsers/ISOTimezoneParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -16,22 +15,38 @@ export class ISOTimezoneParser extends Parser { parse(dateString: string, token: string): ParseResult { switch (token) { case 'x': - return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, dateString); + return parseTimezonePattern( + timezonePatterns.basicOptionalMinutes, + dateString, + ); case 'xx': return parseTimezonePattern(timezonePatterns.basic, dateString); case 'xxxx': - return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, dateString); + return parseTimezonePattern( + timezonePatterns.basicOptionalSeconds, + dateString, + ); case 'xxxxx': - return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, dateString); + return parseTimezonePattern( + timezonePatterns.extendedOptionalSeconds, + dateString, + ); case 'xxx': default: return parseTimezonePattern(timezonePatterns.extended, dateString); } } - set(date: DateType, flags: ParseFlags, value: number): DateType { + set( + date: DateType, + flags: ParseFlags, + value: number, + ): DateType { if (flags.timestampIsSet) return date; - return constructFrom(date, date.getTime() - getTimezoneOffsetInMilliseconds(date) - value); + return constructFrom( + date, + date.getTime() - getTimezoneOffsetInMilliseconds(date) - value, + ); } incompatibleTokens: string[] = ['t', 'T', 'X']; diff --git a/src/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.ts b/src/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.ts index b34eec1..ccf6f75 100644 --- a/src/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.ts +++ b/src/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -16,22 +15,38 @@ export class ISOTimezoneWithZParser extends Parser { parse(dateString: string, token: string): ParseResult { switch (token) { case 'X': - return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, dateString); + return parseTimezonePattern( + timezonePatterns.basicOptionalMinutes, + dateString, + ); case 'XX': return parseTimezonePattern(timezonePatterns.basic, dateString); case 'XXXX': - return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, dateString); + return parseTimezonePattern( + timezonePatterns.basicOptionalSeconds, + dateString, + ); case 'XXXXX': - return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, dateString); + return parseTimezonePattern( + timezonePatterns.extendedOptionalSeconds, + dateString, + ); case 'XXX': default: return parseTimezonePattern(timezonePatterns.extended, dateString); } } - set(date: DateType, flags: ParseFlags, value: number): DateType { + set( + date: DateType, + flags: ParseFlags, + value: number, + ): DateType { if (flags.timestampIsSet) return date; - return constructFrom(date, date.getTime() - getTimezoneOffsetInMilliseconds(date) - value); + return constructFrom( + date, + date.getTime() - getTimezoneOffsetInMilliseconds(date) - value, + ); } incompatibleTokens: string[] = ['t', 'T', 'x']; diff --git a/src/date-fns/parse/_lib/parsers/ISOWeekParser.ts b/src/date-fns/parse/_lib/parsers/ISOWeekParser.ts index cc9d829..542c631 100644 --- a/src/date-fns/parse/_lib/parsers/ISOWeekParser.ts +++ b/src/date-fns/parse/_lib/parsers/ISOWeekParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -29,11 +28,30 @@ export class ISOWeekParser extends Parser { return value >= 1 && value <= 53; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { return startOfISOWeek(setISOWeek(date, value)); } - incompatibleTokens: string[] = ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'y', + 'Y', + 'u', + 'q', + 'Q', + 'M', + 'L', + 'w', + 'd', + 'D', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/ISOWeekYearParser.ts b/src/date-fns/parse/_lib/parsers/ISOWeekYearParser.ts index fbcf046..fcdbe7f 100644 --- a/src/date-fns/parse/_lib/parsers/ISOWeekYearParser.ts +++ b/src/date-fns/parse/_lib/parsers/ISOWeekYearParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -20,14 +19,34 @@ export class ISOWeekYearParser extends Parser { return parseNDigitsSigned(token.length, dateString); } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { const firstWeekOfYear = constructFrom(date, 0); firstWeekOfYear.setFullYear(value, 0, 4); firstWeekOfYear.setHours(0, 0, 0, 0); return startOfISOWeek(firstWeekOfYear); } - incompatibleTokens: string[] = ['G', 'y', 'Y', 'u', 'Q', 'q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'G', + 'y', + 'Y', + 'u', + 'Q', + 'q', + 'M', + 'L', + 'w', + 'd', + 'D', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/LocalDayParser.ts b/src/date-fns/parse/_lib/parsers/LocalDayParser.ts index abda838..0b23af6 100644 --- a/src/date-fns/parse/_lib/parsers/LocalDayParser.ts +++ b/src/date-fns/parse/_lib/parsers/LocalDayParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -11,7 +10,12 @@ import { mapValue, parseNDigits } from '../utils.ts'; // Local day of week export class LocalDayParser extends Parser { priority = 90; - parse(dateString: string, token: string, match: Match, options: ParserOptions): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + options: ParserOptions, + ): ParseResult { const valueCallback = (value: number) => { // We want here floor instead of trunc, so we get -7 for value 0 instead of 0 const wholeWeekDays = Math.floor((value - 1) / 7) * 7; @@ -72,13 +76,34 @@ export class LocalDayParser extends Parser { return value >= 0 && value <= 6; } - set(date: DateType, _flags: ParseFlags, value: number, options: ParserOptions): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + options: ParserOptions, + ): DateType { date = setDay(date, value, options); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'y', + 'R', + 'u', + 'q', + 'Q', + 'M', + 'L', + 'I', + 'd', + 'D', + 'E', + 'i', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/LocalWeekParser.ts b/src/date-fns/parse/_lib/parsers/LocalWeekParser.ts index efe3f8f..89d6336 100644 --- a/src/date-fns/parse/_lib/parsers/LocalWeekParser.ts +++ b/src/date-fns/parse/_lib/parsers/LocalWeekParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -29,11 +28,30 @@ export class LocalWeekParser extends Parser { return value >= 1 && value <= 53; } - set(date: DateType, _flags: ParseFlags, value: number, options: ParserOptions): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + options: ParserOptions, + ): DateType { return startOfWeek(setWeek(date, value, options), options); } - incompatibleTokens: string[] = ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']; + incompatibleTokens: string[] = [ + 'y', + 'R', + 'u', + 'q', + 'Q', + 'M', + 'L', + 'I', + 'd', + 'D', + 'i', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/LocalWeekYearParser.ts b/src/date-fns/parse/_lib/parsers/LocalWeekYearParser.ts index 3910552..506a5e2 100644 --- a/src/date-fns/parse/_lib/parsers/LocalWeekYearParser.ts +++ b/src/date-fns/parse/_lib/parsers/LocalWeekYearParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -14,7 +13,11 @@ import type { YearParserValue } from './YearParser.ts'; export class LocalWeekYearParser extends Parser { priority = 130; - parse(dateString: string, token: string, match: Match): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + ): ParseResult { const valueCallback = (year: number) => ({ year, isTwoDigitYear: token === 'YY', @@ -35,7 +38,10 @@ export class LocalWeekYearParser extends Parser { } } - validate(_date: DateType, value: YearParserValue): boolean { + validate( + _date: DateType, + value: YearParserValue, + ): boolean { return value.isTwoDigitYear || value.year > 0; } @@ -48,19 +54,41 @@ export class LocalWeekYearParser extends Parser { const currentYear = getWeekYear(date, options); if (value.isTwoDigitYear) { - const normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear); - date.setFullYear(normalizedTwoDigitYear, 0, options.firstWeekContainsDate); + const normalizedTwoDigitYear = normalizeTwoDigitYear( + value.year, + currentYear, + ); + date.setFullYear( + normalizedTwoDigitYear, + 0, + options.firstWeekContainsDate, + ); date.setHours(0, 0, 0, 0); return startOfWeek(date, options); } - const year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year; + const year = + !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year; date.setFullYear(year, 0, options.firstWeekContainsDate); date.setHours(0, 0, 0, 0); return startOfWeek(date, options); } - incompatibleTokens: string[] = ['y', 'R', 'u', 'Q', 'q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']; + incompatibleTokens: string[] = [ + 'y', + 'R', + 'u', + 'Q', + 'q', + 'M', + 'L', + 'I', + 'd', + 'D', + 'i', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/MinuteParser.ts b/src/date-fns/parse/_lib/parsers/MinuteParser.ts index 3ebb362..8f70014 100644 --- a/src/date-fns/parse/_lib/parsers/MinuteParser.ts +++ b/src/date-fns/parse/_lib/parsers/MinuteParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,11 @@ export class MinuteParser extends Parser { return value >= 0 && value <= 59; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMinutes(value, 0, 0); return date; } diff --git a/src/date-fns/parse/_lib/parsers/MonthParser.ts b/src/date-fns/parse/_lib/parsers/MonthParser.ts index 0c39ff0..45f387f 100644 --- a/src/date-fns/parse/_lib/parsers/MonthParser.ts +++ b/src/date-fns/parse/_lib/parsers/MonthParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,21 @@ import type { ParseFlags, ParseResult } from '../types.ts'; import { mapValue, parseNDigits, parseNumericPattern } from '../utils.ts'; export class MonthParser extends Parser { - incompatibleTokens: string[] = ['Y', 'R', 'q', 'Q', 'L', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'q', + 'Q', + 'L', + 'w', + 'I', + 'D', + 'i', + 'e', + 'c', + 't', + 'T', + ]; priority = 110; parse(dateString: string, token: string, match: Match): ParseResult { @@ -18,7 +31,10 @@ export class MonthParser extends Parser { switch (token) { // 1, 2, ..., 12 case 'M': - return mapValue(parseNumericPattern(numericPatterns.month, dateString), valueCallback); + return mapValue( + parseNumericPattern(numericPatterns.month, dateString), + valueCallback, + ); // 01, 02, ..., 12 case 'MM': return mapValue(parseNDigits(2, dateString), valueCallback); @@ -36,7 +52,8 @@ export class MonthParser extends Parser { match.month(dateString, { width: 'abbreviated', context: 'formatting', - }) || match.month(dateString, { width: 'narrow', context: 'formatting' }) + }) || + match.month(dateString, { width: 'narrow', context: 'formatting' }) ); // J, F, ..., D case 'MMMMM': @@ -62,7 +79,11 @@ export class MonthParser extends Parser { return value >= 0 && value <= 11; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMonth(value, 1); date.setHours(0, 0, 0, 0); return date; diff --git a/src/date-fns/parse/_lib/parsers/QuarterParser.ts b/src/date-fns/parse/_lib/parsers/QuarterParser.ts index b817344..9883a7e 100644 --- a/src/date-fns/parse/_lib/parsers/QuarterParser.ts +++ b/src/date-fns/parse/_lib/parsers/QuarterParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -61,13 +60,32 @@ export class QuarterParser extends Parser { return value >= 1 && value <= 4; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMonth((value - 1) * 3, 1); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['Y', 'R', 'q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'q', + 'M', + 'L', + 'w', + 'I', + 'd', + 'D', + 'i', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/SecondParser.ts b/src/date-fns/parse/_lib/parsers/SecondParser.ts index 6a682de..5fc32e7 100644 --- a/src/date-fns/parse/_lib/parsers/SecondParser.ts +++ b/src/date-fns/parse/_lib/parsers/SecondParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -26,7 +25,11 @@ export class SecondParser extends Parser { return value >= 0 && value <= 59; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setSeconds(value, 0); return date; } diff --git a/src/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.ts b/src/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.ts index c616d13..9b9faad 100644 --- a/src/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.ts +++ b/src/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -12,7 +11,12 @@ import { mapValue, parseNDigits } from '../utils.ts'; export class StandAloneLocalDayParser extends Parser { priority = 90; - parse(dateString: string, token: string, match: Match, options: ParserOptions): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + options: ParserOptions, + ): ParseResult { const valueCallback = (value: number) => { // We want here floor instead of trunc, so we get -7 for value 0 instead of 0 const wholeWeekDays = Math.floor((value - 1) / 7) * 7; @@ -73,13 +77,34 @@ export class StandAloneLocalDayParser extends Parser { return value >= 0 && value <= 6; } - set(date: DateType, _flags: ParseFlags, value: number, options: ParserOptions): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + options: ParserOptions, + ): DateType { date = setDay(date, value, options); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'e', 't', 'T']; + incompatibleTokens: string[] = [ + 'y', + 'R', + 'u', + 'q', + 'Q', + 'M', + 'L', + 'I', + 'd', + 'D', + 'E', + 'i', + 'e', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/StandAloneMonthParser.ts b/src/date-fns/parse/_lib/parsers/StandAloneMonthParser.ts index ad0857e..41a919e 100644 --- a/src/date-fns/parse/_lib/parsers/StandAloneMonthParser.ts +++ b/src/date-fns/parse/_lib/parsers/StandAloneMonthParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -17,7 +16,10 @@ export class StandAloneMonthParser extends Parser { switch (token) { // 1, 2, ..., 12 case 'L': - return mapValue(parseNumericPattern(numericPatterns.month, dateString), valueCallback); + return mapValue( + parseNumericPattern(numericPatterns.month, dateString), + valueCallback, + ); // 01, 02, ..., 12 case 'LL': return mapValue(parseNDigits(2, dateString), valueCallback); @@ -35,7 +37,8 @@ export class StandAloneMonthParser extends Parser { match.month(dateString, { width: 'abbreviated', context: 'standalone', - }) || match.month(dateString, { width: 'narrow', context: 'standalone' }) + }) || + match.month(dateString, { width: 'narrow', context: 'standalone' }) ); // J, F, ..., D case 'LLLLL': @@ -61,13 +64,31 @@ export class StandAloneMonthParser extends Parser { return value >= 0 && value <= 11; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMonth(value, 1); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['Y', 'R', 'q', 'Q', 'M', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'q', + 'Q', + 'M', + 'w', + 'I', + 'D', + 'i', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/StandAloneQuarterParser.ts b/src/date-fns/parse/_lib/parsers/StandAloneQuarterParser.ts index 022b453..c269d32 100644 --- a/src/date-fns/parse/_lib/parsers/StandAloneQuarterParser.ts +++ b/src/date-fns/parse/_lib/parsers/StandAloneQuarterParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -61,13 +60,32 @@ export class StandAloneQuarterParser extends Parser { return value >= 1 && value <= 4; } - set(date: DateType, _flags: ParseFlags, value: number): DateType { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): DateType { date.setMonth((value - 1) * 3, 1); date.setHours(0, 0, 0, 0); return date; } - incompatibleTokens: string[] = ['Y', 'R', 'Q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'Q', + 'M', + 'L', + 'w', + 'I', + 'd', + 'D', + 'i', + 'e', + 'c', + 't', + 'T', + ]; } /* eslint-enable */ diff --git a/src/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.ts b/src/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.ts index ca7b715..7d0d3b8 100644 --- a/src/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.ts +++ b/src/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -14,7 +13,11 @@ export class TimestampMillisecondsParser extends Parser { return parseAnyDigitsSigned(dateString); } - set(date: DateType, _flags: ParseFlags, value: number): [DateType, ParseFlags] { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): [DateType, ParseFlags] { return [constructFrom(date, value), { timestampIsSet: true }]; } diff --git a/src/date-fns/parse/_lib/parsers/TimestampSecondsParser.ts b/src/date-fns/parse/_lib/parsers/TimestampSecondsParser.ts index 937047b..dc681c9 100644 --- a/src/date-fns/parse/_lib/parsers/TimestampSecondsParser.ts +++ b/src/date-fns/parse/_lib/parsers/TimestampSecondsParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -14,7 +13,11 @@ export class TimestampSecondsParser extends Parser { return parseAnyDigitsSigned(dateString); } - set(date: DateType, _flags: ParseFlags, value: number): [DateType, ParseFlags] { + set( + date: DateType, + _flags: ParseFlags, + value: number, + ): [DateType, ParseFlags] { return [constructFrom(date, value * 1000), { timestampIsSet: true }]; } diff --git a/src/date-fns/parse/_lib/parsers/YearParser.ts b/src/date-fns/parse/_lib/parsers/YearParser.ts index 0adc351..7fee0e2 100644 --- a/src/date-fns/parse/_lib/parsers/YearParser.ts +++ b/src/date-fns/parse/_lib/parsers/YearParser.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -22,9 +21,24 @@ export interface YearParserValue { // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 | export class YearParser extends Parser { priority = 130; - incompatibleTokens: string[] = ['Y', 'R', 'u', 'w', 'I', 'i', 'e', 'c', 't', 'T']; + incompatibleTokens: string[] = [ + 'Y', + 'R', + 'u', + 'w', + 'I', + 'i', + 'e', + 'c', + 't', + 'T', + ]; - parse(dateString: string, token: string, match: Match): ParseResult { + parse( + dateString: string, + token: string, + match: Match, + ): ParseResult { const valueCallback = (year: number) => ({ year, isTwoDigitYear: token === 'yy', @@ -45,21 +59,32 @@ export class YearParser extends Parser { } } - validate(_date: DateType, value: YearParserValue): boolean { + validate( + _date: DateType, + value: YearParserValue, + ): boolean { return value.isTwoDigitYear || value.year > 0; } - set(date: DateType, flags: ParseFlags, value: YearParserValue): DateType { + set( + date: DateType, + flags: ParseFlags, + value: YearParserValue, + ): DateType { const currentYear = date.getFullYear(); if (value.isTwoDigitYear) { - const normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear); + const normalizedTwoDigitYear = normalizeTwoDigitYear( + value.year, + currentYear, + ); date.setFullYear(normalizedTwoDigitYear, 0, 1); date.setHours(0, 0, 0, 0); return date; } - const year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year; + const year = + !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year; date.setFullYear(year, 0, 1); date.setHours(0, 0, 0, 0); return date; diff --git a/src/date-fns/parse/_lib/parsers/index.ts b/src/date-fns/parse/_lib/parsers/index.ts index b8a3a42..9e479cc 100644 --- a/src/date-fns/parse/_lib/parsers/index.ts +++ b/src/date-fns/parse/_lib/parsers/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/parse/_lib/types.ts b/src/date-fns/parse/_lib/types.ts index 23d1e1d..cb2e7a1 100644 --- a/src/date-fns/parse/_lib/types.ts +++ b/src/date-fns/parse/_lib/types.ts @@ -1,15 +1,20 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck -import type { LocalizedOptions, FirstWeekContainsDateOptions, WeekOptions } from '../../types.ts'; +import type { + LocalizedOptions, + FirstWeekContainsDateOptions, + WeekOptions, +} from '../../types.ts'; export interface ParseFlags { timestampIsSet?: boolean; era?: number; } -export type ParserOptions = Required & FirstWeekContainsDateOptions & WeekOptions>; +export type ParserOptions = Required< + LocalizedOptions<'options'> & FirstWeekContainsDateOptions & WeekOptions +>; export type ParseResult = { value: TValue; rest: string } | null; diff --git a/src/date-fns/parse/_lib/utils.ts b/src/date-fns/parse/_lib/utils.ts index 8f07c8e..f7819e2 100644 --- a/src/date-fns/parse/_lib/utils.ts +++ b/src/date-fns/parse/_lib/utils.ts @@ -1,9 +1,12 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import type { LocaleDayPeriod } from '../../locale/types.ts'; -import { millisecondsInHour, millisecondsInMinute, millisecondsInSecond } from '../../constants/index.ts'; +import { + millisecondsInHour, + millisecondsInMinute, + millisecondsInSecond, +} from '../../constants/index.ts'; import type { ParseResult } from './types.ts'; import { numericPatterns } from './constants.ts'; @@ -21,7 +24,10 @@ export function mapValue( }; } -export function parseNumericPattern(pattern: RegExp, dateString: string): ParseResult { +export function parseNumericPattern( + pattern: RegExp, + dateString: string, +): ParseResult { const matchResult = dateString.match(pattern); if (!matchResult) { @@ -34,7 +40,10 @@ export function parseNumericPattern(pattern: RegExp, dateString: string): ParseR }; } -export function parseTimezonePattern(pattern: RegExp, dateString: string): ParseResult { +export function parseTimezonePattern( + pattern: RegExp, + dateString: string, +): ParseResult { const matchResult = dateString.match(pattern); if (!matchResult) { @@ -55,7 +64,11 @@ export function parseTimezonePattern(pattern: RegExp, dateString: string): Parse const seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0; return { - value: sign * (hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * millisecondsInSecond), + value: + sign * + (hours * millisecondsInHour + + minutes * millisecondsInMinute + + seconds * millisecondsInSecond), rest: dateString.slice(matchResult[0].length), }; } @@ -64,7 +77,10 @@ export function parseAnyDigitsSigned(dateString: string): ParseResult { return parseNumericPattern(numericPatterns.anyDigitsSigned, dateString); } -export function parseNDigits(n: number, dateString: string): ParseResult { +export function parseNDigits( + n: number, + dateString: string, +): ParseResult { switch (n) { case 1: return parseNumericPattern(numericPatterns.singleDigit, dateString); @@ -79,7 +95,10 @@ export function parseNDigits(n: number, dateString: string): ParseResult } } -export function parseNDigitsSigned(n: number, dateString: string): ParseResult { +export function parseNDigitsSigned( + n: number, + dateString: string, +): ParseResult { switch (n) { case 1: return parseNumericPattern(numericPatterns.singleDigitSigned, dateString); @@ -112,7 +131,10 @@ export function dayPeriodEnumToHours(dayPeriod: LocaleDayPeriod): number { } } -export function normalizeTwoDigitYear(twoDigitYear: number, currentYear: number): number { +export function normalizeTwoDigitYear( + twoDigitYear: number, + currentYear: number, +): number { const isCommonEra = currentYear > 0; // Absolute number of the current year: // 1 -> 1 AC diff --git a/src/date-fns/parse/index.ts b/src/date-fns/parse/index.ts index 3bc0451..fcd8572 100644 --- a/src/date-fns/parse/index.ts +++ b/src/date-fns/parse/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -33,7 +32,8 @@ export { longFormatters, parsers }; * The {@link parse} function options. */ export interface ParseOptions - extends LocalizedOptions<'options' | 'match' | 'formatLong'>, + extends + LocalizedOptions<'options' | 'match' | 'formatLong'>, FirstWeekContainsDateOptions, WeekOptions, AdditionalTokensOptions, @@ -50,7 +50,8 @@ export interface ParseOptions // If there is no matching single quote // then the sequence will continue until the end of the string. // - . matches any single character unmatched by previous parts of the RegExps -const formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; +const formattingTokensRegExp = + /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also // sequences of symbols P, p, and the combinations like `PPPPPPPppppp` @@ -360,7 +361,10 @@ const unescapedLatinCharacterRegExp = /[a-zA-Z]/; * }) * //=> Sun Feb 28 2010 00:00:00 */ -export function parse( +export function parse< + DateType extends Date, + ResultDate extends Date = DateType, +>( dateStr: string, formatStr: string, referenceDate: DateArg, @@ -384,7 +388,8 @@ export function parse defaultOptions.locale?.options?.weekStartsOn ?? 0; - if (!formatStr) return dateStr ? invalidDate() : toDate(referenceDate, options?.in); + if (!formatStr) + return dateStr ? invalidDate() : toDate(referenceDate, options?.in); const subFnOptions: ParserOptions = { firstWeekContainsDate, @@ -394,7 +399,9 @@ export function parse // If timezone isn't specified, it will try to use the context or // the reference date and fallback to the system time zone. - const setters: Setter[] = [new DateTimezoneSetter(options?.in, referenceDate)]; + const setters: Setter[] = [ + new DateTimezoneSetter(options?.in, referenceDate), + ]; const tokens = formatStr .match(longFormattingTokensRegExp)! @@ -412,10 +419,16 @@ export function parse const usedTokens: Array<{ token: string; fullToken: string }> = []; for (let token of tokens) { - if (!options?.useAdditionalWeekYearTokens && isProtectedWeekYearToken(token)) { + if ( + !options?.useAdditionalWeekYearTokens && + isProtectedWeekYearToken(token) + ) { warnOrThrowProtectedError(token, formatStr, dateStr); } - if (!options?.useAdditionalDayOfYearTokens && isProtectedDayOfYearToken(token)) { + if ( + !options?.useAdditionalDayOfYearTokens && + isProtectedDayOfYearToken(token) + ) { warnOrThrowProtectedError(token, formatStr, dateStr); } @@ -425,7 +438,9 @@ export function parse const { incompatibleTokens } = parser; if (Array.isArray(incompatibleTokens)) { const incompatibleToken = usedTokens.find( - (usedToken) => incompatibleTokens.includes(usedToken.token) || usedToken.token === firstCharacter, + (usedToken) => + incompatibleTokens.includes(usedToken.token) || + usedToken.token === firstCharacter, ); if (incompatibleToken) { throw new RangeError( @@ -433,12 +448,19 @@ export function parse ); } } else if (parser.incompatibleTokens === '*' && usedTokens.length > 0) { - throw new RangeError(`The format string mustn't contain \`${token}\` and any other token at the same time`); + throw new RangeError( + `The format string mustn't contain \`${token}\` and any other token at the same time`, + ); } usedTokens.push({ token: firstCharacter, fullToken: token }); - const parseResult = parser.run(dateStr, token, locale.match, subFnOptions); + const parseResult = parser.run( + dateStr, + token, + locale.match, + subFnOptions, + ); if (!parseResult) { return invalidDate(); @@ -449,7 +471,11 @@ export function parse dateStr = parseResult.rest; } else { if (firstCharacter.match(unescapedLatinCharacterRegExp)) { - throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`'); + throw new RangeError( + 'Format string contains an unescaped latin alphabet character `' + + firstCharacter + + '`', + ); } // Replace two single quote characters with one single quote character @@ -478,7 +504,9 @@ export function parse .sort((a, b) => b - a) .filter((priority, index, array) => array.indexOf(priority) === index) .map((priority) => - setters.filter((setter) => setter.priority === priority).sort((a, b) => b.subPriority - a.subPriority), + setters + .filter((setter) => setter.priority === priority) + .sort((a, b) => b.subPriority - a.subPriority), ) .map((setterArray) => setterArray[0]); diff --git a/src/date-fns/parseISO/index.ts b/src/date-fns/parseISO/index.ts index 8efb334..05c0a0a 100644 --- a/src/date-fns/parseISO/index.ts +++ b/src/date-fns/parseISO/index.ts @@ -1,8 +1,10 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck -import { millisecondsInHour, millisecondsInMinute } from '../constants/index.ts'; +import { + millisecondsInHour, + millisecondsInMinute, +} from '../constants/index.ts'; import { constructFrom } from '../constructFrom/index.ts'; import { toDate } from '../toDate/index.ts'; import type { ContextOptions } from '../types.ts'; @@ -10,7 +12,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link parseISO} function options. */ -export interface ParseISOOptions extends ContextOptions { +export interface ParseISOOptions< + DateType extends Date = Date, +> extends ContextOptions { /** The additional number of digits in the extended year format */ additionalDigits?: 0 | 1 | 2; } @@ -48,10 +52,10 @@ export interface ParseISOOptions extends ContextOp * const result = parseISO('+02014101', { additionalDigits: 1 }) * //=> Fri Apr 11 2014 00:00:00 */ -export function parseISO( - argument: string, - options?: ParseISOOptions, -): ResultDate { +export function parseISO< + DateType extends Date, + ResultDate extends Date = DateType, +>(argument: string, options?: ParseISOOptions): ResultDate { const invalidDate = () => constructFrom(options?.in, NaN); const additionalDigits = options?.additionalDigits ?? 2; @@ -80,7 +84,11 @@ export function parseISO= 0 && month <= 11 && date >= 1 && date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28)); + return ( + month >= 0 && + month <= 11 && + date >= 1 && + date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28)) + ); } function validateDayOfYearDate(year: number, dayOfYear: number): boolean { @@ -268,12 +299,23 @@ function validateWeekDate(_year: number, week: number, day: number): boolean { return week >= 1 && week <= 53 && day >= 0 && day <= 6; } -function validateTime(hours: number, minutes: number, seconds: number): boolean { +function validateTime( + hours: number, + minutes: number, + seconds: number, +): boolean { if (hours === 24) { return minutes === 0 && seconds === 0; } - return seconds >= 0 && seconds < 60 && minutes >= 0 && minutes < 60 && hours >= 0 && hours < 25; + return ( + seconds >= 0 && + seconds < 60 && + minutes >= 0 && + minutes < 60 && + hours >= 0 && + hours < 25 + ); } function validateTimezone(_hours: number, minutes: number): boolean { diff --git a/src/date-fns/parseJSON/index.ts b/src/date-fns/parseJSON/index.ts index 0cbb8c9..147ec35 100644 --- a/src/date-fns/parseJSON/index.ts +++ b/src/date-fns/parseJSON/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link parseJSON} function options. */ -export interface ParseJSONOptions extends ContextOptions {} +export interface ParseJSONOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * Converts a complete ISO date string in UTC time, the typical format for transmitting diff --git a/src/date-fns/previousDay/index.ts b/src/date-fns/previousDay/index.ts index ab56bfa..57bd3ea 100644 --- a/src/date-fns/previousDay/index.ts +++ b/src/date-fns/previousDay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg, Day } from '../types.ts'; /** * The {@link previousDay} function options. */ -export interface PreviousDayOptions extends ContextOptions {} +export interface PreviousDayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousDay @@ -38,7 +39,10 @@ export interface PreviousDayOptions extends Contex * const result = previousDay(new Date(2020, 2, 21), 2) * //=> Tue Mar 17 2020 00:00:00 */ -export function previousDay( +export function previousDay< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, day: Day, options?: PreviousDayOptions | undefined, diff --git a/src/date-fns/previousFriday/index.ts b/src/date-fns/previousFriday/index.ts index 2e0b798..acbd678 100644 --- a/src/date-fns/previousFriday/index.ts +++ b/src/date-fns/previousFriday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousFriday} function options. */ -export interface PreviousFridayOptions extends ContextOptions {} +export interface PreviousFridayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousFriday @@ -31,7 +32,10 @@ export interface PreviousFridayOptions extends Con * const result = previousFriday(new Date(2021, 5, 19)) * //=> Fri June 18 2021 00:00:00 */ -export function previousFriday( +export function previousFriday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousFridayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/previousMonday/index.ts b/src/date-fns/previousMonday/index.ts index 0941f3c..4cbb4f0 100644 --- a/src/date-fns/previousMonday/index.ts +++ b/src/date-fns/previousMonday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousMonday} function options. */ -export interface PreviousMondayOptions extends ContextOptions {} +export interface PreviousMondayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousMonday @@ -31,7 +32,10 @@ export interface PreviousMondayOptions extends Con * const result = previousMonday(new Date(2021, 5, 18)) * //=> Mon June 14 2021 00:00:00 */ -export function previousMonday( +export function previousMonday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousMondayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/previousSaturday/index.ts b/src/date-fns/previousSaturday/index.ts index b398bf2..45e0329 100644 --- a/src/date-fns/previousSaturday/index.ts +++ b/src/date-fns/previousSaturday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousSaturday} function options. */ -export interface PreviousSaturdayOptions extends ContextOptions {} +export interface PreviousSaturdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousSaturday @@ -31,7 +32,10 @@ export interface PreviousSaturdayOptions extends C * const result = previousSaturday(new Date(2021, 5, 20)) * //=> Sat June 19 2021 00:00:00 */ -export function previousSaturday( +export function previousSaturday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousSaturdayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/previousSunday/index.ts b/src/date-fns/previousSunday/index.ts index 8f6e6a9..43abf16 100644 --- a/src/date-fns/previousSunday/index.ts +++ b/src/date-fns/previousSunday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousSunday} function options. */ -export interface PreviousSundayOptions extends ContextOptions {} +export interface PreviousSundayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousSunday @@ -31,7 +32,10 @@ export interface PreviousSundayOptions extends Con * const result = previousSunday(new Date(2021, 5, 21)) * //=> Sun June 20 2021 00:00:00 */ -export function previousSunday( +export function previousSunday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousSundayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/previousThursday/index.ts b/src/date-fns/previousThursday/index.ts index a4095e3..a05c574 100644 --- a/src/date-fns/previousThursday/index.ts +++ b/src/date-fns/previousThursday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousThursday} function options. */ -export interface PreviousThursdayOptions extends ContextOptions {} +export interface PreviousThursdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousThursday @@ -31,7 +32,10 @@ export interface PreviousThursdayOptions extends C * const result = previousThursday(new Date(2021, 5, 18)) * //=> Thu June 17 2021 00:00:00 */ -export function previousThursday( +export function previousThursday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousThursdayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/previousTuesday/index.ts b/src/date-fns/previousTuesday/index.ts index 09116dc..9a3e953 100644 --- a/src/date-fns/previousTuesday/index.ts +++ b/src/date-fns/previousTuesday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousTuesday} function options. */ -export interface PreviousTuesdayOptions extends ContextOptions {} +export interface PreviousTuesdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousTuesday @@ -31,7 +32,10 @@ export interface PreviousTuesdayOptions extends Co * const result = previousTuesday(new Date(2021, 5, 18)) * //=> Tue June 15 2021 00:00:00 */ -export function previousTuesday( +export function previousTuesday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousTuesdayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/previousWednesday/index.ts b/src/date-fns/previousWednesday/index.ts index d5431c6..ca5215a 100644 --- a/src/date-fns/previousWednesday/index.ts +++ b/src/date-fns/previousWednesday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link previousWednesday} function options. */ -export interface PreviousWednesdayOptions extends ContextOptions {} +export interface PreviousWednesdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name previousWednesday @@ -31,7 +32,10 @@ export interface PreviousWednesdayOptions extends * const result = previousWednesday(new Date(2021, 5, 18)) * //=> Wed June 16 2021 00:00:00 */ -export function previousWednesday( +export function previousWednesday< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: PreviousWednesdayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/quartersToMonths/index.ts b/src/date-fns/quartersToMonths/index.ts index a4d2b44..10829c5 100644 --- a/src/date-fns/quartersToMonths/index.ts +++ b/src/date-fns/quartersToMonths/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/quartersToYears/index.ts b/src/date-fns/quartersToYears/index.ts index 106d7ca..a8fb44d 100644 --- a/src/date-fns/quartersToYears/index.ts +++ b/src/date-fns/quartersToYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/roundToNearestHours/index.ts b/src/date-fns/roundToNearestHours/index.ts index 943eca0..474fff7 100644 --- a/src/date-fns/roundToNearestHours/index.ts +++ b/src/date-fns/roundToNearestHours/index.ts @@ -1,17 +1,23 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getRoundingMethod } from '../_lib/getRoundingMethod/index.ts'; import { constructFrom } from '../constructFrom/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, NearestHours, NearestToUnitOptions, RoundingOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + NearestHours, + NearestToUnitOptions, + RoundingOptions, +} from '../types.ts'; /** * The {@link roundToNearestHours} function options. */ export interface RoundToNearestHoursOptions - extends NearestToUnitOptions, + extends + NearestToUnitOptions, RoundingOptions, ContextOptions {} @@ -57,19 +63,27 @@ export interface RoundToNearestHoursOptions * const result = roundToNearestHours(new Date(2014, 6, 10, 12, 34, 56), { roundingMethod: 'floor', nearestTo: 8 }) * //=> Thu Jul 10 2014 08:00:00 */ -export function roundToNearestHours( +export function roundToNearestHours< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: RoundToNearestHoursOptions, ): ResultDate { const nearestTo = options?.nearestTo ?? 1; - if (nearestTo < 1 || nearestTo > 12) return constructFrom(options?.in || date, NaN); + if (nearestTo < 1 || nearestTo > 12) + return constructFrom(options?.in || date, NaN); const date_ = toDate(date, options?.in); const fractionalMinutes = date_.getMinutes() / 60; const fractionalSeconds = date_.getSeconds() / 60 / 60; const fractionalMilliseconds = date_.getMilliseconds() / 1000 / 60 / 60; - const hours = date_.getHours() + fractionalMinutes + fractionalSeconds + fractionalMilliseconds; + const hours = + date_.getHours() + + fractionalMinutes + + fractionalSeconds + + fractionalMilliseconds; const method = options?.roundingMethod ?? 'round'; const roundingMethod = getRoundingMethod(method); diff --git a/src/date-fns/roundToNearestMinutes/index.ts b/src/date-fns/roundToNearestMinutes/index.ts index 4ed88c8..3892192 100644 --- a/src/date-fns/roundToNearestMinutes/index.ts +++ b/src/date-fns/roundToNearestMinutes/index.ts @@ -1,17 +1,23 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getRoundingMethod } from '../_lib/getRoundingMethod/index.ts'; import { constructFrom } from '../constructFrom/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, NearestMinutes, NearestToUnitOptions, RoundingOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + NearestMinutes, + NearestToUnitOptions, + RoundingOptions, +} from '../types.ts'; /** * The {@link roundToNearestMinutes} function options. */ export interface RoundToNearestMinutesOptions - extends NearestToUnitOptions, + extends + NearestToUnitOptions, RoundingOptions, ContextOptions {} @@ -52,7 +58,10 @@ export interface RoundToNearestMinutesOptions * const result = roundToNearestMinutes(new Date(2014, 6, 10, 12, 12, 34), { roundingMethod: 'ceil', nearestTo: 30 }) * //=> Thu Jul 10 2014 12:30:00 */ -export function roundToNearestMinutes( +export function roundToNearestMinutes< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: RoundToNearestMinutesOptions, ): ResultDate { @@ -63,7 +72,8 @@ export function roundToNearestMinutes extends ContextOptions {} +export interface SetOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name set diff --git a/src/date-fns/setDate/index.ts b/src/date-fns/setDate/index.ts index c27fa1f..2ab44bc 100644 --- a/src/date-fns/setDate/index.ts +++ b/src/date-fns/setDate/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setDate} function options. */ -export interface SetDateOptions extends ContextOptions {} +export interface SetDateOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setDate @@ -32,7 +33,10 @@ export interface SetDateOptions extends ContextOpt * const result = setDate(new Date(2014, 8, 1), 30) * //=> Tue Sep 30 2014 00:00:00 */ -export function setDate( +export function setDate< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, dayOfMonth: number, options?: SetDateOptions | undefined, diff --git a/src/date-fns/setDay/index.ts b/src/date-fns/setDay/index.ts index 651d0a2..e86fb52 100644 --- a/src/date-fns/setDay/index.ts +++ b/src/date-fns/setDay/index.ts @@ -1,19 +1,21 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getDefaultOptions } from '../_lib/defaultOptions/index.ts'; import { addDays } from '../addDays/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link setDay} function options. */ export interface SetDayOptions - extends LocalizedOptions<'options'>, - WeekOptions, - ContextOptions {} + extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} /** * @name setDay @@ -42,7 +44,10 @@ export interface SetDayOptions * const result = setDay(new Date(2014, 8, 1), 0, { weekStartsOn: 1 }) * //=> Sun Sep 07 2014 00:00:00 */ -export function setDay( +export function setDay< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, day: number, options?: SetDayOptions, @@ -63,7 +68,9 @@ export function setDay 6 ? day - ((currentDay + delta) % 7) : ((dayIndex + delta) % 7) - ((currentDay + delta) % 7); + day < 0 || day > 6 + ? day - ((currentDay + delta) % 7) + : ((dayIndex + delta) % 7) - ((currentDay + delta) % 7); return addDays(date_, diff, options); } diff --git a/src/date-fns/setDayOfYear/index.ts b/src/date-fns/setDayOfYear/index.ts index 6e08047..4ceb985 100644 --- a/src/date-fns/setDayOfYear/index.ts +++ b/src/date-fns/setDayOfYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setDayOfYear} function options. */ -export interface SetDayOfYearOptions extends ContextOptions {} +export interface SetDayOfYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setDayOfYear @@ -32,7 +33,10 @@ export interface SetDayOfYearOptions extends Conte * const result = setDayOfYear(new Date(2014, 6, 2), 2) * //=> Thu Jan 02 2014 00:00:00 */ -export function setDayOfYear( +export function setDayOfYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, dayOfYear: number, options?: SetDayOfYearOptions | undefined, diff --git a/src/date-fns/setDefaultOptions/index.ts b/src/date-fns/setDefaultOptions/index.ts index a841e85..624bcde 100644 --- a/src/date-fns/setDefaultOptions/index.ts +++ b/src/date-fns/setDefaultOptions/index.ts @@ -1,9 +1,11 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import type { DefaultOptions } from '../_lib/defaultOptions/index.ts'; -import { getDefaultOptions, setDefaultOptions as setInternalDefaultOptions } from '../_lib/defaultOptions/index.ts'; +import { + getDefaultOptions, + setDefaultOptions as setInternalDefaultOptions, +} from '../_lib/defaultOptions/index.ts'; /** * @name setDefaultOptions @@ -57,7 +59,8 @@ export function setDefaultOptions(options: DefaultOptions): void { for (const property in defaultOptions) { if (Object.prototype.hasOwnProperty.call(defaultOptions, property)) { // [TODO] I challenge you to fix the type - (result as any)[property] = defaultOptions[property as keyof DefaultOptions]; + (result as any)[property] = + defaultOptions[property as keyof DefaultOptions]; } } diff --git a/src/date-fns/setHours/index.ts b/src/date-fns/setHours/index.ts index 9201beb..14e7b73 100644 --- a/src/date-fns/setHours/index.ts +++ b/src/date-fns/setHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setHours} function options. */ -export interface SetHoursOptions extends ContextOptions {} +export interface SetHoursOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setHours @@ -32,7 +33,10 @@ export interface SetHoursOptions extends ContextOp * const result = setHours(new Date(2014, 8, 1, 11, 30), 4) * //=> Mon Sep 01 2014 04:30:00 */ -export function setHours( +export function setHours< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, hours: number, options?: SetHoursOptions | undefined, diff --git a/src/date-fns/setISODay/index.ts b/src/date-fns/setISODay/index.ts index c08dda1..054cd56 100644 --- a/src/date-fns/setISODay/index.ts +++ b/src/date-fns/setISODay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setISODay} function options. */ -export interface SetISODayOptions extends ContextOptions {} +export interface SetISODayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setISODay @@ -36,7 +37,10 @@ export interface SetISODayOptions extends ContextO * const result = setISODay(new Date(2014, 8, 1), 7) * //=> Sun Sep 07 2014 00:00:00 */ -export function setISODay( +export function setISODay< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, day: number, options?: SetISODayOptions | undefined, diff --git a/src/date-fns/setISOWeek/index.ts b/src/date-fns/setISOWeek/index.ts index 5603ddd..c27cf06 100644 --- a/src/date-fns/setISOWeek/index.ts +++ b/src/date-fns/setISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setISOWeek} function options. */ -export interface SetISOWeekOptions extends ContextOptions {} +export interface SetISOWeekOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setISOWeek @@ -35,7 +36,10 @@ export interface SetISOWeekOptions extends Context * const result = setISOWeek(new Date(2004, 7, 7), 53) * //=> Sat Jan 01 2005 00:00:00 */ -export function setISOWeek( +export function setISOWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, week: number, options?: SetISOWeekOptions, diff --git a/src/date-fns/setISOWeekYear/index.ts b/src/date-fns/setISOWeekYear/index.ts index a57bc5b..50156b8 100644 --- a/src/date-fns/setISOWeekYear/index.ts +++ b/src/date-fns/setISOWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -11,7 +10,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setISOWeekYear} function options. */ -export interface SetISOWeekYearOptions extends ContextOptions {} +export interface SetISOWeekYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setISOWeekYear @@ -38,13 +39,19 @@ export interface SetISOWeekYearOptions extends Con * const result = setISOWeekYear(new Date(2008, 11, 29), 2007) * //=> Mon Jan 01 2007 00:00:00 */ -export function setISOWeekYear( +export function setISOWeekYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, weekYear: number, options?: SetISOWeekYearOptions | undefined, ): ResultDate { let _date = toDate(date, options?.in); - const diff = differenceInCalendarDays(_date, startOfISOWeekYear(_date, options)); + const diff = differenceInCalendarDays( + _date, + startOfISOWeekYear(_date, options), + ); const fourthOfJanuary = constructFrom(options?.in || date, 0); fourthOfJanuary.setFullYear(weekYear, 0, 4); fourthOfJanuary.setHours(0, 0, 0, 0); diff --git a/src/date-fns/setMilliseconds/index.ts b/src/date-fns/setMilliseconds/index.ts index e2a4f6a..4a04936 100644 --- a/src/date-fns/setMilliseconds/index.ts +++ b/src/date-fns/setMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setMilliseconds} function options. */ -export interface SetMillisecondsOptions extends ContextOptions {} +export interface SetMillisecondsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setMilliseconds @@ -32,7 +33,10 @@ export interface SetMillisecondsOptions extends Co * const result = setMilliseconds(new Date(2014, 8, 1, 11, 30, 40, 500), 300) * //=> Mon Sep 01 2014 11:30:40.300 */ -export function setMilliseconds( +export function setMilliseconds< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, milliseconds: number, options?: SetMillisecondsOptions | undefined, diff --git a/src/date-fns/setMinutes/index.ts b/src/date-fns/setMinutes/index.ts index b1033a5..1d1d3f8 100644 --- a/src/date-fns/setMinutes/index.ts +++ b/src/date-fns/setMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setMinutes} function options. */ -export interface SetMinutesOptions extends ContextOptions {} +export interface SetMinutesOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setMinutes @@ -32,7 +33,10 @@ export interface SetMinutesOptions extends Context * const result = setMinutes(new Date(2014, 8, 1, 11, 30, 40), 45) * //=> Mon Sep 01 2014 11:45:40 */ -export function setMinutes( +export function setMinutes< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, minutes: number, options?: SetMinutesOptions | undefined, diff --git a/src/date-fns/setMonth/index.ts b/src/date-fns/setMonth/index.ts index 36c4f6b..7a6d0e7 100644 --- a/src/date-fns/setMonth/index.ts +++ b/src/date-fns/setMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setMonth} function options. */ -export interface SetMonthOptions extends ContextOptions {} +export interface SetMonthOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setMonth @@ -34,7 +35,10 @@ export interface SetMonthOptions extends ContextOp * const result = setMonth(new Date(2014, 8, 1), 1) * //=> Sat Feb 01 2014 00:00:00 */ -export function setMonth( +export function setMonth< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, month: number, options?: SetMonthOptions | undefined, diff --git a/src/date-fns/setQuarter/index.ts b/src/date-fns/setQuarter/index.ts index 925f698..26e1ddf 100644 --- a/src/date-fns/setQuarter/index.ts +++ b/src/date-fns/setQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setQuarter} function options. */ -export interface SetQuarterOptions extends ContextOptions {} +export interface SetQuarterOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setQuarter @@ -33,7 +34,10 @@ export interface SetQuarterOptions extends Context * const result = setQuarter(new Date(2014, 6, 2), 2) * //=> Wed Apr 02 2014 00:00:00 */ -export function setQuarter( +export function setQuarter< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, quarter: number, options?: SetQuarterOptions, diff --git a/src/date-fns/setSeconds/index.ts b/src/date-fns/setSeconds/index.ts index bfceaa1..c58a263 100644 --- a/src/date-fns/setSeconds/index.ts +++ b/src/date-fns/setSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link setSeconds} function options. */ -export interface SetSecondsOptions extends ContextOptions {} +export interface SetSecondsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setSeconds @@ -32,7 +33,10 @@ export interface SetSecondsOptions extends Context * const result = setSeconds(new Date(2014, 8, 1, 11, 30, 40), 45) * //=> Mon Sep 01 2014 11:30:45 */ -export function setSeconds( +export function setSeconds< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, seconds: number, options?: SetSecondsOptions, diff --git a/src/date-fns/setWeek/index.ts b/src/date-fns/setWeek/index.ts index dc9e393..6826436 100644 --- a/src/date-fns/setWeek/index.ts +++ b/src/date-fns/setWeek/index.ts @@ -1,16 +1,22 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getWeek } from '../getWeek/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, FirstWeekContainsDateOptions, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + FirstWeekContainsDateOptions, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link setWeek} function options. */ export interface SetWeekOptions - extends LocalizedOptions<'options'>, + extends + LocalizedOptions<'options'>, WeekOptions, FirstWeekContainsDateOptions, ContextOptions {} @@ -53,7 +59,10 @@ export interface SetWeekOptions * }) * //=> Sun Jan 4 2004 00:00:00 */ -export function setWeek( +export function setWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, week: number, options?: SetWeekOptions, diff --git a/src/date-fns/setWeekYear/index.ts b/src/date-fns/setWeekYear/index.ts index a5e05c7..239fe1e 100644 --- a/src/date-fns/setWeekYear/index.ts +++ b/src/date-fns/setWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -7,13 +6,20 @@ import { constructFrom } from '../constructFrom/index.ts'; import { differenceInCalendarDays } from '../differenceInCalendarDays/index.ts'; import { startOfWeekYear } from '../startOfWeekYear/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, FirstWeekContainsDateOptions, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + FirstWeekContainsDateOptions, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link setWeekYear} function options. */ export interface SetWeekYearOptions - extends LocalizedOptions<'options'>, + extends + LocalizedOptions<'options'>, WeekOptions, FirstWeekContainsDateOptions, ContextOptions {} @@ -57,7 +63,10 @@ export interface SetWeekYearOptions * }) * //=> Sat Jan 01 2005 00:00:00 */ -export function setWeekYear( +export function setWeekYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, weekYear: number, options?: SetWeekYearOptions, @@ -70,7 +79,11 @@ export function setWeekYear extends ContextOptions {} +export interface SetYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name setYear @@ -33,7 +34,10 @@ export interface SetYearOptions extends ContextOpt * const result = setYear(new Date(2014, 8, 1), 2013) * //=> Sun Sep 01 2013 00:00:00 */ -export function setYear( +export function setYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, year: number, options?: SetYearOptions | undefined, diff --git a/src/date-fns/startOfDay/index.ts b/src/date-fns/startOfDay/index.ts index 5ffd943..a309253 100644 --- a/src/date-fns/startOfDay/index.ts +++ b/src/date-fns/startOfDay/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfDay} function options. */ -export interface StartOfDayOptions extends ContextOptions {} +export interface StartOfDayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfDay @@ -32,7 +33,10 @@ export interface StartOfDayOptions extends Context * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Sep 02 2014 00:00:00 */ -export function startOfDay( +export function startOfDay< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfDayOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfDecade/index.ts b/src/date-fns/startOfDecade/index.ts index 336756f..1216cd6 100644 --- a/src/date-fns/startOfDecade/index.ts +++ b/src/date-fns/startOfDecade/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfDecade} options. */ -export interface StartOfDecadeOptions extends ContextOptions {} +export interface StartOfDecadeOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfDecade @@ -31,7 +32,10 @@ export interface StartOfDecadeOptions extends Cont * const result = startOfDecade(new Date(2015, 9, 21, 00, 00, 00)) * //=> Jan 01 2010 00:00:00 */ -export function startOfDecade( +export function startOfDecade< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfDecadeOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfHour/index.ts b/src/date-fns/startOfHour/index.ts index 18cfcbe..9d1efb0 100644 --- a/src/date-fns/startOfHour/index.ts +++ b/src/date-fns/startOfHour/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfHour} function options. */ -export interface StartOfHourOptions extends ContextOptions {} +export interface StartOfHourOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfHour @@ -32,7 +33,10 @@ export interface StartOfHourOptions extends Contex * const result = startOfHour(new Date(2014, 8, 2, 11, 55)) * //=> Tue Sep 02 2014 11:00:00 */ -export function startOfHour( +export function startOfHour< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfHourOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfISOWeek/index.ts b/src/date-fns/startOfISOWeek/index.ts index ea8ff3c..e81c847 100644 --- a/src/date-fns/startOfISOWeek/index.ts +++ b/src/date-fns/startOfISOWeek/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfISOWeek} function options. */ -export interface StartOfISOWeekOptions extends ContextOptions {} +export interface StartOfISOWeekOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfISOWeek @@ -34,7 +35,10 @@ export interface StartOfISOWeekOptions extends Con * const result = startOfISOWeek(new Date(2014, 8, 2, 11, 55, 0)) * //=> Mon Sep 01 2014 00:00:00 */ -export function startOfISOWeek( +export function startOfISOWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfISOWeekOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfISOWeekYear/index.ts b/src/date-fns/startOfISOWeekYear/index.ts index e8471a0..8673880 100644 --- a/src/date-fns/startOfISOWeekYear/index.ts +++ b/src/date-fns/startOfISOWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfISOWeekYear} function options. */ -export interface StartOfISOWeekYearOptions extends ContextOptions {} +export interface StartOfISOWeekYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfISOWeekYear @@ -37,7 +38,10 @@ export interface StartOfISOWeekYearOptions extends * const result = startOfISOWeekYear(new Date(2005, 6, 2)) * //=> Mon Jan 03 2005 00:00:00 */ -export function startOfISOWeekYear( +export function startOfISOWeekYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfISOWeekYearOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfMinute/index.ts b/src/date-fns/startOfMinute/index.ts index d606487..bb3901e 100644 --- a/src/date-fns/startOfMinute/index.ts +++ b/src/date-fns/startOfMinute/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfMinute} function options. */ -export interface StartOfMinuteOptions extends ContextOptions {} +export interface StartOfMinuteOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfMinute @@ -32,7 +33,10 @@ export interface StartOfMinuteOptions extends Cont * const result = startOfMinute(new Date(2014, 11, 1, 22, 15, 45, 400)) * //=> Mon Dec 01 2014 22:15:00 */ -export function startOfMinute( +export function startOfMinute< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfMinuteOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfMonth/index.ts b/src/date-fns/startOfMonth/index.ts index f316c47..54982af 100644 --- a/src/date-fns/startOfMonth/index.ts +++ b/src/date-fns/startOfMonth/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfMonth} function options. */ -export interface StartOfMonthOptions extends ContextOptions {} +export interface StartOfMonthOptions< + ResultDate extends Date, +> extends ContextOptions {} /** * @name startOfMonth @@ -33,7 +34,10 @@ export interface StartOfMonthOptions extends ContextOpt * const result = startOfMonth(new Date(2014, 8, 2, 11, 55, 0)) * //=> Mon Sep 01 2014 00:00:00 */ -export function startOfMonth( +export function startOfMonth< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfMonthOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfQuarter/index.ts b/src/date-fns/startOfQuarter/index.ts index 0855a7e..87f7bf9 100644 --- a/src/date-fns/startOfQuarter/index.ts +++ b/src/date-fns/startOfQuarter/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfQuarter} function options. */ -export interface StartOfQuarterOptions extends ContextOptions {} +export interface StartOfQuarterOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfQuarter @@ -32,7 +33,10 @@ export interface StartOfQuarterOptions extends Con * const result = startOfQuarter(new Date(2014, 8, 2, 11, 55, 0)) * //=> Tue Jul 01 2014 00:00:00 */ -export function startOfQuarter( +export function startOfQuarter< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfQuarterOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfSecond/index.ts b/src/date-fns/startOfSecond/index.ts index 7183e1a..3bcd375 100644 --- a/src/date-fns/startOfSecond/index.ts +++ b/src/date-fns/startOfSecond/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { DateArg, ContextOptions } from '../types.ts'; /** * The {@link startOfSecond} function options. */ -export interface StartOfSecondOptions extends ContextOptions {} +export interface StartOfSecondOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfSecond @@ -32,7 +33,10 @@ export interface StartOfSecondOptions extends Cont * const result = startOfSecond(new Date(2014, 11, 1, 22, 15, 45, 400)) * //=> Mon Dec 01 2014 22:15:45.000 */ -export function startOfSecond( +export function startOfSecond< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfSecondOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfToday/index.ts b/src/date-fns/startOfToday/index.ts index dff365a..6d84dd7 100644 --- a/src/date-fns/startOfToday/index.ts +++ b/src/date-fns/startOfToday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link startOfToday} function options. */ -export interface StartOfTodayOptions extends ContextOptions {} +export interface StartOfTodayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfToday diff --git a/src/date-fns/startOfTomorrow/index.ts b/src/date-fns/startOfTomorrow/index.ts index 0da8115..18e28bf 100644 --- a/src/date-fns/startOfTomorrow/index.ts +++ b/src/date-fns/startOfTomorrow/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -9,7 +8,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link startOfTomorrow} function options. */ -export interface StartOfTomorrowOptions extends ContextOptions {} +export interface StartOfTomorrowOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfTomorrow diff --git a/src/date-fns/startOfWeek/index.ts b/src/date-fns/startOfWeek/index.ts index 9324390..3f14ce6 100644 --- a/src/date-fns/startOfWeek/index.ts +++ b/src/date-fns/startOfWeek/index.ts @@ -1,18 +1,20 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { getDefaultOptions } from '../_lib/defaultOptions/index.ts'; import { toDate } from '../toDate/index.ts'; -import type { ContextOptions, DateArg, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link startOfWeek} function options. */ export interface StartOfWeekOptions - extends LocalizedOptions<'options'>, - WeekOptions, - ContextOptions {} + extends LocalizedOptions<'options'>, WeekOptions, ContextOptions {} /** * @name startOfWeek @@ -41,7 +43,10 @@ export interface StartOfWeekOptions * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 }) * //=> Mon Sep 01 2014 00:00:00 */ -export function startOfWeek( +export function startOfWeek< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfWeekOptions, ): ResultDate { diff --git a/src/date-fns/startOfWeekYear/index.ts b/src/date-fns/startOfWeekYear/index.ts index bc28986..462b4c4 100644 --- a/src/date-fns/startOfWeekYear/index.ts +++ b/src/date-fns/startOfWeekYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -6,13 +5,20 @@ import { getDefaultOptions } from '../_lib/defaultOptions/index.ts'; import { constructFrom } from '../constructFrom/index.ts'; import { getWeekYear } from '../getWeekYear/index.ts'; import { startOfWeek } from '../startOfWeek/index.ts'; -import type { ContextOptions, DateArg, FirstWeekContainsDateOptions, LocalizedOptions, WeekOptions } from '../types.ts'; +import type { + ContextOptions, + DateArg, + FirstWeekContainsDateOptions, + LocalizedOptions, + WeekOptions, +} from '../types.ts'; /** * The {@link startOfWeekYear} function options. */ export interface StartOfWeekYearOptions - extends LocalizedOptions<'options'>, + extends + LocalizedOptions<'options'>, FirstWeekContainsDateOptions, WeekOptions, ContextOptions {} @@ -54,7 +60,10 @@ export interface StartOfWeekYearOptions * }) * //=> Mon Jan 03 2005 00:00:00 */ -export function startOfWeekYear( +export function startOfWeekYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfWeekYearOptions, ): ResultDate { diff --git a/src/date-fns/startOfYear/index.ts b/src/date-fns/startOfYear/index.ts index 3c01a89..630de6c 100644 --- a/src/date-fns/startOfYear/index.ts +++ b/src/date-fns/startOfYear/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link startOfYear} function options. */ -export interface StartOfYearOptions extends ContextOptions {} +export interface StartOfYearOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfYear @@ -32,7 +33,10 @@ export interface StartOfYearOptions extends Contex * const result = startOfYear(new Date(2014, 8, 2, 11, 55, 00)) * //=> Wed Jan 01 2014 00:00:00 */ -export function startOfYear( +export function startOfYear< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, options?: StartOfYearOptions | undefined, ): ResultDate { diff --git a/src/date-fns/startOfYesterday/index.ts b/src/date-fns/startOfYesterday/index.ts index 613f46a..dca8b25 100644 --- a/src/date-fns/startOfYesterday/index.ts +++ b/src/date-fns/startOfYesterday/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions } from '../types.ts'; /** * The {@link startOfYesterday} function options. */ -export interface StartOfYesterdayOptions extends ContextOptions {} +export interface StartOfYesterdayOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name startOfYesterday diff --git a/src/date-fns/sub/index.ts b/src/date-fns/sub/index.ts index 0df5965..c1f834c 100644 --- a/src/date-fns/sub/index.ts +++ b/src/date-fns/sub/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -10,7 +9,9 @@ import type { ContextOptions, DateArg, Duration } from '../types.ts'; /** * The {@link sub} function options. */ -export interface SubOptions extends ContextOptions {} +export interface SubOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name sub @@ -59,7 +60,15 @@ export function sub( duration: Duration, options?: SubOptions, ): ResultDate { - const { years = 0, months = 0, weeks = 0, days = 0, hours = 0, minutes = 0, seconds = 0 } = duration; + const { + years = 0, + months = 0, + weeks = 0, + days = 0, + hours = 0, + minutes = 0, + seconds = 0, + } = duration; const withoutMonths = subMonths(date, months + years * 12, options); const withoutDays = subDays(withoutMonths, days + weeks * 7, options); diff --git a/src/date-fns/subBusinessDays/index.ts b/src/date-fns/subBusinessDays/index.ts index 5946ebf..132fb09 100644 --- a/src/date-fns/subBusinessDays/index.ts +++ b/src/date-fns/subBusinessDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subBusinessDays} function options. */ -export interface SubBusinessDaysOptions extends ContextOptions {} +export interface SubBusinessDaysOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subBusinessDays @@ -32,7 +33,10 @@ export interface SubBusinessDaysOptions extends Co * const result = subBusinessDays(new Date(2014, 8, 1), 10) * //=> Mon Aug 18 2014 00:00:00 (skipped weekend days) */ -export function subBusinessDays( +export function subBusinessDays< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubBusinessDaysOptions | undefined, diff --git a/src/date-fns/subDays/index.ts b/src/date-fns/subDays/index.ts index 220f39c..5fe720b 100644 --- a/src/date-fns/subDays/index.ts +++ b/src/date-fns/subDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subDays} function options. */ -export interface SubDaysOptions extends ContextOptions {} +export interface SubDaysOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subDays @@ -29,7 +30,10 @@ export interface SubDaysOptions extends ContextOpt * const result = subDays(new Date(2014, 8, 1), 10) * //=> Fri Aug 22 2014 00:00:00 */ -export function subDays( +export function subDays< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubDaysOptions | undefined, diff --git a/src/date-fns/subHours/index.ts b/src/date-fns/subHours/index.ts index 632f9b5..91eb540 100644 --- a/src/date-fns/subHours/index.ts +++ b/src/date-fns/subHours/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subHours} function options. */ -export interface SubHoursOptions extends ContextOptions {} +export interface SubHoursOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subHours @@ -32,7 +33,10 @@ export interface SubHoursOptions extends ContextOp * const result = subHours(new Date(2014, 6, 11, 1, 0), 2) * //=> Thu Jul 10 2014 23:00:00 */ -export function subHours( +export function subHours< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubHoursOptions | undefined, diff --git a/src/date-fns/subISOWeekYears/index.ts b/src/date-fns/subISOWeekYears/index.ts index 116d2bf..5a60313 100644 --- a/src/date-fns/subISOWeekYears/index.ts +++ b/src/date-fns/subISOWeekYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subISOWeekYears} function options. */ -export interface SubISOWeekYearsOptions extends ContextOptions {} +export interface SubISOWeekYearsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subISOWeekYears @@ -34,7 +35,10 @@ export interface SubISOWeekYearsOptions extends Co * const result = subISOWeekYears(new Date(2014, 8, 1), 5) * //=> Mon Aug 31 2009 00:00:00 */ -export function subISOWeekYears( +export function subISOWeekYears< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubISOWeekYearsOptions | undefined, diff --git a/src/date-fns/subMilliseconds/index.ts b/src/date-fns/subMilliseconds/index.ts index a49c19e..7e06652 100644 --- a/src/date-fns/subMilliseconds/index.ts +++ b/src/date-fns/subMilliseconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subMilliseconds} function options. */ -export interface SubMillisecondsOptions extends ContextOptions {} +export interface SubMillisecondsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * Subtract the specified number of milliseconds from the given date. @@ -22,7 +23,10 @@ export interface SubMillisecondsOptions extends Co * * @returns The new date with the milliseconds subtracted */ -export function subMilliseconds( +export function subMilliseconds< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubMillisecondsOptions | undefined, diff --git a/src/date-fns/subMinutes/index.ts b/src/date-fns/subMinutes/index.ts index 32a5ed9..70e5bf8 100644 --- a/src/date-fns/subMinutes/index.ts +++ b/src/date-fns/subMinutes/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subMinutes} function options. */ -export interface SubMinutesOptions extends ContextOptions {} +export interface SubMinutesOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subMinutes @@ -32,7 +33,10 @@ export interface SubMinutesOptions extends Context * const result = subMinutes(new Date(2014, 6, 10, 12, 0), 30) * //=> Thu Jul 10 2014 11:30:00 */ -export function subMinutes( +export function subMinutes< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubMinutesOptions | undefined, diff --git a/src/date-fns/subMonths/index.ts b/src/date-fns/subMonths/index.ts index a812744..123fd67 100644 --- a/src/date-fns/subMonths/index.ts +++ b/src/date-fns/subMonths/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The subMonths function options. */ -export interface SubMonthsOptions extends ContextOptions {} +export interface SubMonthsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subMonths @@ -32,7 +33,10 @@ export interface SubMonthsOptions extends ContextO * const result = subMonths(new Date(2015, 1, 1), 5) * //=> Mon Sep 01 2014 00:00:00 */ -export function subMonths( +export function subMonths< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubMonthsOptions | undefined, diff --git a/src/date-fns/subQuarters/index.ts b/src/date-fns/subQuarters/index.ts index 5a6ffc0..18808da 100644 --- a/src/date-fns/subQuarters/index.ts +++ b/src/date-fns/subQuarters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subQuarters} function options. */ -export interface SubQuartersOptions extends ContextOptions {} +export interface SubQuartersOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subQuarters @@ -32,7 +33,10 @@ export interface SubQuartersOptions extends Contex * const result = subQuarters(new Date(2014, 8, 1), 3) * //=> Sun Dec 01 2013 00:00:00 */ -export function subQuarters( +export function subQuarters< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubQuartersOptions, diff --git a/src/date-fns/subSeconds/index.ts b/src/date-fns/subSeconds/index.ts index 24a1ded..f54ff04 100644 --- a/src/date-fns/subSeconds/index.ts +++ b/src/date-fns/subSeconds/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subSeconds} function options. */ -export interface SubSecondsOptions extends ContextOptions {} +export interface SubSecondsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * Subtract the specified number of seconds from the given date. @@ -27,7 +28,10 @@ export interface SubSecondsOptions extends Context * const result = subSeconds(new Date(2014, 6, 10, 12, 45, 0), 30) * //=> Thu Jul 10 2014 12:44:30 */ -export function subSeconds( +export function subSeconds< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubSecondsOptions | undefined, diff --git a/src/date-fns/subWeeks/index.ts b/src/date-fns/subWeeks/index.ts index 5c548f1..f55a78b 100644 --- a/src/date-fns/subWeeks/index.ts +++ b/src/date-fns/subWeeks/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subWeeks} function options. */ -export interface SubWeeksOptions extends ContextOptions {} +export interface SubWeeksOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subWeeks @@ -32,7 +33,10 @@ export interface SubWeeksOptions extends ContextOp * const result = subWeeks(new Date(2014, 8, 1), 4) * //=> Mon Aug 04 2014 00:00:00 */ -export function subWeeks( +export function subWeeks< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubWeeksOptions | undefined, diff --git a/src/date-fns/subYears/index.ts b/src/date-fns/subYears/index.ts index 1801a62..6dc1e94 100644 --- a/src/date-fns/subYears/index.ts +++ b/src/date-fns/subYears/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -8,7 +7,9 @@ import type { ContextOptions, DateArg } from '../types.ts'; /** * The {@link subYears} function options. */ -export interface SubYearsOptions extends ContextOptions {} +export interface SubYearsOptions< + DateType extends Date = Date, +> extends ContextOptions {} /** * @name subYears @@ -32,7 +33,10 @@ export interface SubYearsOptions extends ContextOp * const result = subYears(new Date(2014, 8, 1), 5) * //=> Tue Sep 01 2009 00:00:00 */ -export function subYears( +export function subYears< + DateType extends Date, + ResultDate extends Date = DateType, +>( date: DateArg, amount: number, options?: SubYearsOptions, diff --git a/src/date-fns/toDate/index.ts b/src/date-fns/toDate/index.ts index 673084f..c3573d4 100644 --- a/src/date-fns/toDate/index.ts +++ b/src/date-fns/toDate/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -43,7 +42,10 @@ import type { ConstructableDate, ContextFn, DateArg } from '../types.ts'; * const result = toDate(1392098430000) * //=> Tue Feb 11 2014 11:30:30 */ -export function toDate( +export function toDate< + DateType extends Date | ConstructableDate, + ResultDate extends Date = DateType, +>( argument: DateArg, context?: ContextFn | undefined, ): ResultDate { diff --git a/src/date-fns/transpose/index.ts b/src/date-fns/transpose/index.ts index 75f8878..2ecfae3 100644 --- a/src/date-fns/transpose/index.ts +++ b/src/date-fns/transpose/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -35,16 +34,29 @@ import type { ContextFn, GenericDateConstructor } from '../types.ts'; */ export function transpose( date: InputDate, - constructor: ResultDate | GenericDateConstructor | ContextFn, + constructor: + ResultDate | GenericDateConstructor | ContextFn, ): ResultDate { - const date_ = isConstructor(constructor) ? new constructor(0) : constructFrom(constructor, 0); + const date_ = isConstructor(constructor) + ? new constructor(0) + : constructFrom(constructor, 0); date_.setFullYear(date.getFullYear(), date.getMonth(), date.getDate()); - date_.setHours(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()); + date_.setHours( + date.getHours(), + date.getMinutes(), + date.getSeconds(), + date.getMilliseconds(), + ); return date_; } -function isConstructor(constructor: unknown): constructor is GenericDateConstructor { - return typeof constructor === 'function' && constructor.prototype?.constructor === constructor; +function isConstructor( + constructor: unknown, +): constructor is GenericDateConstructor { + return ( + typeof constructor === 'function' && + constructor.prototype?.constructor === constructor + ); } /* eslint-enable */ diff --git a/src/date-fns/types.ts b/src/date-fns/types.ts index cab6a0a..5d03b8d 100644 --- a/src/date-fns/types.ts +++ b/src/date-fns/types.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck @@ -18,7 +17,9 @@ export type DateArg = DateType | number | string; * that accept a time zone as a constructor argument. */ export interface ConstructableDate extends Date { - [constructFromSymbol]: (value: DateArg & {}) => DateType; + [constructFromSymbol]: ( + value: DateArg & {}, + ) => DateType; } /** @@ -115,7 +116,10 @@ export interface Interval< /** * A version of {@link Interval} that has both start and end resolved to Date. */ -export type NormalizedInterval = Interval; +export type NormalizedInterval = Interval< + DateType, + DateType +>; /** * The era. Can be either 0 (AD - Anno Domini) or 1 (BC - Before Christ). @@ -333,7 +337,9 @@ export interface ContextOptions { * The context function type. It's used to normalize the input arguments to * a specific date instance, which is useful for extensions like [`TZDate`](https://github.com/date-fns/tz). */ -export type ContextFn = (value: DateArg & {}) => DateType; +export type ContextFn = ( + value: DateArg & {}, +) => DateType; /** * Resolves passed type or array of types. diff --git a/src/date-fns/weeksToDays/index.ts b/src/date-fns/weeksToDays/index.ts index dfba0e3..8aae9ef 100644 --- a/src/date-fns/weeksToDays/index.ts +++ b/src/date-fns/weeksToDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/yearsToDays/index.ts b/src/date-fns/yearsToDays/index.ts index 22e7789..49dce47 100644 --- a/src/date-fns/yearsToDays/index.ts +++ b/src/date-fns/yearsToDays/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/yearsToMonths/index.ts b/src/date-fns/yearsToMonths/index.ts index 0c13478..4a5b8cf 100644 --- a/src/date-fns/yearsToMonths/index.ts +++ b/src/date-fns/yearsToMonths/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/date-fns/yearsToQuarters/index.ts b/src/date-fns/yearsToQuarters/index.ts index 712e699..88eb651 100644 --- a/src/date-fns/yearsToQuarters/index.ts +++ b/src/date-fns/yearsToQuarters/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck diff --git a/src/format-utc.spec.ts b/src/format-utc.spec.ts index 6666510..3f158e1 100644 --- a/src/format-utc.spec.ts +++ b/src/format-utc.spec.ts @@ -9,9 +9,15 @@ describe('format-utc', () => { process.loadEnvFile(); it('works', () => { - assert.equal(formatUtc(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'yyyy-MM-dd'), '2022-09-13'); assert.equal( - formatUtc(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'yyyy-MM-dd-hh-mm-ss'), + formatUtc(new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), 'yyyy-MM-dd'), + '2022-09-13', + ); + assert.equal( + formatUtc( + new Date('Tue Sep 13 2022 13:38:00 GMT-0400'), + 'yyyy-MM-dd-hh-mm-ss', + ), '2022-09-13-05-38-00', ); }); @@ -19,15 +25,23 @@ describe('format-utc', () => { it('matches toISOString', () => { // make sure works during EST close to daylight saving timezone threshold assert.equal( - formatUtc(new Date('2038-03-14T02:07:44.594Z'), "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"), + formatUtc( + new Date('2038-03-14T02:07:44.594Z'), + "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", + ), '2038-03-14T02:07:44.594Z', ); // try 10k random date-times for (let _ = 0; _ < 10_000; _++) { - const isoString = new Date(Math.floor(Math.random() * 10_000_000_000_000)).toISOString(); + const isoString = new Date( + Math.floor(Math.random() * 10_000_000_000_000), + ).toISOString(); assert.equal(new Date(isoString).toISOString(), isoString); - assert.equal(formatUtc(new Date(isoString), "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"), isoString); + assert.equal( + formatUtc(new Date(isoString), "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"), + isoString, + ); } }); }); diff --git a/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.spec.ts b/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.spec.ts index 132d498..277f842 100644 --- a/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.spec.ts +++ b/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.spec.ts @@ -10,410 +10,834 @@ describe('add-federal-reserve-bank-business-days', () => { it('throws error when amount is NaN', () => { assert.throws( - () => addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 13 }, Number.NaN), + () => + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 13 }, + NaN, + ), TypeError, ); }); it('works for 0 business days for the whole week', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 13 }, 0), { - year: 2022, - month: 10, - date: 13, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 14 }, 0), { - year: 2022, - month: 10, - date: 14, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 15 }, 0), { - year: 2022, - month: 10, - date: 15, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 16 }, 0), { - year: 2022, - month: 10, - date: 16, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 17 }, 0), { - year: 2022, - month: 10, - date: 17, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 18 }, 0), { - year: 2022, - month: 10, - date: 18, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 19 }, 0), { - year: 2022, - month: 10, - date: 19, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 13 }, + 0, + ), + { + year: 2022, + month: 10, + date: 13, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 14 }, + 0, + ), + { + year: 2022, + month: 10, + date: 14, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 15 }, + 0, + ), + { + year: 2022, + month: 10, + date: 15, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 16 }, + 0, + ), + { + year: 2022, + month: 10, + date: 16, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 17 }, + 0, + ), + { + year: 2022, + month: 10, + date: 17, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 18 }, + 0, + ), + { + year: 2022, + month: 10, + date: 18, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 19 }, + 0, + ), + { + year: 2022, + month: 10, + date: 19, + }, + ); }); it('works for 1 business day with Christmas Day and New Years observed on a Monday', () => { // Since 2022-12-26 is a Federal Reserve Holiday (observed) celebrating Christmas Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 25 }, 1), { - year: 2022, - month: 11, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 26 }, 1), { - year: 2022, - month: 11, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 27 }, 1), { - year: 2022, - month: 11, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 28 }, 1), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 29 }, 1), { - year: 2022, - month: 11, - date: 30, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 25 }, + 1, + ), + { + year: 2022, + month: 11, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 26 }, + 1, + ), + { + year: 2022, + month: 11, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 27 }, + 1, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 28 }, + 1, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 29 }, + 1, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); // Since 2023-01-02 is a Federal Reserve Holiday (observed) celebrating New Year's Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 30 }, 1), { - year: 2023, - month: 0, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 31 }, 1), { - year: 2023, - month: 0, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 1 }, 1), { - year: 2023, - month: 0, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 2 }, 1), { - year: 2023, - month: 0, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 3 }, 1), { - year: 2023, - month: 0, - date: 4, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 30 }, + 1, + ), + { + year: 2023, + month: 0, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 31 }, + 1, + ), + { + year: 2023, + month: 0, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 1 }, 1), + { + year: 2023, + month: 0, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 2 }, 1), + { + year: 2023, + month: 0, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 3 }, 1), + { + year: 2023, + month: 0, + date: 4, + }, + ); }); it('works for 2 business days for the whole week with no federal holidays in between', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 13 }, 2), { - year: 2022, - month: 10, - date: 15, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 14 }, 2), { - year: 2022, - month: 10, - date: 16, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 15 }, 2), { - year: 2022, - month: 10, - date: 17, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 16 }, 2), { - year: 2022, - month: 10, - date: 18, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 17 }, 2), { - year: 2022, - month: 10, - date: 21, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 18 }, 2), { - year: 2022, - month: 10, - date: 22, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 19 }, 2), { - year: 2022, - month: 10, - date: 22, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 13 }, + 2, + ), + { + year: 2022, + month: 10, + date: 15, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 14 }, + 2, + ), + { + year: 2022, + month: 10, + date: 16, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 15 }, + 2, + ), + { + year: 2022, + month: 10, + date: 17, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 16 }, + 2, + ), + { + year: 2022, + month: 10, + date: 18, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 17 }, + 2, + ), + { + year: 2022, + month: 10, + date: 21, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 18 }, + 2, + ), + { + year: 2022, + month: 10, + date: 22, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 19 }, + 2, + ), + { + year: 2022, + month: 10, + date: 22, + }, + ); }); it('works for 2 business days for the whole week with a federal holiday(Thanksgiving Day) in between', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 20 }, 2), { - year: 2022, - month: 10, - date: 22, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 21 }, 2), { - year: 2022, - month: 10, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 22 }, 2), { - year: 2022, - month: 10, - date: 25, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 20 }, + 2, + ), + { + year: 2022, + month: 10, + date: 22, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 21 }, + 2, + ), + { + year: 2022, + month: 10, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 22 }, + 2, + ), + { + year: 2022, + month: 10, + date: 25, + }, + ); // Since 2022-11-24 is a Federal Reserve Holiday celebrating Thanksgiving Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 23 }, 2), { - year: 2022, - month: 10, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 24 }, 2), { - year: 2022, - month: 10, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 25 }, 2), { - year: 2022, - month: 10, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 26 }, 2), { - year: 2022, - month: 10, - date: 29, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 23 }, + 2, + ), + { + year: 2022, + month: 10, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 24 }, + 2, + ), + { + year: 2022, + month: 10, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 25 }, + 2, + ), + { + year: 2022, + month: 10, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 26 }, + 2, + ), + { + year: 2022, + month: 10, + date: 29, + }, + ); }); it('works for 2 business days when the daylight savings time begins in 2023', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 8 }, 2), { - year: 2023, - month: 2, - date: 10, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 9 }, 2), { - year: 2023, - month: 2, - date: 13, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 10 }, 2), { - year: 2023, - month: 2, - date: 14, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 11 }, 2), { - year: 2023, - month: 2, - date: 14, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 12 }, 2), { - year: 2023, - month: 2, - date: 14, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 13 }, 2), { - year: 2023, - month: 2, - date: 15, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 14 }, 2), { - year: 2023, - month: 2, - date: 16, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 8 }, 2), + { + year: 2023, + month: 2, + date: 10, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 9 }, 2), + { + year: 2023, + month: 2, + date: 13, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 10 }, + 2, + ), + { + year: 2023, + month: 2, + date: 14, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 11 }, + 2, + ), + { + year: 2023, + month: 2, + date: 14, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 12 }, + 2, + ), + { + year: 2023, + month: 2, + date: 14, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 13 }, + 2, + ), + { + year: 2023, + month: 2, + date: 15, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 14 }, + 2, + ), + { + year: 2023, + month: 2, + date: 16, + }, + ); }); it('works for 3 business days when the daylight savings time ends in 2023', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 1 }, 3), { - year: 2023, - month: 10, - date: 6, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 2 }, 3), { - year: 2023, - month: 10, - date: 7, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 3 }, 3), { - year: 2023, - month: 10, - date: 8, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 4 }, 3), { - year: 2023, - month: 10, - date: 8, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 5 }, 3), { - year: 2023, - month: 10, - date: 8, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 6 }, 3), { - year: 2023, - month: 10, - date: 9, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 7 }, 3), { - year: 2023, - month: 10, - date: 10, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 8 }, 3), { - year: 2023, - month: 10, - date: 13, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 1 }, + 3, + ), + { + year: 2023, + month: 10, + date: 6, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 2 }, + 3, + ), + { + year: 2023, + month: 10, + date: 7, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 3 }, + 3, + ), + { + year: 2023, + month: 10, + date: 8, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 4 }, + 3, + ), + { + year: 2023, + month: 10, + date: 8, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 5 }, + 3, + ), + { + year: 2023, + month: 10, + date: 8, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 6 }, + 3, + ), + { + year: 2023, + month: 10, + date: 9, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 7 }, + 3, + ), + { + year: 2023, + month: 10, + date: 10, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 8 }, + 3, + ), + { + year: 2023, + month: 10, + date: 13, + }, + ); }); it('works for 3 business days with Christmas Day and New Years observed on a Monday', () => { // Since 2022-12-26 is a Federal Reserve Holiday (observed) celebrating Christmas Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 25 }, 3), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 26 }, 3), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 27 }, 3), { - year: 2022, - month: 11, - date: 30, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 28 }, 3), { - year: 2023, - month: 0, - date: 3, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 25 }, + 3, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 26 }, + 3, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 27 }, + 3, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 28 }, + 3, + ), + { + year: 2023, + month: 0, + date: 3, + }, + ); // Since 2023-01-02 is a Federal Reserve Holiday (observed) celebrating New Year's Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 29 }, 3), { - year: 2023, - month: 0, - date: 4, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 30 }, 3), { - year: 2023, - month: 0, - date: 5, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 31 }, 3), { - year: 2023, - month: 0, - date: 5, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 29 }, + 3, + ), + { + year: 2023, + month: 0, + date: 4, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 30 }, + 3, + ), + { + year: 2023, + month: 0, + date: 5, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 31 }, + 3, + ), + { + year: 2023, + month: 0, + date: 5, + }, + ); }); it('works for 3 business days in a leap year', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 26 }, 3), { - year: 2024, - month: 1, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 27 }, 3), { - year: 2024, - month: 2, - date: 1, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 28 }, 3), { - year: 2024, - month: 2, - date: 4, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 29 }, 3), { - year: 2024, - month: 2, - date: 5, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 26 }, + 3, + ), + { + year: 2024, + month: 1, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 27 }, + 3, + ), + { + year: 2024, + month: 2, + date: 1, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 28 }, + 3, + ), + { + year: 2024, + month: 2, + date: 4, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 29 }, + 3, + ), + { + year: 2024, + month: 2, + date: 5, + }, + ); }); it('works for 3 business days in a leap year when February 29th is a Sunday', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 25 }, 3), { - year: 2032, - month: 2, - date: 1, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 26 }, 3), { - year: 2032, - month: 2, - date: 2, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 27 }, 3), { - year: 2032, - month: 2, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 28 }, 3), { - year: 2032, - month: 2, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 29 }, 3), { - year: 2032, - month: 2, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 1 }, 3), { - year: 2032, - month: 2, - date: 4, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 25 }, + 3, + ), + { + year: 2032, + month: 2, + date: 1, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 26 }, + 3, + ), + { + year: 2032, + month: 2, + date: 2, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 27 }, + 3, + ), + { + year: 2032, + month: 2, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 28 }, + 3, + ), + { + year: 2032, + month: 2, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 29 }, + 3, + ), + { + year: 2032, + month: 2, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 1 }, 3), + { + year: 2032, + month: 2, + date: 4, + }, + ); }); it('works for 20 business days every hour with three federal holidays in between', () => { // We have 4 Saturdays, 4 Sundays and 3 Federal Reserve Bank holidays (2 observed on a Monday and // 1 celebrated on a Monday) - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 21 }, 20), { - year: 2023, - month: 0, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 22 }, 20), { - year: 2023, - month: 0, - date: 24, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 23 }, 20), { - year: 2023, - month: 0, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 24 }, 20), { - year: 2023, - month: 0, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 25 }, 20), { - year: 2023, - month: 0, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 26 }, 20), { - year: 2023, - month: 0, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 27 }, 20), { - year: 2023, - month: 0, - date: 26, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 28 }, 20), { - year: 2023, - month: 0, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 29 }, 20), { - year: 2023, - month: 0, - date: 30, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 30 }, 20), { - year: 2023, - month: 0, - date: 31, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 21 }, + 20, + ), + { + year: 2023, + month: 0, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 22 }, + 20, + ), + { + year: 2023, + month: 0, + date: 24, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 23 }, + 20, + ), + { + year: 2023, + month: 0, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 24 }, + 20, + ), + { + year: 2023, + month: 0, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 25 }, + 20, + ), + { + year: 2023, + month: 0, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 26 }, + 20, + ), + { + year: 2023, + month: 0, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 27 }, + 20, + ), + { + year: 2023, + month: 0, + date: 26, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 28 }, + 20, + ), + { + year: 2023, + month: 0, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 29 }, + 20, + ), + { + year: 2023, + month: 0, + date: 30, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 30 }, + 20, + ), + { + year: 2023, + month: 0, + date: 31, + }, + ); }); }); diff --git a/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.ts b/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.ts index 90af7a1..7df153d 100644 --- a/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.ts +++ b/src/holidays/united-states/federal-reserve-bank/add-us-federal-reserve-bank-business-days.ts @@ -19,7 +19,9 @@ export default function (plainDate: PlainDate, amount: number): PlainDate { throw new TypeError('Invalid Amount'); } - const result = new Date(Date.UTC(plainDate.year, plainDate.month, plainDate.date)); + const result = new Date( + Date.UTC(plainDate.year, plainDate.month, plainDate.date), + ); result.setUTCHours(0, 0, 0, 0); let count = 0; diff --git a/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.spec.ts b/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.spec.ts index 1d475ee..952e52d 100644 --- a/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.spec.ts +++ b/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.spec.ts @@ -14,7 +14,11 @@ describe('get-all-federal-reserve-bank-holidays', () => { { name: 'Birthday of Martin Luther King, Jr.', date: '2022-01-17' }, { name: `Washington's Birthday`, date: '2022-02-21' }, { name: 'Memorial Day', date: '2022-05-30' }, - { name: 'Juneteenth National Independence Day', date: '2022-06-19', observedOn: '2022-06-20' }, + { + name: 'Juneteenth National Independence Day', + date: '2022-06-19', + observedOn: '2022-06-20', + }, { name: 'Independence Day', date: '2022-07-04' }, { name: 'Labor Day', date: '2022-09-05' }, { name: 'Columbus Day', date: '2022-10-10' }, diff --git a/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.ts b/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.ts index d6fe6fd..1245efa 100644 --- a/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.ts +++ b/src/holidays/united-states/federal-reserve-bank/get-all-us-federal-reserve-bank-holidays.ts @@ -48,13 +48,25 @@ function getLastMondayOfMay(year: number) { const lastDayOfMay = new Date(Date.UTC(year, MONTH_MAY, DATE_THIRTY_ONE)); // last day of may const lastMondayOfMayDay = lastDayOfMay.getUTCDate() - - (lastDayOfMay.getUTCDay() - 1 < 1 ? DAY_OF_THE_WEEK_SATURDAY : lastDayOfMay.getUTCDay() - 1); - return formatUtc(new Date(Date.UTC(year, MONTH_MAY, lastMondayOfMayDay)), YYYY_MM_DD_FORMAT); + (lastDayOfMay.getUTCDay() - 1 < 1 + ? DAY_OF_THE_WEEK_SATURDAY + : lastDayOfMay.getUTCDay() - 1); + return formatUtc( + new Date(Date.UTC(year, MONTH_MAY, lastMondayOfMayDay)), + YYYY_MM_DD_FORMAT, + ); } -function getNthOccurrenceOfDayOfTheWeekInMonth(nth: number, dayOfTheWeek: number, month: number, year: number) { +function getNthOccurrenceOfDayOfTheWeekInMonth( + nth: number, + dayOfTheWeek: number, + month: number, + year: number, +) { const date = new Date(Date.UTC(year, month, DATE_ONE)); // first day of the month - date.setUTCDate(1 + ((7 - date.getUTCDay() + dayOfTheWeek) % 7) + (nth - 1) * 7); + date.setUTCDate( + 1 + ((7 - date.getUTCDay() + dayOfTheWeek) % 7) + (nth - 1) * 7, + ); return formatUtc(date, YYYY_MM_DD_FORMAT); } @@ -72,25 +84,45 @@ function getNthOccurrenceOfDayOfTheWeekInMonth(nth: number, dayOfTheWeek: number */ export default function (year: number): FederalReserveBankHoliday[] { const newYearsDay = - new Date(Date.UTC(year, MONTH_JANUARY, DATE_ONE)).getUTCDay() === DAY_OF_THE_WEEK_SUNDAY + new Date(Date.UTC(year, MONTH_JANUARY, DATE_ONE)).getUTCDay() === + DAY_OF_THE_WEEK_SUNDAY ? { name: `New Year's Day`, - date: formatUtc(new Date(Date.UTC(year, MONTH_JANUARY, DATE_ONE)), YYYY_MM_DD_FORMAT), - observedOn: formatUtc(new Date(Date.UTC(year, MONTH_JANUARY, DATE_TWO)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_JANUARY, DATE_ONE)), + YYYY_MM_DD_FORMAT, + ), + observedOn: formatUtc( + new Date(Date.UTC(year, MONTH_JANUARY, DATE_TWO)), + YYYY_MM_DD_FORMAT, + ), } : { name: `New Year's Day`, - date: formatUtc(new Date(Date.UTC(year, MONTH_JANUARY, DATE_ONE)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_JANUARY, DATE_ONE)), + YYYY_MM_DD_FORMAT, + ), }; const martinLutherKingJrDay = { name: 'Birthday of Martin Luther King, Jr.', - date: getNthOccurrenceOfDayOfTheWeekInMonth(OCCURRENCE_THIRD, DAY_OF_THE_WEEK_MONDAY, MONTH_JANUARY, year), // Birthday of Martin Luther King, Jr. is the Third Monday of January + date: getNthOccurrenceOfDayOfTheWeekInMonth( + OCCURRENCE_THIRD, + DAY_OF_THE_WEEK_MONDAY, + MONTH_JANUARY, + year, + ), // Birthday of Martin Luther King, Jr. is the Third Monday of January }; const washingtonsBirthday = { name: `Washington's Birthday`, - date: getNthOccurrenceOfDayOfTheWeekInMonth(OCCURRENCE_THIRD, DAY_OF_THE_WEEK_MONDAY, MONTH_FEBRUARY, year), // Washington's Birthday is the Third Monday of February + date: getNthOccurrenceOfDayOfTheWeekInMonth( + OCCURRENCE_THIRD, + DAY_OF_THE_WEEK_MONDAY, + MONTH_FEBRUARY, + year, + ), // Washington's Birthday is the Third Monday of February }; const memorialDay = { @@ -99,66 +131,121 @@ export default function (year: number): FederalReserveBankHoliday[] { }; const juneteenth = - new Date(Date.UTC(year, MONTH_JUNE, DATE_NINETEEN)).getUTCDay() === DAY_OF_THE_WEEK_SUNDAY + new Date(Date.UTC(year, MONTH_JUNE, DATE_NINETEEN)).getUTCDay() === + DAY_OF_THE_WEEK_SUNDAY ? { name: 'Juneteenth National Independence Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_JUNE, DATE_NINETEEN)), YYYY_MM_DD_FORMAT), - observedOn: formatUtc(new Date(Date.UTC(year, MONTH_JUNE, DATE_TWENTY)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_JUNE, DATE_NINETEEN)), + YYYY_MM_DD_FORMAT, + ), + observedOn: formatUtc( + new Date(Date.UTC(year, MONTH_JUNE, DATE_TWENTY)), + YYYY_MM_DD_FORMAT, + ), } : { name: 'Juneteenth National Independence Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_JUNE, DATE_NINETEEN)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_JUNE, DATE_NINETEEN)), + YYYY_MM_DD_FORMAT, + ), }; const independenceDay = - new Date(Date.UTC(year, MONTH_JULY, DATE_FOUR)).getUTCDay() === DAY_OF_THE_WEEK_SUNDAY + new Date(Date.UTC(year, MONTH_JULY, DATE_FOUR)).getUTCDay() === + DAY_OF_THE_WEEK_SUNDAY ? { name: 'Independence Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_JULY, DATE_FOUR)), YYYY_MM_DD_FORMAT), - observedOn: formatUtc(new Date(Date.UTC(year, MONTH_JULY, DATE_FIVE)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_JULY, DATE_FOUR)), + YYYY_MM_DD_FORMAT, + ), + observedOn: formatUtc( + new Date(Date.UTC(year, MONTH_JULY, DATE_FIVE)), + YYYY_MM_DD_FORMAT, + ), } : { name: 'Independence Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_JULY, DATE_FOUR)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_JULY, DATE_FOUR)), + YYYY_MM_DD_FORMAT, + ), }; const laborDay = { name: 'Labor Day', - date: getNthOccurrenceOfDayOfTheWeekInMonth(OCCURRENCE_FIRST, DAY_OF_THE_WEEK_MONDAY, MONTH_SEPTEMBER, year), // Labor Day is the First Monday of September + date: getNthOccurrenceOfDayOfTheWeekInMonth( + OCCURRENCE_FIRST, + DAY_OF_THE_WEEK_MONDAY, + MONTH_SEPTEMBER, + year, + ), // Labor Day is the First Monday of September }; const columbusDay = { name: 'Columbus Day', - date: getNthOccurrenceOfDayOfTheWeekInMonth(OCCURRENCE_SECOND, DAY_OF_THE_WEEK_MONDAY, MONTH_OCTOBER, year), // Columbus Day is the Second Monday of October + date: getNthOccurrenceOfDayOfTheWeekInMonth( + OCCURRENCE_SECOND, + DAY_OF_THE_WEEK_MONDAY, + MONTH_OCTOBER, + year, + ), // Columbus Day is the Second Monday of October }; const veteransDay = - new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_ELEVEN)).getUTCDay() === DAY_OF_THE_WEEK_SUNDAY + new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_ELEVEN)).getUTCDay() === + DAY_OF_THE_WEEK_SUNDAY ? { name: 'Veterans Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_ELEVEN)), YYYY_MM_DD_FORMAT), - observedOn: formatUtc(new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_TWELVE)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_ELEVEN)), + YYYY_MM_DD_FORMAT, + ), + observedOn: formatUtc( + new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_TWELVE)), + YYYY_MM_DD_FORMAT, + ), } : { name: 'Veterans Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_ELEVEN)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_NOVEMBER, DATE_ELEVEN)), + YYYY_MM_DD_FORMAT, + ), }; const thanksGivingDay = { name: 'Thanksgiving Day', - date: getNthOccurrenceOfDayOfTheWeekInMonth(OCCURRENCE_FOURTH, DAY_OF_THE_WEEK_THURSDAY, MONTH_NOVEMBER, year), // Thanksgiving Day is the Fourth Thursday of November + date: getNthOccurrenceOfDayOfTheWeekInMonth( + OCCURRENCE_FOURTH, + DAY_OF_THE_WEEK_THURSDAY, + MONTH_NOVEMBER, + year, + ), // Thanksgiving Day is the Fourth Thursday of November }; const christmasDay = - new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_FIVE)).getUTCDay() === DAY_OF_THE_WEEK_SUNDAY + new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_FIVE)).getUTCDay() === + DAY_OF_THE_WEEK_SUNDAY ? { name: 'Christmas Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_FIVE)), YYYY_MM_DD_FORMAT), - observedOn: formatUtc(new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_SIX)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_FIVE)), + YYYY_MM_DD_FORMAT, + ), + observedOn: formatUtc( + new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_SIX)), + YYYY_MM_DD_FORMAT, + ), } : { name: 'Christmas Day', - date: formatUtc(new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_FIVE)), YYYY_MM_DD_FORMAT), + date: formatUtc( + new Date(Date.UTC(year, MONTH_DECEMBER, DATE_TWENTY_FIVE)), + YYYY_MM_DD_FORMAT, + ), }; return year >= YEAR2021 diff --git a/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.spec.ts b/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.spec.ts index 2d8f46f..36cb47f 100644 --- a/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.spec.ts +++ b/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.spec.ts @@ -9,207 +9,732 @@ describe('is-us-federal-reserve-bank-holiday', () => { process.loadEnvFile(); it('works for random federal reserve bank business days in 2022', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 10 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 7 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 15 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 12 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 12 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 6 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 29 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 25 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 20 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 3 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 28 }), false); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 30 }), false); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 10 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 7 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 15 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 12 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 12 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 6 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 29 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 25 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 20 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 3 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 28 }), + false, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 30 }), + false, + ); }); it('works for all Saturdays in 2022', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 1 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 8 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 15 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 22 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 29 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 5 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 12 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 19 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 26 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 5 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 12 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 19 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 26 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 2 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 9 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 16 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 23 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 30 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 7 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 14 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 21 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 28 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 4 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 11 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 18 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 25 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 2 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 9 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 16 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 23 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 30 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 6 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 13 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 20 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 27 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 3 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 10 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 17 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 24 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 1 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 8 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 15 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 22 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 29 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 5 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 12 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 19 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 26 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 3 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 10 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 17 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 24 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 31 }), true); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 1 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 8 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 15 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 22 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 29 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 5 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 12 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 19 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 26 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 5 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 12 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 19 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 26 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 2 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 9 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 16 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 23 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 30 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 7 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 14 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 21 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 28 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 4 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 11 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 18 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 25 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 2 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 9 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 16 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 23 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 30 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 6 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 13 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 20 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 27 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 3 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 10 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 17 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 24 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 1 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 8 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 15 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 22 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 29 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 5 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 12 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 19 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 26 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 3 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 10 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 17 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 24 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 31 }), + true, + ); }); it('works for all Sundays in 2022', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 2 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 9 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 16 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 23 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 30 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 6 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 13 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 20 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 27 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 6 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 13 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 20 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 27 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 3 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 10 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 17 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 24 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 1 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 8 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 15 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 22 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 29 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 5 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 12 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 19 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 26 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 3 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 10 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 17 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 24 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 31 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 7 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 14 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 21 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 28 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 4 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 11 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 18 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 25 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 2 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 9 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 16 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 23 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 30 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 6 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 13 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 20 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 27 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 4 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 11 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 18 }), true); - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 25 }), true); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 2 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 9 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 16 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 23 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 30 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 6 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 13 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 20 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 27 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 6 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 13 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 20 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 2, date: 27 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 3 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 10 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 17 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 3, date: 24 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 1 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 8 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 15 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 22 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 29 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 5 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 12 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 19 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 26 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 3 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 10 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 17 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 24 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 31 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 7 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 14 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 21 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 7, date: 28 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 4 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 11 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 18 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 25 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 2 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 9 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 16 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 23 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 30 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 6 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 13 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 20 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 27 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 4 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 11 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 18 }), + true, + ); + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 25 }), + true, + ); }); it('works for all federal reserve bank holidays in 2022', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 1 }), true); // New Year's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 17 }), true); // Birthday of Martin Luther King, Jr. - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 21 }), true); // Washington's Birthday - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 30 }), true); // Memorial Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 19 }), true); // Juneteenth - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 4 }), true); // Independence Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 5 }), true); // Labor Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 10 }), true); // Columbus Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 11 }), true); // Veteran's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 24 }), true); // Thanksgiving Day - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 25 }), true); // Christmas + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 1 }), + true, + ); // New Year's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 0, date: 17 }), + true, + ); // Birthday of Martin Luther King, Jr. + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 1, date: 21 }), + true, + ); // Washington's Birthday + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 4, date: 30 }), + true, + ); // Memorial Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 19 }), + true, + ); // Juneteenth + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 6, date: 4 }), + true, + ); // Independence Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 8, date: 5 }), + true, + ); // Labor Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 9, date: 10 }), + true, + ); // Columbus Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 11 }), + true, + ); // Veteran's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 10, date: 24 }), + true, + ); // Thanksgiving Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 25 }), + true, + ); // Christmas }); it('works for all federal reserve bank holidays observed in 2022', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 20 }), true); // Juneteenth Observed - assert.equal(isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 26 }), true); // Christmas Observed + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 5, date: 20 }), + true, + ); // Juneteenth Observed + assert.equal( + isUSFederalReserveBankClosed({ year: 2022, month: 11, date: 26 }), + true, + ); // Christmas Observed }); it('works for all federal reserve bank holidays in 2023', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 0, date: 1 }), true); // New Year's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 0, date: 16 }), true); // Birthday of Martin Luther King, Jr. - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 1, date: 20 }), true); // Washington's Birthday - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 4, date: 29 }), true); // Memorial Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 5, date: 19 }), true); // Juneteenth - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 6, date: 4 }), true); // Independence Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 8, date: 4 }), true); // Labor Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 9, date: 9 }), true); // Columbus Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 10, date: 11 }), true); // Veteran's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 10, date: 23 }), true); // Thanksgiving Day - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 11, date: 25 }), true); // Christmas + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 0, date: 1 }), + true, + ); // New Year's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 0, date: 16 }), + true, + ); // Birthday of Martin Luther King, Jr. + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 1, date: 20 }), + true, + ); // Washington's Birthday + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 4, date: 29 }), + true, + ); // Memorial Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 5, date: 19 }), + true, + ); // Juneteenth + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 6, date: 4 }), + true, + ); // Independence Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 8, date: 4 }), + true, + ); // Labor Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 9, date: 9 }), + true, + ); // Columbus Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 10, date: 11 }), + true, + ); // Veteran's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 10, date: 23 }), + true, + ); // Thanksgiving Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 11, date: 25 }), + true, + ); // Christmas }); it('works for all federal reserve bank holidays observed in 2023', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2023, month: 0, date: 2 }), true); // New Year's Day 2023 Observed + assert.equal( + isUSFederalReserveBankClosed({ year: 2023, month: 0, date: 2 }), + true, + ); // New Year's Day 2023 Observed }); it('works for all federal reserve bank holidays in 2024', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 0, date: 1 }), true); // New Year's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 0, date: 15 }), true); // Birthday of Martin Luther King, Jr. - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 1, date: 19 }), true); // Washington's Birthday - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 4, date: 27 }), true); // Memorial Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 5, date: 19 }), true); // Juneteenth - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 6, date: 4 }), true); // Independence Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 8, date: 2 }), true); // Labor Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 9, date: 14 }), true); // Columbus Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 10, date: 11 }), true); // Veteran's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 10, date: 28 }), true); // Thanksgiving Day - assert.equal(isUSFederalReserveBankClosed({ year: 2024, month: 11, date: 25 }), true); // Christmas + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 0, date: 1 }), + true, + ); // New Year's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 0, date: 15 }), + true, + ); // Birthday of Martin Luther King, Jr. + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 1, date: 19 }), + true, + ); // Washington's Birthday + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 4, date: 27 }), + true, + ); // Memorial Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 5, date: 19 }), + true, + ); // Juneteenth + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 6, date: 4 }), + true, + ); // Independence Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 8, date: 2 }), + true, + ); // Labor Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 9, date: 14 }), + true, + ); // Columbus Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 10, date: 11 }), + true, + ); // Veteran's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 10, date: 28 }), + true, + ); // Thanksgiving Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2024, month: 11, date: 25 }), + true, + ); // Christmas }); it('works for all federal reserve bank holidays in 2025', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 0, date: 1 }), true); // New Year's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 0, date: 20 }), true); // Birthday of Martin Luther King, Jr. - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 1, date: 17 }), true); // Washington's Birthday - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 4, date: 26 }), true); // Memorial Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 5, date: 19 }), true); // Juneteenth - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 6, date: 4 }), true); // Independence Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 8, date: 1 }), true); // Labor Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 9, date: 13 }), true); // Columbus Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 10, date: 11 }), true); // Veteran's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 10, date: 27 }), true); // Thanksgiving Day - assert.equal(isUSFederalReserveBankClosed({ year: 2025, month: 11, date: 25 }), true); // Christmas + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 0, date: 1 }), + true, + ); // New Year's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 0, date: 20 }), + true, + ); // Birthday of Martin Luther King, Jr. + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 1, date: 17 }), + true, + ); // Washington's Birthday + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 4, date: 26 }), + true, + ); // Memorial Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 5, date: 19 }), + true, + ); // Juneteenth + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 6, date: 4 }), + true, + ); // Independence Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 8, date: 1 }), + true, + ); // Labor Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 9, date: 13 }), + true, + ); // Columbus Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 10, date: 11 }), + true, + ); // Veteran's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 10, date: 27 }), + true, + ); // Thanksgiving Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2025, month: 11, date: 25 }), + true, + ); // Christmas }); it('works for all federal reserve bank holidays in 2026', () => { - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 0, date: 1 }), true); // New Year's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 0, date: 19 }), true); // Birthday of Martin Luther King, Jr. - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 1, date: 16 }), true); // Washington's Birthday - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 4, date: 25 }), true); // Memorial Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 5, date: 19 }), true); // Juneteenth - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 6, date: 4 }), true); // Independence Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 8, date: 7 }), true); // Labor Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 9, date: 12 }), true); // Columbus Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 10, date: 11 }), true); // Veteran's Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 10, date: 26 }), true); // Thanksgiving Day - assert.equal(isUSFederalReserveBankClosed({ year: 2026, month: 11, date: 25 }), true); // Christmas + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 0, date: 1 }), + true, + ); // New Year's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 0, date: 19 }), + true, + ); // Birthday of Martin Luther King, Jr. + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 1, date: 16 }), + true, + ); // Washington's Birthday + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 4, date: 25 }), + true, + ); // Memorial Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 5, date: 19 }), + true, + ); // Juneteenth + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 6, date: 4 }), + true, + ); // Independence Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 8, date: 7 }), + true, + ); // Labor Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 9, date: 12 }), + true, + ); // Columbus Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 10, date: 11 }), + true, + ); // Veteran's Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 10, date: 26 }), + true, + ); // Thanksgiving Day + assert.equal( + isUSFederalReserveBankClosed({ year: 2026, month: 11, date: 25 }), + true, + ); // Christmas }); }); diff --git a/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.ts b/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.ts index 0041060..a37d738 100644 --- a/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.ts +++ b/src/holidays/united-states/federal-reserve-bank/is-us-federal-reserve-bank-closed.ts @@ -20,17 +20,21 @@ const DAY_OF_THE_WEEK_SATURDAY = 6; * @returns boolean indicating if the US Federal Reserve Bank is closed on a given date */ export default function (plainDate: PlainDate): boolean { - const date = new Date(Date.UTC(plainDate.year, plainDate.month, plainDate.date)); + const date = new Date( + Date.UTC(plainDate.year, plainDate.month, plainDate.date), + ); const year = date.getUTCFullYear(); const day = date.getUTCDay(); const formattedDate = formatUtc(date, 'yyyy-MM-dd'); - const allUSFederalReserveBankHolidays = getAllUSFederalReserveBankHolidays(year); + const allUSFederalReserveBankHolidays = + getAllUSFederalReserveBankHolidays(year); return ( day === DAY_OF_THE_WEEK_SATURDAY || day === DAY_OF_THE_WEEK_SUNDAY || allUSFederalReserveBankHolidays.some( - (holiday) => holiday.date === formattedDate || holiday.observedOn === formattedDate, + (holiday) => + holiday.date === formattedDate || holiday.observedOn === formattedDate, ) ); } diff --git a/src/holidays/united-states/federal-reserve-bank/subtract-us-federal-reserve-bank-business-days.spec.ts b/src/holidays/united-states/federal-reserve-bank/subtract-us-federal-reserve-bank-business-days.spec.ts index d88512d..a993fd4 100644 --- a/src/holidays/united-states/federal-reserve-bank/subtract-us-federal-reserve-bank-business-days.spec.ts +++ b/src/holidays/united-states/federal-reserve-bank/subtract-us-federal-reserve-bank-business-days.spec.ts @@ -10,510 +10,1072 @@ describe('subtract-federal-reserve-bank-business-days', () => { it('throws error when amount is NaN', () => { assert.throws( - () => addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 13 }, Number.NaN), + () => + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 13 }, + NaN, + ), TypeError, ); }); it('works for 0 business days for the whole week', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 13 }, 0), { - year: 2022, - month: 10, - date: 13, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 14 }, 0), { - year: 2022, - month: 10, - date: 14, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 15 }, 0), { - year: 2022, - month: 10, - date: 15, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 16 }, 0), { - year: 2022, - month: 10, - date: 16, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 17 }, 0), { - year: 2022, - month: 10, - date: 17, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 18 }, 0), { - year: 2022, - month: 10, - date: 18, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 19 }, 0), { - year: 2022, - month: 10, - date: 19, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 13 }, + 0, + ), + { + year: 2022, + month: 10, + date: 13, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 14 }, + 0, + ), + { + year: 2022, + month: 10, + date: 14, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 15 }, + 0, + ), + { + year: 2022, + month: 10, + date: 15, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 16 }, + 0, + ), + { + year: 2022, + month: 10, + date: 16, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 17 }, + 0, + ), + { + year: 2022, + month: 10, + date: 17, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 18 }, + 0, + ), + { + year: 2022, + month: 10, + date: 18, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 19 }, + 0, + ), + { + year: 2022, + month: 10, + date: 19, + }, + ); }); it('works for 1 business day with Christmas Day and New Years observed on a Monday', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 25 }, -1), { - year: 2022, - month: 11, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 26 }, -1), { - year: 2022, - month: 11, - date: 23, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 25 }, + -1, + ), + { + year: 2022, + month: 11, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 26 }, + -1, + ), + { + year: 2022, + month: 11, + date: 23, + }, + ); // Since 2022-12-26 is a Federal Reserve Holiday (observed) celebrating Christmas Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 27 }, -1), { - year: 2022, - month: 11, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 28 }, -1), { - year: 2022, - month: 11, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 29 }, -1), { - year: 2022, - month: 11, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 30 }, -1), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 31 }, -1), { - year: 2022, - month: 11, - date: 30, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 1 }, -1), { - year: 2022, - month: 11, - date: 30, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 2 }, -1), { - year: 2022, - month: 11, - date: 30, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 27 }, + -1, + ), + { + year: 2022, + month: 11, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 28 }, + -1, + ), + { + year: 2022, + month: 11, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 29 }, + -1, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 30 }, + -1, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 31 }, + -1, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 1 }, + -1, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 2 }, + -1, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); // Since 2023-01-02 is a Federal Reserve Holiday (observed) celebrating New Year's Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 3 }, -1), { - year: 2022, - month: 11, - date: 30, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 4 }, -1), { - year: 2023, - month: 0, - date: 3, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 3 }, + -1, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 4 }, + -1, + ), + { + year: 2023, + month: 0, + date: 3, + }, + ); }); it('works for 2 business days for the whole week with no federal holidays in between', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 11 }, -2), { - year: 2022, - month: 11, - date: 8, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 12 }, -2), { - year: 2022, - month: 11, - date: 8, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 13 }, -2), { - year: 2022, - month: 11, - date: 9, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 14 }, -2), { - year: 2022, - month: 11, - date: 12, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 15 }, -2), { - year: 2022, - month: 11, - date: 13, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 16 }, -2), { - year: 2022, - month: 11, - date: 14, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 17 }, -2), { - year: 2022, - month: 11, - date: 15, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 11 }, + -2, + ), + { + year: 2022, + month: 11, + date: 8, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 12 }, + -2, + ), + { + year: 2022, + month: 11, + date: 8, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 13 }, + -2, + ), + { + year: 2022, + month: 11, + date: 9, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 14 }, + -2, + ), + { + year: 2022, + month: 11, + date: 12, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 15 }, + -2, + ), + { + year: 2022, + month: 11, + date: 13, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 16 }, + -2, + ), + { + year: 2022, + month: 11, + date: 14, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 17 }, + -2, + ), + { + year: 2022, + month: 11, + date: 15, + }, + ); }); it('works for 2 business days for the whole week with a federal holiday(Thanksgiving Day) in between', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 20 }, -2), { - year: 2022, - month: 10, - date: 17, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 21 }, -2), { - year: 2022, - month: 10, - date: 17, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 22 }, -2), { - year: 2022, - month: 10, - date: 18, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 23 }, -2), { - year: 2022, - month: 10, - date: 21, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 24 }, -2), { - year: 2022, - month: 10, - date: 22, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 20 }, + -2, + ), + { + year: 2022, + month: 10, + date: 17, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 21 }, + -2, + ), + { + year: 2022, + month: 10, + date: 17, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 22 }, + -2, + ), + { + year: 2022, + month: 10, + date: 18, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 23 }, + -2, + ), + { + year: 2022, + month: 10, + date: 21, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 24 }, + -2, + ), + { + year: 2022, + month: 10, + date: 22, + }, + ); // Since 2022-11-24 is a Federal Reserve Holiday (observed) celebrating Thanksgiving Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 25 }, -2), { - year: 2022, - month: 10, - date: 22, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 26 }, -2), { - year: 2022, - month: 10, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 27 }, -2), { - year: 2022, - month: 10, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 28 }, -2), { - year: 2022, - month: 10, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 10, date: 29 }, -2), { - year: 2022, - month: 10, - date: 25, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 25 }, + -2, + ), + { + year: 2022, + month: 10, + date: 22, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 26 }, + -2, + ), + { + year: 2022, + month: 10, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 27 }, + -2, + ), + { + year: 2022, + month: 10, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 28 }, + -2, + ), + { + year: 2022, + month: 10, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 10, date: 29 }, + -2, + ), + { + year: 2022, + month: 10, + date: 25, + }, + ); }); it('works for 2 business days when the daylight savings time begins in 2023', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 10 }, -2), { - year: 2023, - month: 2, - date: 8, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 11 }, -2), { - year: 2023, - month: 2, - date: 9, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 12 }, -2), { - year: 2023, - month: 2, - date: 9, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 13 }, -2), { - year: 2023, - month: 2, - date: 9, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 14 }, -2), { - year: 2023, - month: 2, - date: 10, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 15 }, -2), { - year: 2023, - month: 2, - date: 13, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 2, date: 16 }, -2), { - year: 2023, - month: 2, - date: 14, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 10 }, + -2, + ), + { + year: 2023, + month: 2, + date: 8, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 11 }, + -2, + ), + { + year: 2023, + month: 2, + date: 9, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 12 }, + -2, + ), + { + year: 2023, + month: 2, + date: 9, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 13 }, + -2, + ), + { + year: 2023, + month: 2, + date: 9, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 14 }, + -2, + ), + { + year: 2023, + month: 2, + date: 10, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 15 }, + -2, + ), + { + year: 2023, + month: 2, + date: 13, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 2, date: 16 }, + -2, + ), + { + year: 2023, + month: 2, + date: 14, + }, + ); }); it('works for 3 business days when the daylight savings time ends in 2023', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 1 }, -3), { - year: 2023, - month: 9, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 2 }, -3), { - year: 2023, - month: 9, - date: 30, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 3 }, -3), { - year: 2023, - month: 9, - date: 31, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 4 }, -3), { - year: 2023, - month: 10, - date: 1, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 5 }, -3), { - year: 2023, - month: 10, - date: 1, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 6 }, -3), { - year: 2023, - month: 10, - date: 1, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 7 }, -3), { - year: 2023, - month: 10, - date: 2, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 8 }, -3), { - year: 2023, - month: 10, - date: 3, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 9 }, -3), { - year: 2023, - month: 10, - date: 6, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 10 }, -3), { - year: 2023, - month: 10, - date: 7, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 10, date: 11 }, -3), { - year: 2023, - month: 10, - date: 8, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 1 }, + -3, + ), + { + year: 2023, + month: 9, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 2 }, + -3, + ), + { + year: 2023, + month: 9, + date: 30, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 3 }, + -3, + ), + { + year: 2023, + month: 9, + date: 31, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 4 }, + -3, + ), + { + year: 2023, + month: 10, + date: 1, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 5 }, + -3, + ), + { + year: 2023, + month: 10, + date: 1, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 6 }, + -3, + ), + { + year: 2023, + month: 10, + date: 1, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 7 }, + -3, + ), + { + year: 2023, + month: 10, + date: 2, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 8 }, + -3, + ), + { + year: 2023, + month: 10, + date: 3, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 9 }, + -3, + ), + { + year: 2023, + month: 10, + date: 6, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 10 }, + -3, + ), + { + year: 2023, + month: 10, + date: 7, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 10, date: 11 }, + -3, + ), + { + year: 2023, + month: 10, + date: 8, + }, + ); }); it('works for 3 business days with Christmas Day and New Years observed on a Monday', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 25 }, -3), { - year: 2022, - month: 11, - date: 21, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 26 }, -3), { - year: 2022, - month: 11, - date: 21, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 27 }, -3), { - year: 2022, - month: 11, - date: 21, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 25 }, + -3, + ), + { + year: 2022, + month: 11, + date: 21, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 26 }, + -3, + ), + { + year: 2022, + month: 11, + date: 21, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 27 }, + -3, + ), + { + year: 2022, + month: 11, + date: 21, + }, + ); // Since 2022-12-26 is a Federal Reserve Holiday (observed) celebrating Christmas Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 28 }, -3), { - year: 2022, - month: 11, - date: 22, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 29 }, -3), { - year: 2022, - month: 11, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 30 }, -3), { - year: 2022, - month: 11, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2022, month: 11, date: 31 }, -3), { - year: 2022, - month: 11, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 1 }, -3), { - year: 2022, - month: 11, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 2 }, -3), { - year: 2022, - month: 11, - date: 28, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 28 }, + -3, + ), + { + year: 2022, + month: 11, + date: 22, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 29 }, + -3, + ), + { + year: 2022, + month: 11, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 30 }, + -3, + ), + { + year: 2022, + month: 11, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2022, month: 11, date: 31 }, + -3, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 1 }, + -3, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 2 }, + -3, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); // Since 2023-01-02 is a Federal Reserve Holiday (observed) celebrating New Year's Day - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 3 }, -3), { - year: 2022, - month: 11, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 4 }, -3), { - year: 2022, - month: 11, - date: 29, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 3 }, + -3, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 4 }, + -3, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); }); it('works for 3 business days in a leap year', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 26 }, -3), { - year: 2024, - month: 1, - date: 21, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 27 }, -3), { - year: 2024, - month: 1, - date: 22, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 28 }, -3), { - year: 2024, - month: 1, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 1, date: 29 }, -3), { - year: 2024, - month: 1, - date: 26, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 2, date: 1 }, -3), { - year: 2024, - month: 1, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 2, date: 2 }, -3), { - year: 2024, - month: 1, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 2, date: 3 }, -3), { - year: 2024, - month: 1, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 2, date: 4 }, -3), { - year: 2024, - month: 1, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 2, date: 5 }, -3), { - year: 2024, - month: 1, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2024, month: 2, date: 6 }, -3), { - year: 2024, - month: 2, - date: 1, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 26 }, + -3, + ), + { + year: 2024, + month: 1, + date: 21, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 27 }, + -3, + ), + { + year: 2024, + month: 1, + date: 22, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 28 }, + -3, + ), + { + year: 2024, + month: 1, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 1, date: 29 }, + -3, + ), + { + year: 2024, + month: 1, + date: 26, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 2, date: 1 }, + -3, + ), + { + year: 2024, + month: 1, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 2, date: 2 }, + -3, + ), + { + year: 2024, + month: 1, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 2, date: 3 }, + -3, + ), + { + year: 2024, + month: 1, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 2, date: 4 }, + -3, + ), + { + year: 2024, + month: 1, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 2, date: 5 }, + -3, + ), + { + year: 2024, + month: 1, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2024, month: 2, date: 6 }, + -3, + ), + { + year: 2024, + month: 2, + date: 1, + }, + ); }); it('works for 3 business days in a leap year when February 29th is a Sunday', () => { - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 26 }, -3), { - year: 2032, - month: 1, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 27 }, -3), { - year: 2032, - month: 1, - date: 24, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 28 }, -3), { - year: 2032, - month: 1, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 1, date: 29 }, -3), { - year: 2032, - month: 1, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 1 }, -3), { - year: 2032, - month: 1, - date: 25, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 2 }, -3), { - year: 2032, - month: 1, - date: 26, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 3 }, -3), { - year: 2032, - month: 1, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 4 }, -3), { - year: 2032, - month: 2, - date: 1, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 5 }, -3), { - year: 2032, - month: 2, - date: 2, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2032, month: 2, date: 6 }, -3), { - year: 2032, - month: 2, - date: 3, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 26 }, + -3, + ), + { + year: 2032, + month: 1, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 27 }, + -3, + ), + { + year: 2032, + month: 1, + date: 24, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 28 }, + -3, + ), + { + year: 2032, + month: 1, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 1, date: 29 }, + -3, + ), + { + year: 2032, + month: 1, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 2, date: 1 }, + -3, + ), + { + year: 2032, + month: 1, + date: 25, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 2, date: 2 }, + -3, + ), + { + year: 2032, + month: 1, + date: 26, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 2, date: 3 }, + -3, + ), + { + year: 2032, + month: 1, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 2, date: 4 }, + -3, + ), + { + year: 2032, + month: 2, + date: 1, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 2, date: 5 }, + -3, + ), + { + year: 2032, + month: 2, + date: 2, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2032, month: 2, date: 6 }, + -3, + ), + { + year: 2032, + month: 2, + date: 3, + }, + ); }); it('works for 20 business days every hour with three federal holidays in between', () => { // We have 4 Saturdays, 4 Sundays and 3 Federal Reserve Bank holidays (2 observed on a Monday and // 1 celebrated on a Monday) - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 23 }, -20), { - year: 2022, - month: 11, - date: 21, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 24 }, -20), { - year: 2022, - month: 11, - date: 22, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 25 }, -20), { - year: 2022, - month: 11, - date: 23, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 26 }, -20), { - year: 2022, - month: 11, - date: 27, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 27 }, -20), { - year: 2022, - month: 11, - date: 28, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 28 }, -20), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 29 }, -20), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 30 }, -20), { - year: 2022, - month: 11, - date: 29, - }); - assert.deepEqual(addUSFederalReserveBankBusinessDays({ year: 2023, month: 0, date: 31 }, -20), { - year: 2022, - month: 11, - date: 30, - }); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 23 }, + -20, + ), + { + year: 2022, + month: 11, + date: 21, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 24 }, + -20, + ), + { + year: 2022, + month: 11, + date: 22, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 25 }, + -20, + ), + { + year: 2022, + month: 11, + date: 23, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 26 }, + -20, + ), + { + year: 2022, + month: 11, + date: 27, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 27 }, + -20, + ), + { + year: 2022, + month: 11, + date: 28, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 28 }, + -20, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 29 }, + -20, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 30 }, + -20, + ), + { + year: 2022, + month: 11, + date: 29, + }, + ); + assert.deepEqual( + addUSFederalReserveBankBusinessDays( + { year: 2023, month: 0, date: 31 }, + -20, + ), + { + year: 2022, + month: 11, + date: 30, + }, + ); }); });