Compare commits

...

21 Commits

Author SHA1 Message Date
chris48s
c3786e2bf0 use PAT if available else fall back to workflow token 2022-10-16 18:22:52 +01:00
chris48s
f0ad7b6b75 skip workflows on push to dependabot branch 2022-10-16 17:04:09 +01:00
chris48s
80ab79e589 constrain auto-close and enforce-dependency-review triggers
we don't need to run these on PR close or when we apply labels, for example
2022-10-16 17:03:12 +01:00
dependabot[bot]
523e31d389 chore(deps-dev): bump minimist from 1.2.6 to 1.2.7 (#8528)
Bumps [minimist](https://github.com/minimistjs/minimist) from 1.2.6 to 1.2.7.
- [Release notes](https://github.com/minimistjs/minimist/releases)
- [Changelog](https://github.com/minimistjs/minimist/blob/main/CHANGELOG.md)
- [Commits](https://github.com/minimistjs/minimist/compare/v1.2.6...v1.2.7)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
Co-authored-by: chris48s <chris48s@users.noreply.github.com>
2022-10-16 10:38:36 +01:00
dependabot[bot]
73142977e4 chore(deps): bump chalk from 5.1.0 to 5.1.2 (#8533)
Bumps [chalk](https://github.com/chalk/chalk) from 5.1.0 to 5.1.2.
- [Release notes](https://github.com/chalk/chalk/releases)
- [Commits](https://github.com/chalk/chalk/compare/v5.1.0...v5.1.2)

---
updated-dependencies:
- dependency-name: chalk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
Co-authored-by: chris48s <chris48s@users.noreply.github.com>
2022-10-16 09:34:05 +00:00
dependabot[bot]
46a241c7d3 chore(deps): bump got from 12.5.1 to 12.5.2 (#8534)
Bumps [got](https://github.com/sindresorhus/got) from 12.5.1 to 12.5.2.
- [Release notes](https://github.com/sindresorhus/got/releases)
- [Commits](https://github.com/sindresorhus/got/compare/v12.5.1...v12.5.2)

---
updated-dependencies:
- dependency-name: got
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-16 09:34:23 +01:00
dependabot[bot]
6925946bc1 chore(deps-dev): bump eslint-plugin-react from 7.31.8 to 7.31.10 (#8530)
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.31.8 to 7.31.10.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.31.8...v7.31.10)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-15 21:48:23 +00:00
dependabot[bot]
8a3b2dbbc0 chore(deps): bump simple-icons from 7.14.0 to 7.15.0 (#8529)
Bumps [simple-icons](https://github.com/simple-icons/simple-icons) from 7.14.0 to 7.15.0.
- [Release notes](https://github.com/simple-icons/simple-icons/releases)
- [Commits](https://github.com/simple-icons/simple-icons/compare/7.14.0...7.15.0)

---
updated-dependencies:
- dependency-name: simple-icons
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-15 22:42:34 +01:00
dependabot[bot]
0db492d188 chore(deps): bump @sentry/node from 7.14.2 to 7.15.0 (#8526)
Bumps [@sentry/node](https://github.com/getsentry/sentry-javascript) from 7.14.2 to 7.15.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.14.2...7.15.0)

---
updated-dependencies:
- dependency-name: "@sentry/node"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-15 22:30:41 +01:00
dependabot[bot]
c21116ca85 chore(deps): bump joi from 17.6.2 to 17.6.3 (#8532)
Bumps [joi](https://github.com/hapijs/joi) from 17.6.2 to 17.6.3.
- [Release notes](https://github.com/hapijs/joi/releases)
- [Commits](https://github.com/hapijs/joi/compare/v17.6.2...v17.6.3)

---
updated-dependencies:
- dependency-name: joi
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-15 20:45:00 +00:00
dependabot[bot]
523f9de33e chore(deps-dev): bump @typescript-eslint/eslint-plugin (#8522)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.39.0 to 5.40.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.40.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-15 20:37:08 +00:00
dependabot[bot]
781bde7750 chore(deps-dev): bump cypress from 10.9.0 to 10.10.0 (#8524)
Bumps [cypress](https://github.com/cypress-io/cypress) from 10.9.0 to 10.10.0.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v10.9.0...v10.10.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-15 19:50:02 +00:00
Martin Costello
bd6a04ba03 fix: Support WAITING status for GitHub deployments (#8521)
Fix "invalid response data" badge label for GitHub deployments pending approval.
2022-10-15 20:29:38 +01:00
chris48s
cab87aa19d update [bitbucket] private repo test (#8520)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-12 21:51:29 +00:00
chris48s
65a921da24 update [powershellgallery] platform example (#8518)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-12 21:43:52 +00:00
chris48s
7c562900ed fix [myget] downloads (tenant) test (#8513)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-12 00:11:17 +00:00
Paula Barszcz
a96c25a405 [Whatpulse] badge for a user and for a team (#8466)
* skeleton of WhatPulse badge is done

* rename to category; add UptimeShort; switch to lowercase

* Add divergence for user and team

* small rename; cases for tests listed but not yet coded

* add ordinal numbers to whatpulse ranks

* modify error service tests for whatpulse

* WhatPulse badge changes are in progress

* update tests for WhatPulse badge:

* in tests, rename category to metric

* rename stats to metric

* some polishing

* add daysjs-duration-humanize to uptimeseconds

* add more + increase specificity of whatpulse service tests

* update example

* add space for upload and download

* Update services/test-validators.js
2022-10-11 19:46:42 +00:00
chris48s
21881d6b9c increase timeout for [reuse] not found test (#8519) 2022-10-10 20:59:46 -05:00
chris48s
fd49e60410 update [JenkinsPluginInstalls] test example (#8511)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-10 18:18:44 +00:00
chris48s
f43675109b migrate integration tests to GH actions (#8423)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-10 18:09:14 +00:00
chris48s
125d815a1b deprecate [pkgreview] service (#8499)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-10 17:18:30 +00:00
27 changed files with 563 additions and 402 deletions

View File

@@ -1,27 +1,5 @@
version: 2
integration_steps: &integration_steps
steps:
- checkout
- run:
name: Install dependencies
command: |
npm ci
environment:
CYPRESS_INSTALL_BINARY: 0
- run:
name: Integration tests
when: always
environment:
mocha_reporter: mocha-junit-reporter
MOCHA_FILE: junit/integration/results.xml
command: npm run test:integration
- store_test_results:
path: junit
services_steps: &services_steps
steps:
- checkout
@@ -48,22 +26,6 @@ services_steps: &services_steps
path: junit
jobs:
integration:
docker:
- image: cimg/node:16.15
- image: redis
<<: *integration_steps
integration@node-17:
docker:
- image: cimg/node:17.9
- image: redis
environment:
NPM_CONFIG_ENGINE_STRICT: 'false'
<<: *integration_steps
danger:
docker:
- image: cimg/node:16.15
@@ -185,10 +147,6 @@ workflows:
on-commit:
jobs:
- integration@node-17:
filters:
branches:
ignore: gh-pages
- frontend:
filters:
branches:

View File

@@ -0,0 +1,20 @@
name: 'Integration tests'
description: 'Run integration tests'
inputs:
github-token:
description: 'The GITHUB_TOKEN secret'
required: true
runs:
using: 'composite'
steps:
- name: Integration Tests
if: always()
run: npm run test:integration -- --reporter json --reporter-option 'output=reports/integration-tests.json'
env:
GH_TOKEN: '${{ inputs.github-token }}'
shell: bash
- name: Write Markdown Summary
if: always()
run: node scripts/mocha2md.js Integration reports/integration-tests.json >> $GITHUB_STEP_SUMMARY
shell: bash

View File

@@ -1,5 +1,7 @@
name: Auto close
on: pull_request_target
on:
pull_request_target:
types: [opened]
permissions:
pull-requests: write

View File

@@ -1,5 +1,7 @@
name: 'Dependency Review'
on: [pull_request]
on:
pull_request:
types: [opened, edited, reopened, synchronize]
jobs:
enforce-dependency-review:

View File

@@ -0,0 +1,47 @@
name: Integration@node 17
on:
pull_request:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
jobs:
test-integration-17:
runs-on: ubuntu-latest
env:
PAT_EXISTS: ${{ secrets.GH_PAT != '' }}
services:
redis:
image: redis
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 6379:6379
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup
uses: ./.github/actions/setup
with:
node-version: 17
env:
NPM_CONFIG_ENGINE_STRICT: 'false'
- name: Integration Tests (with PAT)
if: ${{ env.PAT_EXISTS == 'true' }}
uses: ./.github/actions/integration-tests
with:
github-token: '${{ secrets.GH_PAT }}'
- name: Integration Tests (with workflow token)
if: ${{ env.PAT_EXISTS == 'false' }}
uses: ./.github/actions/integration-tests
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'

45
.github/workflows/test-integration.yml vendored Normal file
View File

@@ -0,0 +1,45 @@
name: Integration
on:
pull_request:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
jobs:
test-integration:
runs-on: ubuntu-latest
env:
PAT_EXISTS: ${{ secrets.GH_PAT != '' }}
services:
redis:
image: redis
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 6379:6379
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup
uses: ./.github/actions/setup
with:
node-version: 16
- name: Integration Tests (with PAT)
if: ${{ env.PAT_EXISTS == 'true' }}
uses: ./.github/actions/integration-tests
with:
github-token: '${{ secrets.GH_PAT }}'
- name: Integration Tests (with workflow token)
if: ${{ env.PAT_EXISTS == 'false' }}
uses: ./.github/actions/integration-tests
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'

View File

@@ -4,6 +4,7 @@ on:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
jobs:
test-lint:

View File

@@ -4,6 +4,7 @@ on:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
jobs:
test-main-17:

View File

@@ -4,6 +4,7 @@ on:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
jobs:
test-main:

View File

@@ -4,6 +4,7 @@ on:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
# Smoke test (render a badge with the CLI) with only the package
# dependencies installed.

View File

@@ -4,6 +4,7 @@ on:
push:
branches-ignore:
- 'gh-pages'
- 'dependabot/**'
jobs:
test-package-lib:

442
package-lock.json generated
View File

@@ -13,12 +13,12 @@
"@fontsource/lekton": "^4.5.11",
"@renovate/pep440": "^1.0.0",
"@renovatebot/ruby-semver": "^1.1.6",
"@sentry/node": "^7.14.2",
"@sentry/node": "^7.15.0",
"@shields_io/camp": "^18.1.1",
"badge-maker": "file:badge-maker",
"bytes": "^3.1.2",
"camelcase": "^7.0.0",
"chalk": "^5.1.0",
"chalk": "^5.1.2",
"check-node-version": "^4.2.1",
"cloudflare-middleware": "^1.0.4",
"config": "^3.3.8",
@@ -30,11 +30,11 @@
"fast-xml-parser": "^4.0.11",
"glob": "^8.0.3",
"global-agent": "^3.0.0",
"got": "^12.5.1",
"got": "^12.5.2",
"graphql": "^15.6.1",
"graphql-tag": "^2.12.6",
"ioredis": "5.2.3",
"joi": "17.6.2",
"joi": "17.6.3",
"joi-extension-semver": "5.0.0",
"js-yaml": "^4.1.0",
"jsonpath": "~1.1.1",
@@ -50,7 +50,7 @@
"qs": "^6.11.0",
"query-string": "^7.1.1",
"semver": "~7.3.8",
"simple-icons": "7.14.0",
"simple-icons": "7.15.0",
"webextension-store-meta": "^1.0.5",
"xmldom": "~0.6.0",
"xpath": "~0.0.32"
@@ -70,7 +70,7 @@
"@types/react-modal": "^3.13.1",
"@types/react-select": "^4.0.17",
"@types/styled-components": "5.1.26",
"@typescript-eslint/eslint-plugin": "^5.39.0",
"@typescript-eslint/eslint-plugin": "^5.40.0",
"@typescript-eslint/parser": "^5.30.7",
"babel-plugin-inline-react-svg": "^2.0.1",
"babel-preset-gatsby": "^2.22.0",
@@ -83,7 +83,7 @@
"child-process-promise": "^2.2.1",
"clipboard-copy": "^4.0.1",
"concurrently": "^7.4.0",
"cypress": "^10.9.0",
"cypress": "^10.10.0",
"cypress-wait-for-stable-dom": "^0.0.4",
"danger": "^11.1.4",
"danger-plugin-no-test-shortcuts": "^2.0.0",
@@ -101,7 +101,7 @@
"eslint-plugin-no-extension-in-require": "^0.2.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^5.2.0",
"eslint-plugin-react": "^7.31.8",
"eslint-plugin-react": "^7.31.10",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-sort-class-members": "^1.15.2",
"fetch-ponyfill": "^7.1.0",
@@ -122,7 +122,7 @@
"lint-staged": "^13.0.3",
"lodash.debounce": "^4.0.8",
"lodash.difference": "^4.5.0",
"minimist": "^1.2.6",
"minimist": "^1.2.7",
"mocha": "^9.2.2",
"mocha-env-reporter": "^4.0.0",
"mocha-junit-reporter": "^2.1.0",
@@ -5190,26 +5190,12 @@
"integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ=="
},
"node_modules/@sentry/core": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.14.2.tgz",
"integrity": "sha512-AXcH6nROugziO5KsKSQ9TmAXq6HJa8Fn+kDqAL/sNY65w6YYlHifMO2xHkSXVJxGw7vx9DYh/5SF+KnLn6NDNA==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.15.0.tgz",
"integrity": "sha512-W8d44g04GShBn4Z9VBTUhf1T9LTMfzUnETEx237zzUucv0kkyj3LsWQsJapWchMbmwr1V/CdnNDN+lGDm8iXQA==",
"dependencies": {
"@sentry/hub": "7.14.2",
"@sentry/types": "7.14.2",
"@sentry/utils": "7.14.2",
"tslib": "^1.9.3"
},
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/hub": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-7.14.2.tgz",
"integrity": "sha512-18cuSesTn9VAF0JC107flLmtCRt/6DBn38uz0G9cPThKtTSNwjGvGZ/ag4J1iq+IDjVS5MA6iTncXOsSpVP2Wg==",
"dependencies": {
"@sentry/types": "7.14.2",
"@sentry/utils": "7.14.2",
"@sentry/types": "7.15.0",
"@sentry/utils": "7.15.0",
"tslib": "^1.9.3"
},
"engines": {
@@ -5217,14 +5203,13 @@
}
},
"node_modules/@sentry/node": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.14.2.tgz",
"integrity": "sha512-k2MsbF+ddEE8qoweRgrLh5853RqHN1a8MNlgsq8ibr8CKREbMzBvq14oVnvL61F/aojMlSMK2E6Z+SXBs7M6BA==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.15.0.tgz",
"integrity": "sha512-gfyo6YTo4Sw5pdKWCzs7trqZpBm5D/ArR4vylQrQayfImiYyNY6yaOK1R7g4rM34MXUu91pfVJLUpXvjk/NsHw==",
"dependencies": {
"@sentry/core": "7.14.2",
"@sentry/hub": "7.14.2",
"@sentry/types": "7.14.2",
"@sentry/utils": "7.14.2",
"@sentry/core": "7.15.0",
"@sentry/types": "7.15.0",
"@sentry/utils": "7.15.0",
"cookie": "^0.4.1",
"https-proxy-agent": "^5.0.0",
"lru_map": "^0.3.3",
@@ -5235,19 +5220,19 @@
}
},
"node_modules/@sentry/types": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.14.2.tgz",
"integrity": "sha512-JzkOtenArOXmJBAk/FBbxKKX7XC650HqkhGL4ugT/f+RyxfiDZ0X1TAYMrvKIe+qpn5Nh7JUBfR+BARKAiu2wQ==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.15.0.tgz",
"integrity": "sha512-MN9haDRh9ZOsTotoDTHu2BT3sT8Vs1F0alhizUpDyjN2YgBCqR6JV+AbAE1XNHwS2+5zbppch1PwJUVeE58URQ==",
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/utils": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.14.2.tgz",
"integrity": "sha512-vpZolN+k1IoxWXhKyOVcRl7V1bgww+96gHqTJdcMzOB83x/ofels7L0kqxb03WukKTYcnc7Ep+yBiKi/OYX9og==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.15.0.tgz",
"integrity": "sha512-akic22/6xa/RG5Mj7UN6pLc23VnX9zQlKM53L/q3yIr0juckSVthJiiFNdgdqrX03S1tHYlBgPeShKFFTHpkjA==",
"dependencies": {
"@sentry/types": "7.14.2",
"@sentry/types": "7.15.0",
"tslib": "^1.9.3"
},
"engines": {
@@ -5878,14 +5863,14 @@
"dev": true
},
"node_modules/@typescript-eslint/eslint-plugin": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.39.0.tgz",
"integrity": "sha512-xVfKOkBm5iWMNGKQ2fwX5GVgBuHmZBO1tCRwXmY5oAIsPscfwm2UADDuNB8ZVYCtpQvJK4xpjrK7jEhcJ0zY9A==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.0.tgz",
"integrity": "sha512-FIBZgS3DVJgqPwJzvZTuH4HNsZhHMa9SjxTKAZTlMsPw/UzpEjcf9f4dfgDJEHjK+HboUJo123Eshl6niwEm/Q==",
"dev": true,
"dependencies": {
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/type-utils": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/type-utils": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"ignore": "^5.2.0",
"regexpp": "^3.2.0",
@@ -5910,13 +5895,13 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz",
"integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.40.0.tgz",
"integrity": "sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0"
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -5927,9 +5912,9 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -5940,12 +5925,12 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
@@ -6065,13 +6050,13 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.39.0.tgz",
"integrity": "sha512-KJHJkOothljQWzR3t/GunL0TPKY+fGJtnpl+pX+sJ0YiKTz3q2Zr87SGTmFqsCMFrLt5E0+o+S6eQY0FAXj9uA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.40.0.tgz",
"integrity": "sha512-nfuSdKEZY2TpnPz5covjJqav+g5qeBqwSHKBvz7Vm1SAfy93SwKk/JeSTymruDGItTwNijSsno5LhOHRS1pcfw==",
"dev": true,
"dependencies": {
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
},
@@ -6092,9 +6077,9 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -6105,13 +6090,13 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz",
"integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.0.tgz",
"integrity": "sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -6132,12 +6117,12 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
@@ -6244,17 +6229,18 @@
"dev": true
},
"node_modules/@typescript-eslint/utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.39.0.tgz",
"integrity": "sha512-+DnY5jkpOpgj+EBtYPyHRjXampJfC0yUZZzfzLuUWVZvCuKqSdJVC8UhdWipIw7VKNTfwfAPiOWzYkAwuIhiAg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.40.0.tgz",
"integrity": "sha512-MO0y3T5BQ5+tkkuYZJBjePewsY+cQnfkYeRqS6tPh28niiIwPnQ1t59CSRcs1ZwJJNOdWw7rv9pF8aP58IMihA==",
"dev": true,
"dependencies": {
"@types/json-schema": "^7.0.9",
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"eslint-scope": "^5.1.1",
"eslint-utils": "^3.0.0"
"eslint-utils": "^3.0.0",
"semver": "^7.3.7"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -6268,13 +6254,13 @@
}
},
"node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz",
"integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.40.0.tgz",
"integrity": "sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0"
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -6285,9 +6271,9 @@
}
},
"node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -6298,13 +6284,13 @@
}
},
"node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz",
"integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.0.tgz",
"integrity": "sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -6325,12 +6311,12 @@
}
},
"node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
@@ -8328,9 +8314,9 @@
"dev": true
},
"node_modules/chalk": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.0.tgz",
"integrity": "sha512-56zD4khRTBoIyzUYAFgDDaPhUMN/fC/rySe6aZGqbj/VWiU2eI3l6ZLOtYGFZAV5v02mwPjtpzlrOveJiz5eZQ==",
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz",
"integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==",
"engines": {
"node": "^12.17.0 || ^14.13 || >=16.0.0"
},
@@ -10111,9 +10097,9 @@
"dev": true
},
"node_modules/cypress": {
"version": "10.9.0",
"resolved": "https://registry.npmjs.org/cypress/-/cypress-10.9.0.tgz",
"integrity": "sha512-MjIWrRpc+bQM9U4kSSdATZWZ2hUqHGFEQTF7dfeZRa4MnalMtc88FIE49USWP2ZVtfy5WPBcgfBX+YorFqGElA==",
"version": "10.10.0",
"resolved": "https://registry.npmjs.org/cypress/-/cypress-10.10.0.tgz",
"integrity": "sha512-bU8r44x1NIYAUNNXt3CwJpLOVth7HUv2hUhYCxZmgZ1IugowDvuHNpevnoZRQx1KKOEisLvIJW+Xen5Pjn41pg==",
"dev": true,
"hasInstallScript": true,
"dependencies": {
@@ -12331,9 +12317,9 @@
}
},
"node_modules/eslint-plugin-react": {
"version": "7.31.8",
"resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz",
"integrity": "sha512-5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw==",
"version": "7.31.10",
"resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz",
"integrity": "sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==",
"dev": true,
"dependencies": {
"array-includes": "^3.1.5",
@@ -16703,9 +16689,9 @@
}
},
"node_modules/got": {
"version": "12.5.1",
"resolved": "https://registry.npmjs.org/got/-/got-12.5.1.tgz",
"integrity": "sha512-sD16AK8cCyUoPtKr/NMvLTFFa+T3i3S+zoiuvhq0HP2YiqBZA9AtlBjAdsQBsLBK7slPuvmfE0OxhGi7N5dD4w==",
"version": "12.5.2",
"resolved": "https://registry.npmjs.org/got/-/got-12.5.2.tgz",
"integrity": "sha512-guHGMSEcsA5m1oPRweXUJnug0vuvlkX9wx5hzOka+ZBrBUOJHU0Z1JcNu3QE5IPGnA5aXUsQHdWOD4eJg9/v3A==",
"dependencies": {
"@sindresorhus/is": "^5.2.0",
"@szmarczak/http-timer": "^5.0.1",
@@ -18605,9 +18591,9 @@
"dev": true
},
"node_modules/joi": {
"version": "17.6.2",
"resolved": "https://registry.npmjs.org/joi/-/joi-17.6.2.tgz",
"integrity": "sha512-+gqqdh1xc1wb+Lor0J9toqgeReyDOCqOdG8QSdRcEvwrcRiFQZneUCGKjFjuyBWUb3uaFOgY56yMaZ5FIc+H4w==",
"version": "17.6.3",
"resolved": "https://registry.npmjs.org/joi/-/joi-17.6.3.tgz",
"integrity": "sha512-YlQsIaS9MHYekzf1Qe11LjTkNzx9qhYluK3172z38RxYoAUf82XMX1p1DG1H4Wtk2ED/vPdSn9OggqtDu+aTow==",
"dependencies": {
"@hapi/hoek": "^9.0.0",
"@hapi/topo": "^5.0.0",
@@ -20701,9 +20687,12 @@
}
},
"node_modules/minimist": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
"integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q=="
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz",
"integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==",
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/minimist-options": {
"version": "4.1.0",
@@ -25979,9 +25968,9 @@
}
},
"node_modules/simple-icons": {
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-7.14.0.tgz",
"integrity": "sha512-peojKZtdmNlM4ofTERoJWwP5p/R3mRBtFf9ERTaEmnepXQxdealNZOyjPQie9M1gKQYuy0xD5ckwUWvNFK/fNQ==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-7.15.0.tgz",
"integrity": "sha512-coAQCSm+bbYDsuSCKQ46IqKJ3DvYIdVHQrSeYjR/nijer18C4xh8WkIlTXYtiiSfblXXp4zjDJqZTyBX5Hcm/w==",
"engines": {
"node": ">=0.12.18"
},
@@ -33715,35 +33704,23 @@
}
},
"@sentry/core": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.14.2.tgz",
"integrity": "sha512-AXcH6nROugziO5KsKSQ9TmAXq6HJa8Fn+kDqAL/sNY65w6YYlHifMO2xHkSXVJxGw7vx9DYh/5SF+KnLn6NDNA==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.15.0.tgz",
"integrity": "sha512-W8d44g04GShBn4Z9VBTUhf1T9LTMfzUnETEx237zzUucv0kkyj3LsWQsJapWchMbmwr1V/CdnNDN+lGDm8iXQA==",
"requires": {
"@sentry/hub": "7.14.2",
"@sentry/types": "7.14.2",
"@sentry/utils": "7.14.2",
"tslib": "^1.9.3"
}
},
"@sentry/hub": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-7.14.2.tgz",
"integrity": "sha512-18cuSesTn9VAF0JC107flLmtCRt/6DBn38uz0G9cPThKtTSNwjGvGZ/ag4J1iq+IDjVS5MA6iTncXOsSpVP2Wg==",
"requires": {
"@sentry/types": "7.14.2",
"@sentry/utils": "7.14.2",
"@sentry/types": "7.15.0",
"@sentry/utils": "7.15.0",
"tslib": "^1.9.3"
}
},
"@sentry/node": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.14.2.tgz",
"integrity": "sha512-k2MsbF+ddEE8qoweRgrLh5853RqHN1a8MNlgsq8ibr8CKREbMzBvq14oVnvL61F/aojMlSMK2E6Z+SXBs7M6BA==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.15.0.tgz",
"integrity": "sha512-gfyo6YTo4Sw5pdKWCzs7trqZpBm5D/ArR4vylQrQayfImiYyNY6yaOK1R7g4rM34MXUu91pfVJLUpXvjk/NsHw==",
"requires": {
"@sentry/core": "7.14.2",
"@sentry/hub": "7.14.2",
"@sentry/types": "7.14.2",
"@sentry/utils": "7.14.2",
"@sentry/core": "7.15.0",
"@sentry/types": "7.15.0",
"@sentry/utils": "7.15.0",
"cookie": "^0.4.1",
"https-proxy-agent": "^5.0.0",
"lru_map": "^0.3.3",
@@ -33751,16 +33728,16 @@
}
},
"@sentry/types": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.14.2.tgz",
"integrity": "sha512-JzkOtenArOXmJBAk/FBbxKKX7XC650HqkhGL4ugT/f+RyxfiDZ0X1TAYMrvKIe+qpn5Nh7JUBfR+BARKAiu2wQ=="
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.15.0.tgz",
"integrity": "sha512-MN9haDRh9ZOsTotoDTHu2BT3sT8Vs1F0alhizUpDyjN2YgBCqR6JV+AbAE1XNHwS2+5zbppch1PwJUVeE58URQ=="
},
"@sentry/utils": {
"version": "7.14.2",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.14.2.tgz",
"integrity": "sha512-vpZolN+k1IoxWXhKyOVcRl7V1bgww+96gHqTJdcMzOB83x/ofels7L0kqxb03WukKTYcnc7Ep+yBiKi/OYX9og==",
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.15.0.tgz",
"integrity": "sha512-akic22/6xa/RG5Mj7UN6pLc23VnX9zQlKM53L/q3yIr0juckSVthJiiFNdgdqrX03S1tHYlBgPeShKFFTHpkjA==",
"requires": {
"@sentry/types": "7.14.2",
"@sentry/types": "7.15.0",
"tslib": "^1.9.3"
}
},
@@ -34359,14 +34336,14 @@
"dev": true
},
"@typescript-eslint/eslint-plugin": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.39.0.tgz",
"integrity": "sha512-xVfKOkBm5iWMNGKQ2fwX5GVgBuHmZBO1tCRwXmY5oAIsPscfwm2UADDuNB8ZVYCtpQvJK4xpjrK7jEhcJ0zY9A==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.0.tgz",
"integrity": "sha512-FIBZgS3DVJgqPwJzvZTuH4HNsZhHMa9SjxTKAZTlMsPw/UzpEjcf9f4dfgDJEHjK+HboUJo123Eshl6niwEm/Q==",
"dev": true,
"requires": {
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/type-utils": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/type-utils": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"ignore": "^5.2.0",
"regexpp": "^3.2.0",
@@ -34375,28 +34352,28 @@
},
"dependencies": {
"@typescript-eslint/scope-manager": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz",
"integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.40.0.tgz",
"integrity": "sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0"
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0"
}
},
"@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true
},
"@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
}
},
@@ -34469,31 +34446,31 @@
}
},
"@typescript-eslint/type-utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.39.0.tgz",
"integrity": "sha512-KJHJkOothljQWzR3t/GunL0TPKY+fGJtnpl+pX+sJ0YiKTz3q2Zr87SGTmFqsCMFrLt5E0+o+S6eQY0FAXj9uA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.40.0.tgz",
"integrity": "sha512-nfuSdKEZY2TpnPz5covjJqav+g5qeBqwSHKBvz7Vm1SAfy93SwKk/JeSTymruDGItTwNijSsno5LhOHRS1pcfw==",
"dev": true,
"requires": {
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
},
"dependencies": {
"@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true
},
"@typescript-eslint/typescript-estree": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz",
"integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.0.tgz",
"integrity": "sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -34502,12 +34479,12 @@
}
},
"@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
}
},
@@ -34573,43 +34550,44 @@
}
},
"@typescript-eslint/utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.39.0.tgz",
"integrity": "sha512-+DnY5jkpOpgj+EBtYPyHRjXampJfC0yUZZzfzLuUWVZvCuKqSdJVC8UhdWipIw7VKNTfwfAPiOWzYkAwuIhiAg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.40.0.tgz",
"integrity": "sha512-MO0y3T5BQ5+tkkuYZJBjePewsY+cQnfkYeRqS6tPh28niiIwPnQ1t59CSRcs1ZwJJNOdWw7rv9pF8aP58IMihA==",
"dev": true,
"requires": {
"@types/json-schema": "^7.0.9",
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"eslint-scope": "^5.1.1",
"eslint-utils": "^3.0.0"
"eslint-utils": "^3.0.0",
"semver": "^7.3.7"
},
"dependencies": {
"@typescript-eslint/scope-manager": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz",
"integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.40.0.tgz",
"integrity": "sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0"
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0"
}
},
"@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true
},
"@typescript-eslint/typescript-estree": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz",
"integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.0.tgz",
"integrity": "sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -34618,12 +34596,12 @@
}
},
"@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
}
},
@@ -36214,9 +36192,9 @@
"dev": true
},
"chalk": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.0.tgz",
"integrity": "sha512-56zD4khRTBoIyzUYAFgDDaPhUMN/fC/rySe6aZGqbj/VWiU2eI3l6ZLOtYGFZAV5v02mwPjtpzlrOveJiz5eZQ=="
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz",
"integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ=="
},
"change-case": {
"version": "4.1.2",
@@ -37582,9 +37560,9 @@
"dev": true
},
"cypress": {
"version": "10.9.0",
"resolved": "https://registry.npmjs.org/cypress/-/cypress-10.9.0.tgz",
"integrity": "sha512-MjIWrRpc+bQM9U4kSSdATZWZ2hUqHGFEQTF7dfeZRa4MnalMtc88FIE49USWP2ZVtfy5WPBcgfBX+YorFqGElA==",
"version": "10.10.0",
"resolved": "https://registry.npmjs.org/cypress/-/cypress-10.10.0.tgz",
"integrity": "sha512-bU8r44x1NIYAUNNXt3CwJpLOVth7HUv2hUhYCxZmgZ1IugowDvuHNpevnoZRQx1KKOEisLvIJW+Xen5Pjn41pg==",
"dev": true,
"requires": {
"@cypress/request": "^2.88.10",
@@ -39535,9 +39513,9 @@
"requires": {}
},
"eslint-plugin-react": {
"version": "7.31.8",
"resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz",
"integrity": "sha512-5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw==",
"version": "7.31.10",
"resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz",
"integrity": "sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==",
"dev": true,
"requires": {
"array-includes": "^3.1.5",
@@ -42577,9 +42555,9 @@
}
},
"got": {
"version": "12.5.1",
"resolved": "https://registry.npmjs.org/got/-/got-12.5.1.tgz",
"integrity": "sha512-sD16AK8cCyUoPtKr/NMvLTFFa+T3i3S+zoiuvhq0HP2YiqBZA9AtlBjAdsQBsLBK7slPuvmfE0OxhGi7N5dD4w==",
"version": "12.5.2",
"resolved": "https://registry.npmjs.org/got/-/got-12.5.2.tgz",
"integrity": "sha512-guHGMSEcsA5m1oPRweXUJnug0vuvlkX9wx5hzOka+ZBrBUOJHU0Z1JcNu3QE5IPGnA5aXUsQHdWOD4eJg9/v3A==",
"requires": {
"@sindresorhus/is": "^5.2.0",
"@szmarczak/http-timer": "^5.0.1",
@@ -44005,9 +43983,9 @@
"dev": true
},
"joi": {
"version": "17.6.2",
"resolved": "https://registry.npmjs.org/joi/-/joi-17.6.2.tgz",
"integrity": "sha512-+gqqdh1xc1wb+Lor0J9toqgeReyDOCqOdG8QSdRcEvwrcRiFQZneUCGKjFjuyBWUb3uaFOgY56yMaZ5FIc+H4w==",
"version": "17.6.3",
"resolved": "https://registry.npmjs.org/joi/-/joi-17.6.3.tgz",
"integrity": "sha512-YlQsIaS9MHYekzf1Qe11LjTkNzx9qhYluK3172z38RxYoAUf82XMX1p1DG1H4Wtk2ED/vPdSn9OggqtDu+aTow==",
"requires": {
"@hapi/hoek": "^9.0.0",
"@hapi/topo": "^5.0.0",
@@ -45668,9 +45646,9 @@
}
},
"minimist": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
"integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q=="
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz",
"integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g=="
},
"minimist-options": {
"version": "4.1.0",
@@ -49723,9 +49701,9 @@
"dev": true
},
"simple-icons": {
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-7.14.0.tgz",
"integrity": "sha512-peojKZtdmNlM4ofTERoJWwP5p/R3mRBtFf9ERTaEmnepXQxdealNZOyjPQie9M1gKQYuy0xD5ckwUWvNFK/fNQ=="
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-7.15.0.tgz",
"integrity": "sha512-coAQCSm+bbYDsuSCKQ46IqKJ3DvYIdVHQrSeYjR/nijer18C4xh8WkIlTXYtiiSfblXXp4zjDJqZTyBX5Hcm/w=="
},
"simple-swizzle": {
"version": "0.2.2",

View File

@@ -25,12 +25,12 @@
"@fontsource/lekton": "^4.5.11",
"@renovate/pep440": "^1.0.0",
"@renovatebot/ruby-semver": "^1.1.6",
"@sentry/node": "^7.14.2",
"@sentry/node": "^7.15.0",
"@shields_io/camp": "^18.1.1",
"badge-maker": "file:badge-maker",
"bytes": "^3.1.2",
"camelcase": "^7.0.0",
"chalk": "^5.1.0",
"chalk": "^5.1.2",
"check-node-version": "^4.2.1",
"cloudflare-middleware": "^1.0.4",
"config": "^3.3.8",
@@ -42,11 +42,11 @@
"fast-xml-parser": "^4.0.11",
"glob": "^8.0.3",
"global-agent": "^3.0.0",
"got": "^12.5.1",
"got": "^12.5.2",
"graphql": "^15.6.1",
"graphql-tag": "^2.12.6",
"ioredis": "5.2.3",
"joi": "17.6.2",
"joi": "17.6.3",
"joi-extension-semver": "5.0.0",
"js-yaml": "^4.1.0",
"jsonpath": "~1.1.1",
@@ -62,7 +62,7 @@
"qs": "^6.11.0",
"query-string": "^7.1.1",
"semver": "~7.3.8",
"simple-icons": "7.14.0",
"simple-icons": "7.15.0",
"webextension-store-meta": "^1.0.5",
"xmldom": "~0.6.0",
"xpath": "~0.0.32"
@@ -156,7 +156,7 @@
"@types/react-modal": "^3.13.1",
"@types/react-select": "^4.0.17",
"@types/styled-components": "5.1.26",
"@typescript-eslint/eslint-plugin": "^5.39.0",
"@typescript-eslint/eslint-plugin": "^5.40.0",
"@typescript-eslint/parser": "^5.30.7",
"babel-plugin-inline-react-svg": "^2.0.1",
"babel-preset-gatsby": "^2.22.0",
@@ -169,7 +169,7 @@
"child-process-promise": "^2.2.1",
"clipboard-copy": "^4.0.1",
"concurrently": "^7.4.0",
"cypress": "^10.9.0",
"cypress": "^10.10.0",
"cypress-wait-for-stable-dom": "^0.0.4",
"danger": "^11.1.4",
"danger-plugin-no-test-shortcuts": "^2.0.0",
@@ -187,7 +187,7 @@
"eslint-plugin-no-extension-in-require": "^0.2.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^5.2.0",
"eslint-plugin-react": "^7.31.8",
"eslint-plugin-react": "^7.31.10",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-sort-class-members": "^1.15.2",
"fetch-ponyfill": "^7.1.0",
@@ -208,7 +208,7 @@
"lint-staged": "^13.0.3",
"lodash.debounce": "^4.0.8",
"lodash.difference": "^4.5.0",
"minimist": "^1.2.6",
"minimist": "^1.2.7",
"mocha": "^9.2.2",
"mocha-env-reporter": "^4.0.0",
"mocha-junit-reporter": "^2.1.0",

View File

@@ -20,7 +20,7 @@ t.create('pr-raw (not found)')
t.create('pr-raw (private repo)')
.get('/pr-raw/chris48s/example-private-repo.json')
.expectBadge({ label: 'pull requests', message: 'private repo' })
.expectBadge({ label: 'pull requests', message: 'not found' })
t.create('pr (valid)').get('/pr/atlassian/python-bitbucket.json').expectBadge({
label: 'pull requests',
@@ -33,7 +33,7 @@ t.create('pr (not found)')
t.create('pr (private repo)')
.get('/pr/chris48s/example-private-repo.json')
.expectBadge({ label: 'pull requests', message: 'private repo' })
.expectBadge({ label: 'pull requests', message: 'not found' })
t.create('pr (server)')
.get('/pr/project/repo.json?server=https://bitbucket.mydomain.net')

View File

@@ -1,12 +1,7 @@
import Joi from 'joi'
import { createServiceTester } from '../tester.js'
import { isOrdinalNumber, isOrdinalNumberDaily } from '../test-validators.js'
export const t = await createServiceTester()
const isOrdinalNumber = Joi.string().regex(/^[1-9][0-9]+(ᵗʰ|ˢᵗ|ⁿᵈ|ʳᵈ)$/)
const isOrdinalNumberDaily = Joi.string().regex(
/^[1-9][0-9]*(ᵗʰ|ˢᵗ|ⁿᵈ|ʳᵈ) daily$/
)
t.create('total rank (valid)').get('/rt/rspec-puppet-facts.json').expectBadge({
label: 'rank',
message: isOrdinalNumber,

View File

@@ -7,7 +7,7 @@ import { documentation, transformErrors } from './github-helpers.js'
const greenStates = ['SUCCESS']
const redStates = ['ERROR', 'FAILURE']
const blueStates = ['INACTIVE']
const otherStates = ['IN_PROGRESS', 'QUEUED', 'PENDING', 'NO_STATUS']
const otherStates = ['IN_PROGRESS', 'QUEUED', 'PENDING', 'NO_STATUS', 'WAITING']
const stateToMessageMappings = {
IN_PROGRESS: 'in progress',

View File

@@ -21,6 +21,12 @@ describe('GithubDeployments', function () {
message: 'in progress',
color: undefined,
})
given({
state: 'WAITING',
}).expect({
message: 'waiting',
color: undefined,
})
given({
state: 'NO_STATUS',
}).expect({

View File

@@ -23,9 +23,9 @@ t.create('version installs | valid: numeric version')
})
t.create('version installs | valid: alphanumeric version')
.get('/build-failure-analyzer/1.17.2-DRE3.14.json')
.get('/build-failure-analyzer/1.17.2-DRE3.21.json')
.expectBadge({
label: 'installs@1.17.2-DRE3.14',
label: 'installs@1.17.2-DRE3.21',
message: isMetric,
})

View File

@@ -27,7 +27,7 @@ t.create('total downloads (valid)')
})
t.create('total downloads (tenant)')
.get('/cefsharp.myget/cefsharp/dt/CefSharp.Common.json')
.get('/vs-devcore.myget/vs-devcore/dt/MicroBuild.json')
.expectBadge({
label: 'downloads',
message: isMetric,

View File

@@ -1,83 +1,11 @@
import Joi from 'joi'
import { starRating, metric } from '../text-formatters.js'
import { colorScale } from '../color-formatters.js'
import { nonNegativeInteger } from '../validators.js'
import { BaseJsonService } from '../index.js'
import { deprecatedService } from '../index.js'
const pkgReviewColor = colorScale([2, 3, 4])
const schema = Joi.object({
rating: Joi.number().min(0).max(1).precision(1).required().allow(null),
reviewsCount: nonNegativeInteger,
}).required()
// Repository for this service is: https://github.com/iqubex-technologies/pkgreview.dev
// Internally the service leverages the npms.io API (https://api.npms.io/v2)
export default class PkgreviewRating extends BaseJsonService {
static category = 'rating'
static route = {
export default deprecatedService({
category: 'rating',
route: {
base: 'pkgreview',
pattern: ':format(rating|stars)/:pkgManager(npm)/:pkgSlug+',
}
static examples = [
{
title: 'pkgreview.dev Package Ratings',
pattern: 'rating/:pkgManager/:pkgSlug+',
namedParams: { pkgManager: 'npm', pkgSlug: 'react' },
staticPreview: this.render({
format: 'rating',
rating: 3.5,
reviewsCount: 237,
}),
},
{
title: 'pkgreview.dev Star Ratings',
pattern: 'stars/:pkgManager/:pkgSlug+',
namedParams: { pkgManager: 'npm', pkgSlug: 'react' },
staticPreview: this.render({
format: 'stars',
rating: 1.5,
reviewsCount: 200,
}),
},
]
static render({ rating, reviewsCount, format }) {
const message =
format === 'rating'
? `${+parseFloat(rating).toFixed(1)}/5 (${metric(reviewsCount)})`
: starRating(rating)
return {
message,
label: format,
color: pkgReviewColor(rating),
}
}
async fetch({ pkgManager, pkgSlug }) {
return this._requestJson({
schema,
url: `https://pkgreview.now.sh/api/v1/${pkgManager}/${encodeURIComponent(
pkgSlug
)}`,
errorMessages: {
404: 'package not found',
},
})
}
async handle({ format, pkgManager, pkgSlug }) {
const { reviewsCount, rating } = await this.fetch({
pkgManager,
pkgSlug,
})
return this.constructor.render({
reviewsCount,
format,
rating: rating * 5,
})
}
}
pattern: ':various*',
},
label: 'pkgreview',
dateAdded: new Date('2022-10-07'),
})

View File

@@ -1,23 +1,15 @@
import { withRegex, isStarRating } from '../test-validators.js'
import { createServiceTester } from '../tester.js'
export const t = await createServiceTester()
import { ServiceTester } from '../tester.js'
const isRatingWithReviews = withRegex(
/^(([0-4](.?([0-9]))?)|5)\/5?\s*\([0-9]*\)$/
)
export const t = new ServiceTester({
id: 'pkgreview',
title: 'PkgReview',
pathPrefix: '/pkgreview',
})
t.create('Stars Badge renders')
t.create('Stars Badge')
.get('/stars/npm/react.json')
.expectBadge({ label: 'stars', message: isStarRating })
.expectBadge({ label: 'pkgreview', message: 'no longer available' })
t.create('Rating Badge renders')
t.create('Rating Badge')
.get('/rating/npm/react.json')
.expectBadge({ label: 'rating', message: isRatingWithReviews })
t.create('nonexistent package')
.get('/rating/npm/ohlolweallknowthispackagewontexist.json')
.expectBadge({
label: 'rating',
message: 'package not found',
color: 'red',
})
.expectBadge({ label: 'pkgreview', message: 'no longer available' })

View File

@@ -35,7 +35,7 @@ class PowershellGalleryPlatformSupport extends BaseXmlService {
static examples = [
{
title: 'PowerShell Gallery',
namedParams: { packageName: 'DNS.1.1.1.1' },
namedParams: { packageName: 'PackageManagement' },
staticPreview: this.render({
platforms: ['windows', 'macos', 'linux'],
}),

View File

@@ -47,7 +47,7 @@ t.create('version (legacy redirect: vpre)')
.get('/vpre/ACMESharp.svg')
.expectRedirect('/powershellgallery/v/ACMESharp.svg?include_prereleases')
t.create('platform (valid').get('/p/DNS.1.1.1.1.json').expectBadge({
t.create('platform (valid)').get('/p/PackageManagement.json').expectBadge({
label: 'platform',
message: isPlatform,
})

View File

@@ -62,7 +62,10 @@ t.create('valid repo -- unregistered')
color: COLOR_MAP.unregistered,
})
t.create('invalid repo').get('/github.com/repo/invalid-repo.json').expectBadge({
label: 'reuse',
message: 'Not a Git repository',
})
t.create('invalid repo')
.timeout(15000)
.get('/github.com/repo/invalid-repo.json')
.expectBadge({
label: 'reuse',
message: 'Not a Git repository',
})

View File

@@ -155,6 +155,15 @@ const isCustomCompactTestTotals = makeCompactTestTotalsValidator({
skipped: '🤷',
})
const isOrdinalNumber = Joi.string().regex(/^[1-9][0-9]*(ᵗʰ|ˢᵗ|ⁿᵈ|ʳᵈ)$/)
const isOrdinalNumberDaily = Joi.string().regex(
/^[1-9][0-9]*(ᵗʰ|ˢᵗ|ⁿᵈ|ʳᵈ) daily$/
)
const isHumanized = Joi.string().regex(
/[0-9a-z]+ (second|seconds|minute|minutes|hour|hours|day|days|month|months|year|years)/
)
export {
isSemver,
isVPlusTripleDottedVersion,
@@ -187,4 +196,7 @@ export {
isCustomCompactTestTotals,
makeTestTotalsValidator,
makeCompactTestTotalsValidator,
isOrdinalNumber,
isOrdinalNumberDaily,
isHumanized,
}

View File

@@ -0,0 +1,126 @@
import Joi from 'joi'
import dayjs from 'dayjs'
import calendar from 'dayjs/plugin/calendar.js'
import duration from 'dayjs/plugin/duration.js'
import relativeTime from 'dayjs/plugin/relativeTime.js'
import { BaseJsonService } from '../index.js'
import { metric as formatMetric, ordinalNumber } from '../text-formatters.js'
dayjs.extend(calendar)
dayjs.extend(duration)
dayjs.extend(relativeTime)
const schema = Joi.object({
Keys: Joi.alternatives(Joi.string(), Joi.number()).required(),
Clicks: Joi.alternatives(Joi.string(), Joi.number()).required(),
UptimeSeconds: Joi.alternatives(Joi.string(), Joi.number()).required(),
Download: Joi.string().required(),
Upload: Joi.string().required(),
Ranks: Joi.object({
Keys: Joi.string().required(),
Clicks: Joi.string().required(),
Download: Joi.string().required(),
Upload: Joi.string().required(),
Uptime: Joi.string().required(),
}),
}).required()
const queryParamSchema = Joi.object({
rank: Joi.equal(''),
}).required()
export default class WhatPulse extends BaseJsonService {
static category = 'activity'
static route = {
base: 'whatpulse',
pattern:
':metric(keys|clicks|uptime|download|upload)/:userType(user|team)/:id',
queryParamSchema,
}
static examples = [
{
title: 'WhatPulse user metric',
namedParams: { metric: 'keys', userType: 'user', id: '179734' },
staticPreview: this.render({
metric: 'keys',
metricValue: '21G',
}),
},
{
title: 'WhatPulse team metric - rank',
namedParams: {
metric: 'upload',
userType: 'team',
id: 'dutch power cows',
},
queryParams: { rank: null },
staticPreview: this.render({
metric: 'upload',
metricValue: '1ˢᵗ',
}),
},
]
static defaultBadgeData = { label: 'whatpulse' }
static render({ metric, metricValue }) {
return {
label: metric,
message: metricValue,
color: 'informational',
}
}
async fetch({ userType, id }) {
return await this._requestJson({
schema,
url: `https://api.whatpulse.org/${userType}.php?${userType}=${id}&format=json`,
})
}
toLowerKeys(obj) {
return Object.keys(obj).reduce((accumulator, key) => {
accumulator[key.toLowerCase()] = obj[key]
return accumulator
}, {})
}
transform({ json, metric }, { rank }) {
// We want to compare with lowercase keys from the WhatPulse's API.
const jsonLowercase = this.toLowerKeys(json)
jsonLowercase.ranks = this.toLowerKeys(json.Ranks)
// Just metric, no rank.
if (rank === undefined) {
if (metric === 'uptime') {
return dayjs.duration(jsonLowercase.uptimeseconds, 'seconds').humanize()
}
let metricValue
metricValue = jsonLowercase[metric]
if (metric === 'keys' || metric === 'clicks') {
metricValue = formatMetric(metricValue)
}
if (metric === 'upload' || metric === 'download') {
metricValue = metricValue.replace(/([A-Za-z]+)/, ' $1')
}
return metricValue
}
// Rank achieved by the user/team with the given metric.
const rankFromResp = jsonLowercase.ranks[metric]
return ordinalNumber(rankFromResp)
}
async handle({ metric, userType, id }, { rank }) {
const json = await this.fetch({ userType, id, metric })
const metricValue = this.transform({ json, metric }, { rank })
return this.constructor.render({ metric, metricValue })
}
}

View File

@@ -0,0 +1,42 @@
import { createServiceTester } from '../tester.js'
import {
isFileSize,
isHumanized,
isMetric,
isOrdinalNumber,
} from '../test-validators.js'
export const t = await createServiceTester()
t.create('WhatPulse user as user id, uptime')
.get('/uptime/user/179734.json')
.expectBadge({ label: 'uptime', message: isHumanized })
t.create('WhatPulse user as user name, keys')
.get('/keys/user/jerone.json')
.expectBadge({ label: 'keys', message: isMetric })
t.create('WhatPulse team as team id, clicks')
.get('/clicks/team/1295.json')
.expectBadge({ label: 'clicks', message: isMetric })
t.create('WhatPulse team as team id, download')
.get('/download/team/1295.json')
.expectBadge({ label: 'download', message: isFileSize })
t.create('WhatPulse team as team id, upload')
.get('/upload/team/1295.json')
.expectBadge({ label: 'upload', message: isFileSize })
t.create('WhatPulse team as team name, keys - from Ranks')
.get('/keys/team/dutch power cows.json?rank')
.expectBadge({ label: 'keys', message: isOrdinalNumber })
t.create(
'WhatPulse invalid metric name (not one of the options from the modal`s dropdown)'
)
.get('/UpTIMe/user/jerone.json')
.expectBadge({ label: '404', message: 'badge not found' })
t.create('WhatPulse incorrect user name')
.get('/uptime/user/NonExistentUsername.json')
.expectBadge({ label: 'whatpulse', message: 'invalid response data' })