From 461adfc7aa48bad55e428368a3f432f70008a51e Mon Sep 17 00:00:00 2001 From: Long Hao <71317774+LongOddCode@users.noreply.github.com> Date: Wed, 23 Jun 2021 15:26:15 +0800 Subject: [PATCH 001/202] Set up CI with Azure Pipelines [skip ci] --- azure-pipelines.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 azure-pipelines.yml diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 00000000..000c99b6 --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,21 @@ +# Node.js +# Build a general Node.js project with npm. +# Add steps that analyze code, save build artifacts, deploy, and more: +# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript + +trigger: +- dev + +pool: + vmImage: ubuntu-latest + +steps: +- task: NodeTool@0 + inputs: + versionSpec: '14.x' + displayName: 'Install Node.js' + +- script: | + npm install + npm run setup + displayName: 'npm install and build' From 4e35219624fe372b23741497579d91165f1ee2bf Mon Sep 17 00:00:00 2001 From: Long Hao <71317774+LongOddCode@users.noreply.github.com> Date: Wed, 23 Jun 2021 15:30:20 +0800 Subject: [PATCH 002/202] Update azure-pipelines.yml for Azure Pipelines --- azure-pipelines.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 000c99b6..39bc3971 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -18,4 +18,6 @@ steps: - script: | npm install npm run setup + lscpu + lshw displayName: 'npm install and build' From fd14cc3651e4c3d8026cae91907085ba6522b171 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 28 Jun 2021 20:20:35 +0800 Subject: [PATCH 003/202] feat: add test coverage yml --- .github/workflows/test-coverage.yml | 77 +++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 .github/workflows/test-coverage.yml diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml new file mode 100644 index 00000000..036b2502 --- /dev/null +++ b/.github/workflows/test-coverage.yml @@ -0,0 +1,77 @@ +name: Test Coverage + +on: + pull_request: + branches: + - main + - dev + +jobs: + source-branch-test: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + ref: ${{ github.head_ref }} + + - name: Setup node + uses: actions/setup-node@v2.1.2 + with: + node-version: 14 + + - name: Setup project + run: | + npm run setup + + - name: Unit Test + id: unit-test + run: | + npx lerna run test:unit + for i in $(find . -name coverage-summary.json); do + TOTAL=$(node -p -e "require('$i').total;") + PACKAGE=$(basename $(dirname $(dirname $i))) + echo "::set-output name=$PACKAGE::$TOTAL", + done + + target-branch-test: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + ref: ${{ github.base_ref }} + + - name: Setup node + uses: actions/setup-node@v2.1.2 + with: + node-version: 14 + + - name: Setup .NET Core + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 3.1.x + + - name: Setup project + run: | + npm run setup + + - name: Unit Test + id: unit-test + run: | + npx lerna run test:unit + for i in $(find . -name coverage-summary.json); do + TOTAL=$(node -p -e "require('$i').total;") + PACKAGE=$(basename $(dirname $(dirname $i))) + echo "::set-output name=$PACKAGE::$TOTAL", + done + + compare-coverage: + needs: [source-branch-test, target-branch-test] + runs-on: ubuntu-latest + steps: + - name: echo + run: | + echo ${{ needs.source-branch-test.outputs }} + echo ${{ needs.target-branch-test.outputs }} + From b8e9cef19e243ad0fca39b37f85771a4ab1c476e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 28 Jun 2021 20:30:13 +0800 Subject: [PATCH 004/202] feat: add test coverage yml --- .github/workflows/test-coverage.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index 036b2502..e5756b42 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -33,6 +33,7 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done + echo "::set-output name=TEST_KEY1::TEST_VALUE1", target-branch-test: runs-on: ubuntu-latest @@ -65,6 +66,7 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done + echo "::set-output name=TEST_KEY2::TEST_VALUE2", compare-coverage: needs: [source-branch-test, target-branch-test] From b32f53f80a3e416437ba40660f549a5afce74914 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 28 Jun 2021 20:31:43 +0800 Subject: [PATCH 005/202] feat: add test coverage yml --- .github/workflows/test-coverage.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index e5756b42..09f9624d 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -33,7 +33,7 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done - echo "::set-output name=TEST_KEY1::TEST_VALUE1", + echo "::set-output name=TEST_KEY::TEST_VALUE", target-branch-test: runs-on: ubuntu-latest @@ -66,7 +66,7 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done - echo "::set-output name=TEST_KEY2::TEST_VALUE2", + echo "::set-output name=TEST_KEY::TEST_VALUE", compare-coverage: needs: [source-branch-test, target-branch-test] @@ -74,6 +74,6 @@ jobs: steps: - name: echo run: | - echo ${{ needs.source-branch-test.outputs }} - echo ${{ needs.target-branch-test.outputs }} + echo ${{ needs.source-branch-test.outputs.TEST_KEY }} + echo ${{ needs.target-branch-test.outputs.TEST_KEY }} From ccc4d0abe6fd3f38184fd1505b669cf7b3f02cbb Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 28 Jun 2021 20:35:52 +0800 Subject: [PATCH 006/202] feat: add test coverage yml --- .github/workflows/test-coverage.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index 09f9624d..c6b0a355 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -9,6 +9,8 @@ on: jobs: source-branch-test: runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.unit-test.outputs.key }} steps: - name: Checkout uses: actions/checkout@v2 @@ -33,10 +35,12 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done - echo "::set-output name=TEST_KEY::TEST_VALUE", + echo "::set-output name=key::TEST_VALUE", target-branch-test: runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.unit-test.outputs.key }} steps: - name: Checkout uses: actions/checkout@v2 @@ -66,7 +70,7 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done - echo "::set-output name=TEST_KEY::TEST_VALUE", + echo "::set-output name=key::TEST_VALUE", compare-coverage: needs: [source-branch-test, target-branch-test] @@ -74,6 +78,6 @@ jobs: steps: - name: echo run: | - echo ${{ needs.source-branch-test.outputs.TEST_KEY }} - echo ${{ needs.target-branch-test.outputs.TEST_KEY }} + echo ${{ needs.source-branch-test.outputs.key }} + echo ${{ needs.target-branch-test.outputs.key }} From 5016040653c5402dc25e87894821a717c52e89c8 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 28 Jun 2021 20:38:47 +0800 Subject: [PATCH 007/202] feat: add test coverage yml --- .github/workflows/test-coverage.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index c6b0a355..8cb5a0c8 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -10,7 +10,7 @@ jobs: source-branch-test: runs-on: ubuntu-latest outputs: - matrix: ${{ steps.unit-test.outputs.key }} + matrix: ${{ steps.unit-test.outputs.m }} steps: - name: Checkout uses: actions/checkout@v2 @@ -35,12 +35,12 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done - echo "::set-output name=key::TEST_VALUE", + echo "::set-output name=m::123", target-branch-test: runs-on: ubuntu-latest outputs: - matrix: ${{ steps.unit-test.outputs.key }} + matrix: ${{ steps.unit-test.outputs.m }} steps: - name: Checkout uses: actions/checkout@v2 @@ -70,7 +70,7 @@ jobs: PACKAGE=$(basename $(dirname $(dirname $i))) echo "::set-output name=$PACKAGE::$TOTAL", done - echo "::set-output name=key::TEST_VALUE", + echo "::set-output name=m::123", compare-coverage: needs: [source-branch-test, target-branch-test] @@ -78,6 +78,6 @@ jobs: steps: - name: echo run: | - echo ${{ needs.source-branch-test.outputs.key }} - echo ${{ needs.target-branch-test.outputs.key }} + echo ${{ needs.source-branch-test.outputs.m }} + echo ${{ needs.target-branch-test.outputs.m }} From 0931184c306c0cedb2c6956b286840ba49802ea2 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 28 Jun 2021 20:40:35 +0800 Subject: [PATCH 008/202] feat: add test coverage yml --- .github/workflows/test-coverage.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index 8cb5a0c8..23b7d787 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -78,6 +78,6 @@ jobs: steps: - name: echo run: | - echo ${{ needs.source-branch-test.outputs.m }} - echo ${{ needs.target-branch-test.outputs.m }} + echo ${{ needs.source-branch-test.outputs.matrix }} + echo ${{ needs.target-branch-test.outputs.matrix }} From cc7f251f207972bc2969b49d8e8c7aad8134a063 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 07:43:14 +0800 Subject: [PATCH 009/202] feat: add test coverage yml --- .../{test-coverage.yml => unit-test.yml} | 39 ++++++++++--------- 1 file changed, 21 insertions(+), 18 deletions(-) rename .github/workflows/{test-coverage.yml => unit-test.yml} (59%) diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/unit-test.yml similarity index 59% rename from .github/workflows/test-coverage.yml rename to .github/workflows/unit-test.yml index 23b7d787..8580b484 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/unit-test.yml @@ -1,4 +1,4 @@ -name: Test Coverage +name: Unit Test on: pull_request: @@ -10,7 +10,7 @@ jobs: source-branch-test: runs-on: ubuntu-latest outputs: - matrix: ${{ steps.unit-test.outputs.m }} + coverages: ${{ steps.unit-test.outputs.coverages }} steps: - name: Checkout uses: actions/checkout@v2 @@ -30,17 +30,21 @@ jobs: id: unit-test run: | npx lerna run test:unit + + declare -A coverages for i in $(find . -name coverage-summary.json); do - TOTAL=$(node -p -e "require('$i').total;") - PACKAGE=$(basename $(dirname $(dirname $i))) - echo "::set-output name=$PACKAGE::$TOTAL", + total=$(node -p -e "require('$i').total;") + package=$(basename $(dirname $(dirname $i))) + coverages+=([$package]=$total) done - echo "::set-output name=m::123", + coverages+=(['a']='b') + echo "::set-output name=coverages::$coverages", + shell: bash target-branch-test: runs-on: ubuntu-latest outputs: - matrix: ${{ steps.unit-test.outputs.m }} + coverages: ${{ steps.unit-test.outputs.coverages }} steps: - name: Checkout uses: actions/checkout@v2 @@ -52,11 +56,6 @@ jobs: with: node-version: 14 - - name: Setup .NET Core - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 3.1.x - - name: Setup project run: | npm run setup @@ -65,12 +64,16 @@ jobs: id: unit-test run: | npx lerna run test:unit + + declare -A coverages for i in $(find . -name coverage-summary.json); do - TOTAL=$(node -p -e "require('$i').total;") - PACKAGE=$(basename $(dirname $(dirname $i))) - echo "::set-output name=$PACKAGE::$TOTAL", + total=$(node -p -e "require('$i').total;") + package=$(basename $(dirname $(dirname $i))) + coverages+=([$package]=$total) done - echo "::set-output name=m::123", + coverages+=(['a']='b') + echo "::set-output name=coverages::$coverages", + shell: bash compare-coverage: needs: [source-branch-test, target-branch-test] @@ -78,6 +81,6 @@ jobs: steps: - name: echo run: | - echo ${{ needs.source-branch-test.outputs.matrix }} - echo ${{ needs.target-branch-test.outputs.matrix }} + echo ${{needs.source-branch-test.outputs.coverages }} + echo ${{needs.target-branch-test.outputs.coverages }} From 26fbba71dfd94dfa95f8b5ae46f289283684da82 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 08:23:45 +0800 Subject: [PATCH 010/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 8580b484..16540b70 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -22,12 +22,18 @@ jobs: with: node-version: 14 + - name: Setup jq + shell: bash + run: + sudo apt-get install jq + - name: Setup project run: | npm run setup - name: Unit Test id: unit-test + shell: bash run: | npx lerna run test:unit @@ -39,7 +45,6 @@ jobs: done coverages+=(['a']='b') echo "::set-output name=coverages::$coverages", - shell: bash target-branch-test: runs-on: ubuntu-latest @@ -56,6 +61,11 @@ jobs: with: node-version: 14 + - name: Setup jq + shell: bash + run: + sudo apt-get install jq + - name: Setup project run: | npm run setup From 846f62f650ab7bf8fed8ba115694f73eca997a0e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 08:25:43 +0800 Subject: [PATCH 011/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 16540b70..f25152a5 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -25,7 +25,7 @@ jobs: - name: Setup jq shell: bash run: - sudo apt-get install jq + which jq - name: Setup project run: | @@ -64,7 +64,7 @@ jobs: - name: Setup jq shell: bash run: - sudo apt-get install jq + which jq - name: Setup project run: | From cfa476340a297d1f2f79ade396a7f97468f67e15 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 14:05:36 +0800 Subject: [PATCH 012/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index f25152a5..6460fb2c 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -36,14 +36,11 @@ jobs: shell: bash run: | npx lerna run test:unit - - declare -A coverages + coverages="{}" for i in $(find . -name coverage-summary.json); do - total=$(node -p -e "require('$i').total;") - package=$(basename $(dirname $(dirname $i))) - coverages+=([$package]=$total) - done - coverages+=(['a']='b') + coverages=$(echo $coverages | jq --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') + done + coverages=$(echo $coverages | jq --argjson json '{"foo": "bar"}' '. + {foo: $json}') echo "::set-output name=coverages::$coverages", target-branch-test: @@ -72,18 +69,15 @@ jobs: - name: Unit Test id: unit-test + shell: bash run: | npx lerna run test:unit - - declare -A coverages + coverages="{}" for i in $(find . -name coverage-summary.json); do - total=$(node -p -e "require('$i').total;") - package=$(basename $(dirname $(dirname $i))) - coverages+=([$package]=$total) - done - coverages+=(['a']='b') + coverages=$(echo $coverages | jq --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') + done + coverages=$(echo $coverages | jq --argjson json '{"foo": "bar"}' '. + {foo: $json}') echo "::set-output name=coverages::$coverages", - shell: bash compare-coverage: needs: [source-branch-test, target-branch-test] From 92aef578f9bd5834e9605c5af009e3065f31c9c6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 14:08:46 +0800 Subject: [PATCH 013/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 6460fb2c..f04af1f0 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -38,9 +38,9 @@ jobs: npx lerna run test:unit coverages="{}" for i in $(find . -name coverage-summary.json); do - coverages=$(echo $coverages | jq --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') + coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') done - coverages=$(echo $coverages | jq --argjson json '{"foo": "bar"}' '. + {foo: $json}') + coverages=$(echo $coverages | jq -rc --argjson json '{"foo": "bar"}' '. + {foo: $json}') echo "::set-output name=coverages::$coverages", target-branch-test: @@ -74,9 +74,9 @@ jobs: npx lerna run test:unit coverages="{}" for i in $(find . -name coverage-summary.json); do - coverages=$(echo $coverages | jq --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') + coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') done - coverages=$(echo $coverages | jq --argjson json '{"foo": "bar"}' '. + {foo: $json}') + coverages=$(echo $coverages | jq -rc --argjson json '{"foo": "bar"}' '. + {foo: $json}') echo "::set-output name=coverages::$coverages", compare-coverage: From f5268b855e7ba6f74dde44cf194a2836078ec03b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 15:26:28 +0800 Subject: [PATCH 014/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index f04af1f0..017067b9 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -40,7 +40,6 @@ jobs: for i in $(find . -name coverage-summary.json); do coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') done - coverages=$(echo $coverages | jq -rc --argjson json '{"foo": "bar"}' '. + {foo: $json}') echo "::set-output name=coverages::$coverages", target-branch-test: @@ -85,6 +84,15 @@ jobs: steps: - name: echo run: | - echo ${{needs.source-branch-test.outputs.coverages }} - echo ${{needs.target-branch-test.outputs.coverages }} + mapfile -t source < <(echo ${{ needs.source-branch-test.outputs.coverages }} | jq -r 'keys[]' ) + for i in ${source[@]}; do + if [[ $(echo ${{ needs.target-branch-test.outputs.coverages }} | jq .\"$i\") != "null" ]]; then + targetpct=$(echo ${{ needs.target-branch-test.outputs.coverages }} | jq .\"$i\".lines.pct) + sourcepct=$(echo ${{ needs.source-branch-test.outputs.coverages }} | jq .\"$i\".lines.pct) + if (( $(echo "$targetpct > $sourcepct" | bc -l ) )); then + printf "test coverage decreased: [target]%s, [source]%s\n" $targetpct $sourcepct + exit 1 + fi + fi + done From 649c90b5dfa53ce40b7fbfced41155ac29ce1618 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 15:34:39 +0800 Subject: [PATCH 015/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 017067b9..ea106b9b 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -84,6 +84,8 @@ jobs: steps: - name: echo run: | + echo ${{ needs.source-branch-test.outputs.coverages }} + echo ${{ needs.target-branch-test.outputs.coverages }} mapfile -t source < <(echo ${{ needs.source-branch-test.outputs.coverages }} | jq -r 'keys[]' ) for i in ${source[@]}; do From 5c1b6c5854ce7e1689eea3f3d159c561f7c7d133 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 15:36:22 +0800 Subject: [PATCH 016/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index ea106b9b..4ccaec3e 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -75,7 +75,6 @@ jobs: for i in $(find . -name coverage-summary.json); do coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') done - coverages=$(echo $coverages | jq -rc --argjson json '{"foo": "bar"}' '. + {foo: $json}') echo "::set-output name=coverages::$coverages", compare-coverage: From 72557601765193ddd255b5484bc59602522d73f3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 29 Jun 2021 15:38:53 +0800 Subject: [PATCH 017/202] feat: add test coverage yml --- .github/workflows/unit-test.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 4ccaec3e..948046ea 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -40,7 +40,8 @@ jobs: for i in $(find . -name coverage-summary.json); do coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') done - echo "::set-output name=coverages::$coverages", + echo $coverages + echo "::set-output name=coverages::$coverages" target-branch-test: runs-on: ubuntu-latest @@ -75,7 +76,8 @@ jobs: for i in $(find . -name coverage-summary.json); do coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') done - echo "::set-output name=coverages::$coverages", + echo $coverages + echo "::set-output name=coverages::$coverages" compare-coverage: needs: [source-branch-test, target-branch-test] From cdb156f2a098b733ab2b571f3e656329d5ff78e6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 30 Jun 2021 17:07:00 +0800 Subject: [PATCH 018/202] ci: add unit test coverage checker --- .github/workflows/cd.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 964c28f0..961180dd 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -27,6 +27,9 @@ jobs: if: ${{ github.event_name == 'workflow_dispatch' && ((github.ref != 'refs/heads/dev' && github.ref != 'refs/heads/main') || (github.ref == 'refs/heads/dev' && (!startsWith(github.event.inputs.version, 'pre') || github.event.inputs.preid != 'alpha')) || (github.ref == 'refs/heads/main' && startsWith(github.event.inputs.version, 'pre') && github.event.inputs.preid != 'rc')) }} run: | exit 1 + - name: Checkout branch + run: | + exit 1 - name: Checkout branch uses: actions/checkout@v2 From 0a2dffae7382748d05b4a9fd02775eb7b8d5c304 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 12:53:07 +0800 Subject: [PATCH 019/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 7 +++++++ .github/workflows/e2e-test.yml | 28 ++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/e2e-test.md create mode 100644 .github/workflows/e2e-test.yml diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md new file mode 100644 index 00000000..ffce23fb --- /dev/null +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -0,0 +1,7 @@ +--- +name: E2E Tests failed +title: '' +assignees: '' +--- + +E2E Tests failed, see {{ env.RUN_URL }} diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml new file mode 100644 index 00000000..1d69bdf5 --- /dev/null +++ b/.github/workflows/e2e-test.yml @@ -0,0 +1,28 @@ +name: E2E Test + +on: + workflow_dispatch: + +jobs: + run-e2e-tests: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: List assignees + id: list-assignees + shell: bash + run: | + mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq) + echo "::set-output name=assignees::$assignees" + + - uses: JasonEtco/create-an-issue@v2 + env: + GITHUB_TOKEN: ${{ secrets.CD_PAT }} + RUN_URL: https://github.com/LongOddCode/lerna-test/runs/${{ github.run_id}} + with: + assignees: ${{ steps.list-assignees.outputs.assignees }} + milestone: 1 + update_existing: true + filename: .github/ISSUE_TEMPLATE/e2e-test.md From ba20f95c05bc363515c47c3caa86c3bac54ddbb3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:00:10 +0800 Subject: [PATCH 020/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 1d69bdf5..8e891819 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -10,6 +10,13 @@ jobs: - name: Checkout uses: actions/checkout@v2 + - name: Get current time + uses: 1466587594/get-current-time@v2 + id: current-time + with: + format: YYYYMMDD-HH + utcOffset: "+08:00" + - name: List assignees id: list-assignees shell: bash @@ -23,6 +30,7 @@ jobs: RUN_URL: https://github.com/LongOddCode/lerna-test/runs/${{ github.run_id}} with: assignees: ${{ steps.list-assignees.outputs.assignees }} + title: E2E failed at ${{ steps.current-time.outputs.formattedTime }} milestone: 1 update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md From 6d5fb8ad298c59c8cc6102fc41055a68166f1261 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:01:49 +0800 Subject: [PATCH 021/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 3 +-- .github/workflows/e2e-test.yml | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index ffce23fb..108c475d 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,7 +1,6 @@ --- name: E2E Tests failed -title: '' -assignees: '' +title: {{ env.TITLE }} --- E2E Tests failed, see {{ env.RUN_URL }} diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 8e891819..1e8e0899 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -28,9 +28,9 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/runs/${{ github.run_id}} + TITLE: E2E failed at ${{ steps.current-time.outputs.formattedTime }} with: assignees: ${{ steps.list-assignees.outputs.assignees }} - title: E2E failed at ${{ steps.current-time.outputs.formattedTime }} milestone: 1 update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md From da0d7d33e91afaa21ccaea318a16d064eeeeb017 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:03:35 +0800 Subject: [PATCH 022/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index 108c475d..37f928ad 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,6 +1,5 @@ --- name: E2E Tests failed -title: {{ env.TITLE }} --- - +title: {{ env.TITLE }} E2E Tests failed, see {{ env.RUN_URL }} From 067f4c97900931616f5f679121b6b142ae4c3d40 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:08:38 +0800 Subject: [PATCH 023/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 3 +-- .github/workflows/e2e-test.yml | 1 - 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index 37f928ad..e41310f4 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,5 +1,4 @@ --- -name: E2E Tests failed +name: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} --- -title: {{ env.TITLE }} E2E Tests failed, see {{ env.RUN_URL }} diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 1e8e0899..7bde5b2e 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -28,7 +28,6 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/runs/${{ github.run_id}} - TITLE: E2E failed at ${{ steps.current-time.outputs.formattedTime }} with: assignees: ${{ steps.list-assignees.outputs.assignees }} milestone: 1 From 40df57d01ece425a24205ffd885a95f960c56687 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:11:39 +0800 Subject: [PATCH 024/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index e41310f4..de8ff3ea 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,4 +1,6 @@ --- -name: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} +title: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} +assignees: '' +labels: 'e2e-test' --- E2E Tests failed, see {{ env.RUN_URL }} From 8eb0ab48de83a8d12ef8674044ad4af8db92bea9 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:13:08 +0800 Subject: [PATCH 025/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 7bde5b2e..151a68bc 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -30,6 +30,5 @@ jobs: RUN_URL: https://github.com/LongOddCode/lerna-test/runs/${{ github.run_id}} with: assignees: ${{ steps.list-assignees.outputs.assignees }} - milestone: 1 update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md From 8a9250ceab89e9a96c040bdcdff46cde3f868170 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:26:21 +0800 Subject: [PATCH 026/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 3 +++ .github/workflows/e2e-test.yml | 9 ++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index de8ff3ea..9217639c 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -3,4 +3,7 @@ title: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} assignees: '' labels: 'e2e-test' --- + E2E Tests failed, see {{ env.RUN_URL }} +Log: +{{ env.LOG }} diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 151a68bc..ffa41391 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -17,17 +17,20 @@ jobs: format: YYYYMMDD-HH utcOffset: "+08:00" - - name: List assignees - id: list-assignees + - name: check git log + id: git-log shell: bash run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq) echo "::set-output name=assignees::$assignees" + git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) + echo "::set-output name=log::$git_log" - uses: JasonEtco/create-an-issue@v2 env: GITHUB_TOKEN: ${{ secrets.CD_PAT }} - RUN_URL: https://github.com/LongOddCode/lerna-test/runs/${{ github.run_id}} + RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} + LOG: ${{ steps.list-assignees.outputs.assignees }} with: assignees: ${{ steps.list-assignees.outputs.assignees }} update_existing: true From 63cf7b05fc67e0c4fa5dde1a1934fa891d68013b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:29:18 +0800 Subject: [PATCH 027/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index ffa41391..2615ff54 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -23,7 +23,7 @@ jobs: run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq) echo "::set-output name=assignees::$assignees" - git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) + git_log="" echo "::set-output name=log::$git_log" - uses: JasonEtco/create-an-issue@v2 From 2e1db3ecb557f1416261f58600dd6249ee1135f6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:33:01 +0800 Subject: [PATCH 028/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 2615ff54..f77d11ff 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -9,6 +9,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + fetch-depth: 0 - name: Get current time uses: 1466587594/get-current-time@v2 @@ -23,7 +25,7 @@ jobs: run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq) echo "::set-output name=assignees::$assignees" - git_log="" + git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) echo "::set-output name=log::$git_log" - uses: JasonEtco/create-an-issue@v2 From c63d2cdf1cbe9e1c3a62bff581f360e1462ecf75 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:35:33 +0800 Subject: [PATCH 029/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index f77d11ff..fa34f42a 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -32,8 +32,8 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} - LOG: ${{ steps.list-assignees.outputs.assignees }} + LOG: ${{ steps.git-log.outputs.log }} with: - assignees: ${{ steps.list-assignees.outputs.assignees }} + assignees: ${{ steps.git-log.outputs.assignees }} update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md From e5d2aa526cbe1695a7a48ce32c22f4df173be480 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:41:57 +0800 Subject: [PATCH 030/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index fa34f42a..45eb8cfa 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -25,10 +25,12 @@ jobs: run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq) echo "::set-output name=assignees::$assignees" - git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) + echo $assignees + git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') echo "::set-output name=log::$git_log" - - uses: JasonEtco/create-an-issue@v2 + - name: create issue if tests failed + uses: JasonEtco/create-an-issue@v2 env: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} From 14f857582fc50bcf171a99ecca4ba7b4fc98157d Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:44:04 +0800 Subject: [PATCH 031/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index 9217639c..345462f5 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,6 +1,5 @@ --- title: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} -assignees: '' labels: 'e2e-test' --- From 6c7664751929fffe1caf633c851e59fcafe23450 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:48:30 +0800 Subject: [PATCH 032/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 5 ++++- .github/workflows/e2e-test.yml | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index 345462f5..a686197c 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,8 +1,11 @@ --- title: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} +assignees: {{ evn.ASSIGNEES }} labels: 'e2e-test' --- E2E Tests failed, see {{ env.RUN_URL }} -Log: + +**Log:** + {{ env.LOG }} diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 45eb8cfa..473b39c3 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -23,7 +23,7 @@ jobs: id: git-log shell: bash run: | - mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq) + mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr -d ',') echo "::set-output name=assignees::$assignees" echo $assignees git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') @@ -35,7 +35,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} LOG: ${{ steps.git-log.outputs.log }} + ASSIGNEES: ${{ steps.git-log.outputs.assignees }} with: - assignees: ${{ steps.git-log.outputs.assignees }} update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md From 6cbd55278d85c4798831b4c9d5e8a1c8e9b586f6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 13:51:32 +0800 Subject: [PATCH 033/202] ci: add unit test coverage checker --- .github/ISSUE_TEMPLATE/e2e-test.md | 1 - .github/workflows/e2e-test.yml | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/e2e-test.md b/.github/ISSUE_TEMPLATE/e2e-test.md index a686197c..d90128ad 100644 --- a/.github/ISSUE_TEMPLATE/e2e-test.md +++ b/.github/ISSUE_TEMPLATE/e2e-test.md @@ -1,6 +1,5 @@ --- title: E2E Tests failed at {{ date | date("dddd, MMMM Do YYYY, hA") }} -assignees: {{ evn.ASSIGNEES }} labels: 'e2e-test' --- diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 473b39c3..90e3cdd8 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -25,7 +25,6 @@ jobs: run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr -d ',') echo "::set-output name=assignees::$assignees" - echo $assignees git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') echo "::set-output name=log::$git_log" @@ -35,7 +34,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} LOG: ${{ steps.git-log.outputs.log }} - ASSIGNEES: ${{ steps.git-log.outputs.assignees }} with: + assignees: ${{ steps.git-log.outputs.assignees }} update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md From dd7b010a4831a25bde4f558dd8aae21b0a202e08 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:02:30 +0800 Subject: [PATCH 034/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 90e3cdd8..fab19053 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -23,10 +23,12 @@ jobs: id: git-log shell: bash run: | - mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr -d ',') + mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') echo "::set-output name=assignees::$assignees" + echo $assignees git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') - echo "::set-output name=log::$git_log" + mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) + echo "::set-output name=log::${git_log[@]}" - name: create issue if tests failed uses: JasonEtco/create-an-issue@v2 From b56318a10e85602941bc472e992b025f2b0a4661 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:06:28 +0800 Subject: [PATCH 035/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index fab19053..2e11966b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -24,6 +24,7 @@ jobs: shell: bash run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') + assignees=${assignees::-1} echo "::set-output name=assignees::$assignees" echo $assignees git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') From 917f32379fec729c2ad464632d80a185ee38ecab Mon Sep 17 00:00:00 2001 From: Yiqing Date: Thu, 1 Jul 2021 14:12:31 +0800 Subject: [PATCH 036/202] test --- b.md | 1 + 1 file changed, 1 insertion(+) diff --git a/b.md b/b.md index 6364269c..00180597 100644 --- a/b.md +++ b/b.md @@ -1 +1,2 @@ sadf +1111 \ No newline at end of file From 83db0219f4f8401dd225229fd87757c1308b5879 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:37:43 +0800 Subject: [PATCH 037/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 2e11966b..6f02af4c 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -27,6 +27,7 @@ jobs: assignees=${assignees::-1} echo "::set-output name=assignees::$assignees" echo $assignees + assignees="yiqing-zhao" git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) echo "::set-output name=log::${git_log[@]}" From 3758d91edec35144a7d585fba171b148f2f0029f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:39:13 +0800 Subject: [PATCH 038/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6f02af4c..66e0118e 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -25,9 +25,9 @@ jobs: run: | mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') assignees=${assignees::-1} - echo "::set-output name=assignees::$assignees" echo $assignees assignees="yiqing-zhao" + echo "::set-output name=assignees::$assignees" git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) echo "::set-output name=log::${git_log[@]}" From 47e78920ad6f6bfc4b87ce67e4f2f68daa894ae9 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:40:17 +0800 Subject: [PATCH 039/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 66e0118e..051fb79b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -12,13 +12,6 @@ jobs: with: fetch-depth: 0 - - name: Get current time - uses: 1466587594/get-current-time@v2 - id: current-time - with: - format: YYYYMMDD-HH - utcOffset: "+08:00" - - name: check git log id: git-log shell: bash @@ -26,7 +19,7 @@ jobs: mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') assignees=${assignees::-1} echo $assignees - assignees="yiqing-zhao" + assignees="LongOddCode" echo "::set-output name=assignees::$assignees" git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) From 07793ba52d2c5cbcac070760499bf11969da94c4 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:48:35 +0800 Subject: [PATCH 040/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 051fb79b..796e0432 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -26,12 +26,18 @@ jobs: echo "::set-output name=log::${git_log[@]}" - name: create issue if tests failed + id: create-issue uses: JasonEtco/create-an-issue@v2 env: GITHUB_TOKEN: ${{ secrets.CD_PAT }} RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} LOG: ${{ steps.git-log.outputs.log }} with: - assignees: ${{ steps.git-log.outputs.assignees }} update_existing: true filename: .github/ISSUE_TEMPLATE/e2e-test.md + + - uses: actions-ecosystem/action-add-assignees@v1 + with: + github_token: ${{ secrets.github_token }} + number: ${{ steps.create-issue.outputs.number }} + assignees: ${{ steps.git-log.outputs.assignees }} From 387e042fbc956469298b8f4e990e28ba7b8ef599 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:49:55 +0800 Subject: [PATCH 041/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 796e0432..bd979c46 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -19,7 +19,7 @@ jobs: mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') assignees=${assignees::-1} echo $assignees - assignees="LongOddCode" + assignees="yiqing-zhao" echo "::set-output name=assignees::$assignees" git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) From d92a149508dd7b40ffd6ba1b1b7fd34ceea00923 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 14:51:16 +0800 Subject: [PATCH 042/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index bd979c46..064bee97 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -19,7 +19,6 @@ jobs: mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') assignees=${assignees::-1} echo $assignees - assignees="yiqing-zhao" echo "::set-output name=assignees::$assignees" git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) From 860b3dec58e23666edb9af31e7d8da0efb2b22b6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 1 Jul 2021 15:58:38 +0800 Subject: [PATCH 043/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 064bee97..da39cf8c 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -19,6 +19,7 @@ jobs: mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') assignees=${assignees::-1} echo $assignees + assignees="yiqing" echo "::set-output name=assignees::$assignees" git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) From d79e22a0a15644708e430ec025bb74c54d23c818 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 5 Jul 2021 11:18:15 +0800 Subject: [PATCH 044/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index da39cf8c..677e01b2 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -24,20 +24,23 @@ jobs: git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) echo "::set-output name=log::${git_log[@]}" + - name: fail + run: | + exit 1 - - name: create issue if tests failed + - name: create azure devops issue if tests failed id: create-issue - uses: JasonEtco/create-an-issue@v2 - env: - GITHUB_TOKEN: ${{ secrets.CD_PAT }} - RUN_URL: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }} - LOG: ${{ steps.git-log.outputs.log }} + uses: stefanstranger/azuredevops-bug-action@1.1 + if: failure() with: - update_existing: true - filename: .github/ISSUE_TEMPLATE/e2e-test.md - - - uses: actions-ecosystem/action-add-assignees@v1 - with: - github_token: ${{ secrets.github_token }} - number: ${{ steps.create-issue.outputs.number }} - assignees: ${{ steps.git-log.outputs.assignees }} + OrganizationName: "msazure" + PAT: ${{ secrets.ADO_PAT }} + ProjectName: "Microsoft Teams Extensibility" + AreaPath: "Microsoft Teams Extensibility\\Teams Extensibility E2E Team" + IterationPath: "Microsoft Teams Extensibility" + GithubToken: ${{ secrets.CD_PAT }} + WorkflowFileName: "e2e-test.yml" + env: + PAT: ${{ secrets.ADO_PAT }} + GithubToken: ${{ secrets.CD_PAT }} + From a331694e852d3ac11302894daf3c9f47fce12e20 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 5 Jul 2021 11:25:46 +0800 Subject: [PATCH 045/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 677e01b2..2b93c69f 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -34,13 +34,13 @@ jobs: if: failure() with: OrganizationName: "msazure" - PAT: ${{ secrets.ADO_PAT }} + PAT: "ADO_PAT" ProjectName: "Microsoft Teams Extensibility" AreaPath: "Microsoft Teams Extensibility\\Teams Extensibility E2E Team" IterationPath: "Microsoft Teams Extensibility" - GithubToken: ${{ secrets.CD_PAT }} + GithubToken: "GITHUB_PAT" WorkflowFileName: "e2e-test.yml" env: - PAT: ${{ secrets.ADO_PAT }} - GithubToken: ${{ secrets.CD_PAT }} + ADO_PAT: ${{ secrets.ADO_PAT }} + GITHUB_PAT: ${{ secrets.CD_PAT }} From ff95ccaea05b8c551436df8c351db38dbf05576c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 5 Jul 2021 19:47:47 +0800 Subject: [PATCH 046/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 2b93c69f..b95a97aa 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -5,7 +5,7 @@ on: jobs: run-e2e-tests: - runs-on: ubuntu-latest + runs-on: windows-latest steps: - name: Checkout uses: actions/checkout@v2 @@ -24,23 +24,19 @@ jobs: git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) echo "::set-output name=log::${git_log[@]}" + - name: fail run: | exit 1 - - name: create azure devops issue if tests failed - id: create-issue - uses: stefanstranger/azuredevops-bug-action@1.1 + - name: setup azure cli if: failure() - with: - OrganizationName: "msazure" - PAT: "ADO_PAT" - ProjectName: "Microsoft Teams Extensibility" - AreaPath: "Microsoft Teams Extensibility\\Teams Extensibility E2E Team" - IterationPath: "Microsoft Teams Extensibility" - GithubToken: "GITHUB_PAT" - WorkflowFileName: "e2e-test.yml" - env: - ADO_PAT: ${{ secrets.ADO_PAT }} - GITHUB_PAT: ${{ secrets.CD_PAT }} - + run: | + Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi + + $env:AZURE_DEVOPS_EXT_PAT = ${{ secrets.ADO_PAT }} + + az boards work-item create --title="long's test" --type=Bug --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" --assigned-to=haolong@microsoft.com --iteration="Microsoft Teams Extensibility" --organization="https://msazure.visualstudio.com/" --project="Microsoft Teams Extensibility" --description="

The Workflow $WorkflowName in $Repository failed" + + + From 961085b38d7b4741cfb0dc3a6875aaf79e7612d2 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 5 Jul 2021 19:54:51 +0800 Subject: [PATCH 047/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b95a97aa..3eed7408 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -31,10 +31,11 @@ jobs: - name: setup azure cli if: failure() + shell: pwsh run: | Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi - $env:AZURE_DEVOPS_EXT_PAT = ${{ secrets.ADO_PAT }} + $env:AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az boards work-item create --title="long's test" --type=Bug --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" --assigned-to=haolong@microsoft.com --iteration="Microsoft Teams Extensibility" --organization="https://msazure.visualstudio.com/" --project="Microsoft Teams Extensibility" --description="

The Workflow $WorkflowName in $Repository failed" From 41c66c4510c104f3ea56e7c9eab9ad9960e6a9dc Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 5 Jul 2021 19:57:25 +0800 Subject: [PATCH 048/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 3eed7408..4e48d297 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -35,7 +35,7 @@ jobs: run: | Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi - $env:AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} + $env:AZURE_DEVOPS_EXT_PAT='${{ secrets.ADO_PAT }}' az boards work-item create --title="long's test" --type=Bug --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" --assigned-to=haolong@microsoft.com --iteration="Microsoft Teams Extensibility" --organization="https://msazure.visualstudio.com/" --project="Microsoft Teams Extensibility" --description="

The Workflow $WorkflowName in $Repository failed" From 27b502bee94decc75ec1bbaef92562c9b101e4eb Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:22:46 +0800 Subject: [PATCH 049/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 4e48d297..b152bcef 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -29,15 +29,15 @@ jobs: run: | exit 1 - - name: setup azure cli + - name: Azure Login + uses: azure/login@v1 + with: + creds: ${{ secrets.ADO_PAT }} + + - name: Azure CLI script if: failure() - shell: pwsh - run: | - Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi - - $env:AZURE_DEVOPS_EXT_PAT='${{ secrets.ADO_PAT }}' - - az boards work-item create --title="long's test" --type=Bug --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" --assigned-to=haolong@microsoft.com --iteration="Microsoft Teams Extensibility" --organization="https://msazure.visualstudio.com/" --project="Microsoft Teams Extensibility" --description="

The Workflow $WorkflowName in $Repository failed" - - - + uses: azure/CLI@v1 + with: + azcliversion: 2.25.0 + inlineScript: | + az boards work-item create --title="long's test" --type=Bug --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" --assigned-to=haolong@microsoft.com --iteration="Microsoft Teams Extensibility" --organization="https://msazure.visualstudio.com/" --project="Microsoft Teams Extensibility" --description="

The Workflow $WorkflowName in $Repository failed" From d8e8eb3a0ba8e15e5866a91390aee3c68b04284a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:28:26 +0800 Subject: [PATCH 050/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b152bcef..a01c3c01 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -5,7 +5,7 @@ on: jobs: run-e2e-tests: - runs-on: windows-latest + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 @@ -40,4 +40,11 @@ jobs: with: azcliversion: 2.25.0 inlineScript: | - az boards work-item create --title="long's test" --type=Bug --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" --assigned-to=haolong@microsoft.com --iteration="Microsoft Teams Extensibility" --organization="https://msazure.visualstudio.com/" --project="Microsoft Teams Extensibility" --description="

The Workflow $WorkflowName in $Repository failed" + az boards work-item create --title="long's test" \ + --type=Bug \ + --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ + --assigned-to="haolong@microsoft.com" \ + --iteration="Microsoft Teams Extensibility" \ + --organization="https://msazure.visualstudio.com/" \ + --project="Microsoft Teams Extensibility" \ + --description="

The Workflow $WorkflowName in $Repository failed" From 50323e3b1acf34e3ceefcd694327c30d109281b6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:30:07 +0800 Subject: [PATCH 051/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index a01c3c01..f17b8d07 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -30,6 +30,7 @@ jobs: exit 1 - name: Azure Login + if: failure() uses: azure/login@v1 with: creds: ${{ secrets.ADO_PAT }} From 61a9022cfc5752324b4522ca66f6975d95c6abc3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:33:39 +0800 Subject: [PATCH 052/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index f17b8d07..bc51f513 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -29,18 +29,13 @@ jobs: run: | exit 1 - - name: Azure Login - if: failure() - uses: azure/login@v1 - with: - creds: ${{ secrets.ADO_PAT }} - - name: Azure CLI script if: failure() uses: azure/CLI@v1 with: azcliversion: 2.25.0 inlineScript: | + export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az boards work-item create --title="long's test" \ --type=Bug \ --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ From c649bdd21182dbe486b4b1f5f74ed6d3b04ab929 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:35:28 +0800 Subject: [PATCH 053/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index bc51f513..1bae2498 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,6 +36,7 @@ jobs: azcliversion: 2.25.0 inlineScript: | export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} + az config set extension.use_dynamic_install=yes_without_prompt az boards work-item create --title="long's test" \ --type=Bug \ --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ From 2603dc944e2272b7b95cea887d53aa45bd074d6f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:45:22 +0800 Subject: [PATCH 054/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 1bae2498..6169e368 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -44,4 +44,4 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="

The Workflow $WorkflowName in $Repository failed" + --description="The Workflow failed" From 4c50f879bda729fbbaedba7c15c93af84c280c1c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:50:49 +0800 Subject: [PATCH 055/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6169e368..2250a9d7 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: azcliversion: 2.25.0 inlineScript: | export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} - az config set extension.use_dynamic_install=yes_without_prompt + az extension add --name azure-devops az boards work-item create --title="long's test" \ --type=Bug \ --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ From 520593660c5b92f56c6a6beaa774905c7f357fdc Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 10:57:16 +0800 Subject: [PATCH 056/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 2250a9d7..f32a7a28 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -38,10 +38,10 @@ jobs: export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops az boards work-item create --title="long's test" \ - --type=Bug \ - --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ - --assigned-to="haolong@microsoft.com" \ - --iteration="Microsoft Teams Extensibility" \ - --organization="https://msazure.visualstudio.com/" \ - --project="Microsoft Teams Extensibility" \ - --description="The Workflow failed" + --type=Bug \ + --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ + --assigned-to="haolong@microsoft.com" \ + --iteration="Microsoft Teams Extensibility" \ + --organization="https://msazure.visualstudio.com/" \ + --project="Microsoft Teams Extensibility" \ + --description="Microsoft Teams Extensibility" From d3f40cf2555abfce3e2af13dbace42351fbba50c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 13:44:59 +0800 Subject: [PATCH 057/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index f32a7a28..cbd8aff1 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -4,8 +4,22 @@ on: workflow_dispatch: jobs: - run-e2e-tests: + run-tests: + runs-on: windows-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: fail + run: | + exit 1 + + create-ado-issue: runs-on: ubuntu-latest + needs: run-tests + if: failure() steps: - name: Checkout uses: actions/checkout@v2 @@ -16,20 +30,11 @@ jobs: id: git-log shell: bash run: | - mapfile -t assignees< <(git log --pretty="%an" e2e..HEAD | tee | sort | uniq | tr '\n' ',') - assignees=${assignees::-1} - echo $assignees - assignees="yiqing" - echo "::set-output name=assignees::$assignees" - git_log=$(git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee | tr -d '\n') - mapfile -t git_log< <( git log --pretty="%h %ad - %s (%an)" e2e..HEAD | tee) + git_log=$(git log --pretty="

%h %ad - %s (%ae) 🍻 
" e2e..HEAD | tee | tr -d '\n') + echo $git_log echo "::set-output name=log::${git_log[@]}" - - name: fail - run: | - exit 1 - - - name: Azure CLI script + - name: create azure devops issue if test is failed if: failure() uses: azure/CLI@v1 with: @@ -44,4 +49,4 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="Microsoft Teams Extensibility" + --description="${{ steps.git-log.outputs.log }}" From 36395b827e6d15c34f874e28435c8dff608aca2e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 13:46:37 +0800 Subject: [PATCH 058/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index cbd8aff1..a1a1e59a 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -7,14 +7,9 @@ jobs: run-tests: runs-on: windows-latest steps: - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: fail run: | - exit 1 + exit 0 create-ado-issue: runs-on: ubuntu-latest @@ -35,7 +30,6 @@ jobs: echo "::set-output name=log::${git_log[@]}" - name: create azure devops issue if test is failed - if: failure() uses: azure/CLI@v1 with: azcliversion: 2.25.0 From 6de85e454ed210f4858b9fc04f6efbeec805ada0 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 13:47:16 +0800 Subject: [PATCH 059/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index a1a1e59a..8694f9aa 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -9,7 +9,7 @@ jobs: steps: - name: fail run: | - exit 0 + exit 1 create-ado-issue: runs-on: ubuntu-latest From e36a23d6ea814cc0ef737abf0b969f82c03d3ff8 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 14:22:58 +0800 Subject: [PATCH 060/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 8694f9aa..93fa15dd 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -25,7 +25,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty="
%h %ad - %s (%ae) 🍻 
" e2e..HEAD | tee | tr -d '\n') + git_log=$(git log --pretty="%h %ad %s (%ae) 🍻" e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" @@ -43,4 +43,4 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="${{ steps.git-log.outputs.log }}" + --description="${{ steps.git-log.outputs.log }}
" From 73681e7dc884925e2af40689dc47dab2bfab9705 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 14:36:12 +0800 Subject: [PATCH 061/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 93fa15dd..410c607b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -25,7 +25,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty="%h %ad %s (%ae) 🍻" e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s (%ae) 🍻 " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" @@ -43,4 +43,4 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="${{ steps.git-log.outputs.log }}
" + --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" From 7278f7ce03c754462e537be6304768f0148beb00 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 15:10:21 +0800 Subject: [PATCH 062/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 410c607b..cd85573f 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -34,6 +34,24 @@ jobs: with: azcliversion: 2.25.0 inlineScript: | + read -r -d '' description << EOM + + + +
+ + + + + + + + ${{ steps.git-log.outputs.log }} +
HashTimeMessageauthor
+
+ + +EOM export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops az boards work-item create --title="long's test" \ @@ -43,4 +61,4 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" + --description=$description From a7f3ade6b7d88958ac30af866062d0d7b84347f1 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 15:14:46 +0800 Subject: [PATCH 063/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 36 +++++++++++++++++----------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index cd85573f..97788ec9 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -34,24 +34,24 @@ jobs: with: azcliversion: 2.25.0 inlineScript: | - read -r -d '' description << EOM - - - -
- - - - - - - - ${{ steps.git-log.outputs.log }} -
HashTimeMessageauthor
-
- - -EOM + read -r -d '' description << EOM + + + +
+ + + + + + + + ${{ steps.git-log.outputs.log }} +
HashTimeMessageauthor
+
+ + + EOM export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops az boards work-item create --title="long's test" \ From 6a454c9a69a02bc095e9f441c3cb4984b8f71ca5 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 15:19:56 +0800 Subject: [PATCH 064/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 97788ec9..410c607b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -34,24 +34,6 @@ jobs: with: azcliversion: 2.25.0 inlineScript: | - read -r -d '' description << EOM - - - -
- - - - - - - - ${{ steps.git-log.outputs.log }} -
HashTimeMessageauthor
-
- - - EOM export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops az boards work-item create --title="long's test" \ @@ -61,4 +43,4 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description=$description + --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" From 221e299fd56260eed7eb1f71d6c89a4f57a455f6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 15:24:40 +0800 Subject: [PATCH 065/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 410c607b..16e53446 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -34,13 +34,31 @@ jobs: with: azcliversion: 2.25.0 inlineScript: | + read -r -d '' description << EOM + + + +
+ + + + + + + + ${{ steps.git-log.outputs.log }} +
HashTimeMessageauthor
+
+ + + EOM export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops - az boards work-item create --title="long's test" \ + az boards work-item create --title="E2E tests are failed" \ --type=Bug \ --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ --assigned-to="haolong@microsoft.com" \ --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" + --description="$description" From bc635941580126e78c3875726d4a4a879005d7d2 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 15:46:09 +0800 Subject: [PATCH 066/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 16e53446..e3007c19 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -34,31 +34,14 @@ jobs: with: azcliversion: 2.25.0 inlineScript: | - read -r -d '' description << EOM - - - -
- - - - - - - - ${{ steps.git-log.outputs.log }} -
HashTimeMessageauthor
-
- - - EOM export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops - az boards work-item create --title="E2E tests are failed" \ + az boards work-item create --title="E2E tests failed" \ --type=Bug \ --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ --assigned-to="haolong@microsoft.com" \ --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --description="$description" + --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ + --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" From 6dc0f864cc535851ace885f7e1304e588aeee16a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 15:53:06 +0800 Subject: [PATCH 067/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index e3007c19..75a8e145 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -25,7 +25,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s (%ae) 🍻 " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s %ae 🍻 " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" @@ -43,5 +43,5 @@ jobs: --iteration="Microsoft Teams Extensibility" \ --organization="https://msazure.visualstudio.com/" \ --project="Microsoft Teams Extensibility" \ - --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ + --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" From 75c7fa1c2269a3930ab589472e411ea9b70c0d2f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 16:12:55 +0800 Subject: [PATCH 068/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 75a8e145..3df2860a 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -9,7 +9,13 @@ jobs: steps: - name: fail run: | - exit 1 + exit 0 + + - name: tag + if: success() + run: | + git tag -f e2e HEAD + git push origin -f e2e create-ado-issue: runs-on: ubuntu-latest From 8a1450c836a901654112ad1aef6b58288e2d5996 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 6 Jul 2021 16:15:54 +0800 Subject: [PATCH 069/202] ci: add unit test coverage checker --- .github/workflows/e2e-test.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 3df2860a..6f4cb569 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -7,6 +7,11 @@ jobs: run-tests: runs-on: windows-latest steps: + - name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: fail run: | exit 0 From 6184188785c9eabc3a3b19d94d3493201c295109 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 09:30:56 +0800 Subject: [PATCH 070/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6f4cb569..2b5a9ab0 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: - name: fail run: | - exit 0 + exit 1 - name: tag if: success() @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s %ae 🍻 " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s zhiyu.you@microsoft.com ; " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From f6cb05132719e2028a324233698d757136941e05 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 09:34:39 +0800 Subject: [PATCH 071/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 2b5a9ab0..265fc8cb 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s zhiyu.you@microsoft.com ; " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s zhiyu.you@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From 8ae96c3e518c4ad506a1e361d75d9f435045591d Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 09:58:12 +0800 Subject: [PATCH 072/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 265fc8cb..dcd66790 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s zhiyu.you@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" @@ -49,10 +49,10 @@ jobs: az extension add --name azure-devops az boards work-item create --title="E2E tests failed" \ --type=Bug \ - --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ + --area="demo" \ --assigned-to="haolong@microsoft.com" \ - --iteration="Microsoft Teams Extensibility" \ - --organization="https://msazure.visualstudio.com/" \ - --project="Microsoft Teams Extensibility" \ + --iteration="demo" \ + --organization="https://dev.azure.com/haolong0010/" \ + --project="demo" \ --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" From e43b59c9270801fe251590eb5f45709d9b50abdf Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 10:03:59 +0800 Subject: [PATCH 073/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index dcd66790..26a9d23e 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -48,11 +48,10 @@ jobs: export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops az boards work-item create --title="E2E tests failed" \ - --type=Bug \ + --type=Task \ --area="demo" \ --assigned-to="haolong@microsoft.com" \ --iteration="demo" \ --organization="https://dev.azure.com/haolong0010/" \ --project="demo" \ - --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" From 591af50a608f856deeeef32b934d6d78166e4b29 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 10:19:31 +0800 Subject: [PATCH 074/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 26a9d23e..1115c9c4 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From cf1f755afdf9c266b3c84dfff52a66a74c2efbad Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 10:22:50 +0800 Subject: [PATCH 075/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 1115c9c4..bad81ae9 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From 3b618633f36177a75e01829a7eaed7d4163ca843 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 10:26:33 +0800 Subject: [PATCH 076/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index bad81ae9..1115c9c4 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From c2b68375c8608ab2d7312baeaa7cdc433b74267f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 10:28:45 +0800 Subject: [PATCH 077/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 1115c9c4..266dc0de 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s haolong " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From c280cc699bb404830eb55b90094144947e97b99b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 10:38:38 +0800 Subject: [PATCH 078/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 266dc0de..6b3fcf5f 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s haolong " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s %ae " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From 6838d7020680312740ee7dbfd894443c3d4a1a2a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 12:55:06 +0800 Subject: [PATCH 079/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6b3fcf5f..9201c1a3 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s %ae " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s huihuiwu@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From 1927f519a862147527858af3453c2266784a0664 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 13:00:14 +0800 Subject: [PATCH 080/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 9201c1a3..816ac318 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s huihuiwu@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s t-yiqingzhao@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From 6d4436afe32390515a516b9bc2210f598a18f7ea Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 8 Jul 2021 15:15:08 +0800 Subject: [PATCH 081/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 816ac318..b2f1392b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,7 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s t-yiqingzhao@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') + git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') echo $git_log echo "::set-output name=log::${git_log[@]}" From 6fd8ab497bfdb9d3f602bf660f982c67138bef41 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 9 Jul 2021 11:09:01 +0800 Subject: [PATCH 082/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 34 +++++++++++++++++++++++++++++----- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b2f1392b..96fd8c2b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,9 +36,33 @@ jobs: id: git-log shell: bash run: | - git_log=$(git log --pretty=" %h %ad %s haolong@microsoft.com " e2e..HEAD | grep -v "noreply" | tee | tr -d '\n') - echo $git_log - echo "::set-output name=log::${git_log[@]}" + + declare -A email_uid + for i in $(git log --pretty="%ae" e2e..HEAD | sort | uniq); + do + if [ ${email_uid[$i]+exist} ]; then + continue + fi + + resp=$(curl -u :rwcvvakek7docvdp4c6y4nijhwbockokapr7a6mzxxdrg52zcpqa "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") + + uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) + email_uid[$i]=$uid + done + echo ${email_uid[@]} + + gitlog=$(git log --pretty=format:'{"commit":"%h","subject":"%s","email":"%aE","date":"%aD"},' e2e..HEAD | grep -v "noreply") + gitlog=[${gitlog::-1}] + + description=" Commit Date Subject Author " + for row in $(echo $gitlog | jq -r '.[] | @base64'); do + _jq() { + echo ${row} | base64 --decode | jq -r ${1} + } + description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " + done + echo $description + echo "::set-output name=description::$description" - name: create azure devops issue if test is failed uses: azure/CLI@v1 @@ -46,7 +70,7 @@ jobs: azcliversion: 2.25.0 inlineScript: | export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} - az extension add --name azure-devops + az config set extension.use_dynamic_install=yes_without_prompt az boards work-item create --title="E2E tests failed" \ --type=Task \ --area="demo" \ @@ -54,4 +78,4 @@ jobs: --iteration="demo" \ --organization="https://dev.azure.com/haolong0010/" \ --project="demo" \ - --description="${{ steps.git-log.outputs.log }}
Hash Time Message author
" + --description="${{ steps.git-log.outputs.description }}
" From 15658010bda547f7b58a78b73f72ce87253d8a4b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 9 Jul 2021 11:13:13 +0800 Subject: [PATCH 083/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 96fd8c2b..9fe0bd1e 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -44,8 +44,9 @@ jobs: continue fi - resp=$(curl -u :rwcvvakek7docvdp4c6y4nijhwbockokapr7a6mzxxdrg52zcpqa "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") + resp=$(curl -u :${{ secrets.ADO_PAT }} "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") + echo $resp uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) email_uid[$i]=$uid done @@ -70,7 +71,7 @@ jobs: azcliversion: 2.25.0 inlineScript: | export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} - az config set extension.use_dynamic_install=yes_without_prompt + az extension add --name azure-devops az boards work-item create --title="E2E tests failed" \ --type=Task \ --area="demo" \ From e85a745a1e4eec7a03523506245d5c826ad0b563 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 9 Jul 2021 11:18:22 +0800 Subject: [PATCH 084/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 9fe0bd1e..b801062d 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -44,7 +44,8 @@ jobs: continue fi - resp=$(curl -u :${{ secrets.ADO_PAT }} "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") + url="https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0" + resp=$(curl -u :${{ secrets.ADO_PAT }} $url) echo $resp uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) @@ -73,10 +74,11 @@ jobs: export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} az extension add --name azure-devops az boards work-item create --title="E2E tests failed" \ - --type=Task \ - --area="demo" \ + --type=Bug \ + --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ --assigned-to="haolong@microsoft.com" \ - --iteration="demo" \ - --organization="https://dev.azure.com/haolong0010/" \ - --project="demo" \ + --iteration="Microsoft Teams Extensibility" \ + --organization="https://msazure.visualstudio.com/" \ + --project="Microsoft Teams Extensibility" \ + --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ --description="${{ steps.git-log.outputs.description }}
" From 3469e6e12db61a00ad9a2a699aaba0bec10dc78d Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 9 Jul 2021 11:24:25 +0800 Subject: [PATCH 085/202] test: send notifications if e2e tests failed --- .github/workflows/e2e-test.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b801062d..5a899808 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -36,7 +36,6 @@ jobs: id: git-log shell: bash run: | - declare -A email_uid for i in $(git log --pretty="%ae" e2e..HEAD | sort | uniq); do @@ -44,9 +43,8 @@ jobs: continue fi - url="https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0" - resp=$(curl -u :${{ secrets.ADO_PAT }} $url) - + resp=$(curl -u :${{ secrets.ADO_PAT }} "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") + echo $url echo $resp uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) email_uid[$i]=$uid From 38ba843116fe67d5eb38402b35d3ef45775d15f1 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 11:29:32 +0800 Subject: [PATCH 086/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 67 ++-------------------------------- 1 file changed, 3 insertions(+), 64 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 5a899808..dc761795 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -7,76 +7,15 @@ jobs: run-tests: runs-on: windows-latest steps: - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: fail run: | exit 1 - - name: tag - if: success() - run: | - git tag -f e2e HEAD - git push origin -f e2e - create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: failure() + if: failure() && (startsWith(github.ref, "refs/heads/main") || startsWith(github.ref, "refs/heads/dev")) steps: - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: check git log - id: git-log - shell: bash + - name: fail run: | - declare -A email_uid - for i in $(git log --pretty="%ae" e2e..HEAD | sort | uniq); - do - if [ ${email_uid[$i]+exist} ]; then - continue - fi - - resp=$(curl -u :${{ secrets.ADO_PAT }} "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") - echo $url - echo $resp - uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) - email_uid[$i]=$uid - done - echo ${email_uid[@]} - - gitlog=$(git log --pretty=format:'{"commit":"%h","subject":"%s","email":"%aE","date":"%aD"},' e2e..HEAD | grep -v "noreply") - gitlog=[${gitlog::-1}] - - description=" Commit Date Subject Author " - for row in $(echo $gitlog | jq -r '.[] | @base64'); do - _jq() { - echo ${row} | base64 --decode | jq -r ${1} - } - description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " - done - echo $description - echo "::set-output name=description::$description" - - - name: create azure devops issue if test is failed - uses: azure/CLI@v1 - with: - azcliversion: 2.25.0 - inlineScript: | - export AZURE_DEVOPS_EXT_PAT=${{ secrets.ADO_PAT }} - az extension add --name azure-devops - az boards work-item create --title="E2E tests failed" \ - --type=Bug \ - --area="Microsoft Teams Extensibility\Teams Extensibility E2E Team" \ - --assigned-to="haolong@microsoft.com" \ - --iteration="Microsoft Teams Extensibility" \ - --organization="https://msazure.visualstudio.com/" \ - --project="Microsoft Teams Extensibility" \ - --fields="Microsoft.VSTS.TCM.ReproSteps=https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}" \ - --description="${{ steps.git-log.outputs.description }}
" + exit 0 From 45f52d6bf95eeb319ee678f44073639468d0f587 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:39:55 +0800 Subject: [PATCH 087/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index dc761795..6337c169 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: failure() && (startsWith(github.ref, "refs/heads/main") || startsWith(github.ref, "refs/heads/dev")) + if: failure() && (startsWith(${{ github.ref }}, "refs/heads/main") || startsWith(${{ github.ref}}, "refs/heads/dev")) steps: - name: fail run: | From 68dcc32ab996326f5ac4252e33c57ac6669d3e21 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:42:22 +0800 Subject: [PATCH 088/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6337c169..36a77f06 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: failure() && (startsWith(${{ github.ref }}, "refs/heads/main") || startsWith(${{ github.ref}}, "refs/heads/dev")) + if: failure() && (${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' }}) steps: - name: fail run: | From 371b4a3de2d76bb839667ec944adc03fc490d97f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:45:32 +0800 Subject: [PATCH 089/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 36a77f06..c7af2380 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: failure() && (${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' }}) + if: failure() && ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' }} steps: - name: fail run: | From f9d6b3572987e52e5d07669c376015026f398519 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:46:46 +0800 Subject: [PATCH 090/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index c7af2380..b22221b3 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: failure() && ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' }} + if: ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' }} steps: - name: fail run: | From 078b184e5fae652c356c84fb93b7ca7e50543416 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:48:36 +0800 Subject: [PATCH 091/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b22221b3..6cc9bcf9 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,8 +14,9 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev' }} + if: failure() steps: - name: fail run: | + echo ${{ github.ref }} exit 0 From 02f59e85c3a2931fb914a1e03dcbe20ed88951fe Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:51:30 +0800 Subject: [PATCH 092/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6cc9bcf9..9fb10778 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: failure() + if: ${{ failure() && (github.ref == "refs/heads/dev" || github.ref == "refs/heads/main") }} steps: - name: fail run: | From e734354555e39feb1a352b6af3c9d5b96e3e4723 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:56:49 +0800 Subject: [PATCH 093/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 9fb10778..6e600914 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: ${{ failure() && (github.ref == "refs/heads/dev" || github.ref == "refs/heads/main") }} + if: ${{ failure() && github.ref == "refs/heads/dev" }} steps: - name: fail run: | From 6f8d0bb2c7f1d3e096eef476e685d5ee560aa7e3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:58:18 +0800 Subject: [PATCH 094/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6e600914..15a04d50 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,7 +14,8 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: ${{ failure() && github.ref == "refs/heads/dev" }} + if: ${{ failure() && github.ref == 'refs/heads/dev' }} + steps: - name: fail run: | From 8287094c32e86bccda5607c8e8a9d0172deaec85 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 30 Jul 2021 13:59:29 +0800 Subject: [PATCH 095/202] feat: sync test result to test plan --- .github/workflows/e2e-test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 15a04d50..b4736e66 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -14,8 +14,7 @@ jobs: create-ado-issue: runs-on: ubuntu-latest needs: run-tests - if: ${{ failure() && github.ref == 'refs/heads/dev' }} - + if: ${{ failure() && (github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/main') }} steps: - name: fail run: | From 6b66ebd945026549ad25bb38cc1b435fd904166b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 14:29:29 +0800 Subject: [PATCH 096/202] fix: install necessary tools on linux --- package-lock.json | 379 +- package.json | 20 +- packages/p1/package-lock.json | 6466 ++++++++++++++++++++++++++++++++- packages/p1/package.json | 48 +- 4 files changed, 6841 insertions(+), 72 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9a2945a0..3af743df 100644 --- a/package-lock.json +++ b/package-lock.json @@ -81,6 +81,19 @@ } } }, + "@cspotcode/source-map-consumer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", + "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==" + }, + "@cspotcode/source-map-support": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.6.1.tgz", + "integrity": "sha512-DX3Z+T5dt1ockmPdobJS/FAsQPW4V4SrWEhD2iYQT2Cb2tQsiMnYxrcUH9By/Z3B+v0S5LMBkQtV/XOBbpLEOg==", + "requires": { + "@cspotcode/source-map-consumer": "0.8.0" + } + }, "@lerna/add": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@lerna/add/-/add-4.0.0.tgz", @@ -1476,6 +1489,26 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, + "@tsconfig/node10": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz", + "integrity": "sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==" + }, + "@tsconfig/node12": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", + "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==" + }, + "@tsconfig/node14": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz", + "integrity": "sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==" + }, + "@tsconfig/node16": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz", + "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==" + }, "@types/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", @@ -1516,6 +1549,16 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, + "acorn": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz", + "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==" + }, + "acorn-walk": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.1.tgz", + "integrity": "sha512-FbJdceMlPHEAWJOILDk1fXD8lnTlEIWFkqtfk+MvmL5q/qlHfN7GEHcsFZWt/Tea9jRNPWUZG4G976nqAAmU9w==" + }, "add-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", @@ -1584,8 +1627,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { "version": "4.3.0", @@ -1599,19 +1641,22 @@ "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "are-we-there-yet": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" } }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + }, "array-differ": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", @@ -1693,6 +1738,11 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -1708,6 +1758,28 @@ "integrity": "sha512-/6FKxSTWoJdbsLDF8tdIjaRiFXiE6UHsEHE3OPI/cwPURCVi1ukP0gmLn7XWEiFk5TcwQjjY5PWsU+j+tgXgmw==", "dev": true }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1727,6 +1799,15 @@ "fill-range": "^7.0.1" } }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -1890,8 +1971,7 @@ "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, "ci-info": { "version": "2.0.0", @@ -1994,8 +2074,7 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "color-convert": { "version": "2.0.1", @@ -2096,8 +2175,7 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, "conventional-changelog-angular": { "version": "5.0.12", @@ -2222,8 +2300,7 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "cosmiconfig": { "version": "7.0.0", @@ -2238,6 +2315,11 @@ "yaml": "^1.10.0" } }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -2324,12 +2406,25 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, + "decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "requires": { + "mimic-response": "^2.0.0" + } + }, "dedent": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", "dev": true }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, "defaults": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", @@ -2357,8 +2452,7 @@ "delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, "depd": { "version": "1.1.2", @@ -2378,6 +2472,11 @@ "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", "dev": true }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" + }, "dezalgo": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", @@ -2388,6 +2487,11 @@ "wrappy": "1" } }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" + }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -2438,6 +2542,14 @@ "iconv-lite": "^0.6.2" } }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, "env-paths": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", @@ -2535,6 +2647,11 @@ "strip-final-newline": "^2.0.0" } }, + "expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -2655,6 +2772,11 @@ "mime-types": "^2.1.12" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, "fs-extra": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", @@ -2692,7 +2814,6 @@ "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, "requires": { "aproba": "^1.0.3", "console-control-strings": "^1.0.0", @@ -3018,6 +3139,11 @@ "ini": "^1.3.2" } }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -3126,8 +3252,7 @@ "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" }, "hosted-git-info": { "version": "4.0.2", @@ -3201,6 +3326,11 @@ "safer-buffer": ">= 2.1.2 < 3.0.0" } }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, "ignore": { "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", @@ -3275,14 +3405,12 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "init-package-json": { "version": "2.0.3", @@ -3460,7 +3588,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3583,8 +3710,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isexe": { "version": "2.0.0", @@ -3674,6 +3800,15 @@ "verror": "1.10.0" } }, + "keytar": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/keytar/-/keytar-7.7.0.tgz", + "integrity": "sha512-YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A==", + "requires": { + "node-addon-api": "^3.0.0", + "prebuild-install": "^6.0.0" + } + }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -3863,6 +3998,11 @@ } } }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, "make-fetch-happen": { "version": "8.0.14", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz", @@ -4048,6 +4188,11 @@ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" + }, "min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -4066,8 +4211,7 @@ "minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "minimist-options": { "version": "4.1.0", @@ -4258,6 +4402,11 @@ "minimist": "^1.2.5" } }, + "mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, "mkdirp-infer-owner": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz", @@ -4314,12 +4463,37 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, + "napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, "neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, + "node-abi": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz", + "integrity": "sha512-g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg==", + "requires": { + "semver": "^5.4.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==" + }, "node-fetch": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", @@ -4554,7 +4728,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, "requires": { "are-we-there-yet": "~1.1.2", "console-control-strings": "~1.1.0", @@ -4565,8 +4738,7 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "oauth-sign": { "version": "0.9.0", @@ -4577,8 +4749,7 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-inspect": { "version": "1.10.2", @@ -4619,7 +4790,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } @@ -4957,11 +5127,30 @@ "find-up": "^4.0.0" } }, + "prebuild-install": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", + "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", + "requires": { + "detect-libc": "^1.0.3", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^2.21.0", + "npmlog": "^4.0.1", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^3.0.3", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + } + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "promise-inflight": { "version": "1.0.1", @@ -5006,6 +5195,15 @@ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -5048,6 +5246,17 @@ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, "read": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", @@ -5217,7 +5426,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5385,8 +5593,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safer-buffer": { "version": "2.1.2", @@ -5406,8 +5613,7 @@ "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "shallow-clone": { "version": "3.0.1", @@ -5458,8 +5664,22 @@ "signal-exit": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz", + "integrity": "sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==", + "requires": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } }, "slash": { "version": "3.0.0", @@ -5631,7 +5851,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -5662,7 +5881,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -5671,7 +5889,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -5697,6 +5914,11 @@ "min-indent": "^1.0.0" } }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, "strong-log-transformer": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz", @@ -5740,6 +5962,41 @@ } } }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", @@ -5859,6 +6116,25 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, + "ts-node": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.2.1.tgz", + "integrity": "sha512-hCnyOyuGmD5wHleOQX6NIjJtYVIO8bPP8F2acWkB4W06wdlkgyvJtubO/I9NkI88hCFECbsEgoLc0VNkYmcSfw==", + "requires": { + "@cspotcode/source-map-support": "0.6.1", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "yn": "3.1.1" + } + }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -5869,7 +6145,6 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -5980,8 +6255,7 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "util-promisify": { "version": "2.1.0", @@ -6080,7 +6354,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, "requires": { "string-width": "^1.0.2 || 2" } @@ -6139,8 +6412,7 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "write-file-atomic": { "version": "2.4.3", @@ -6328,6 +6600,11 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" } } } diff --git a/package.json b/package.json index b2444105..72c2f771 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,12 @@ { - "name": "root", - "private": false, - "devDependencies": { - "lerna": "^4.0.0" - }, - "scripts": { - "setup": "npm install --no-package-lock && npm run bootstrap", - "bootstrap": "lerna bootstrap", - "version": "lerna bootstrap --ignore-scripts -- --package-lock-only --no-audit && git add packages/*/package-lock.json" - } + "name": "root", + "private": false, + "devDependencies": { + "lerna": "^4.0.0" + }, + "scripts": { + "setup": "npm install --no-package-lock && npm run bootstrap", + "bootstrap": "lerna bootstrap", + "version": "lerna bootstrap --ignore-scripts -- --package-lock-only --no-audit && git add packages/*/package-lock.json" + } } diff --git a/packages/p1/package-lock.json b/packages/p1/package-lock.json index a91bf966..7dcb5460 100644 --- a/packages/p1/package-lock.json +++ b/packages/p1/package-lock.json @@ -1,5 +1,6469 @@ { "name": "lerna-test-pkg1", "version": "0.16.0-alpha.1", - "lockfileVersion": 1 + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@apidevtools/json-schema-ref-parser": { + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz", + "integrity": "sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w==", + "requires": { + "@jsdevtools/ono": "^7.1.3", + "@types/json-schema": "^7.0.6", + "call-me-maybe": "^1.0.1", + "js-yaml": "^4.1.0" + } + }, + "@apidevtools/openapi-schemas": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@apidevtools/openapi-schemas/-/openapi-schemas-2.1.0.tgz", + "integrity": "sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==" + }, + "@apidevtools/swagger-methods": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz", + "integrity": "sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==" + }, + "@apidevtools/swagger-parser": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/@apidevtools/swagger-parser/-/swagger-parser-10.0.3.tgz", + "integrity": "sha512-sNiLY51vZOmSPFZA5TF35KZ2HbgYklQnTSDnkghamzLb3EkNtcQnrBQEj5AOCxHpTtXpqMCRM1CrmV2rG6nw4g==", + "requires": { + "@apidevtools/json-schema-ref-parser": "^9.0.6", + "@apidevtools/openapi-schemas": "^2.0.4", + "@apidevtools/swagger-methods": "^3.0.2", + "@jsdevtools/ono": "^7.1.3", + "call-me-maybe": "^1.0.1", + "z-schema": "^5.0.1" + } + }, + "@azure/abort-controller": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.4.tgz", + "integrity": "sha512-lNUmDRVGpanCsiUN3NWxFTdwmdFI53xwhkTFfHDGTYk46ca7Ind3nanJc+U6Zj9Tv+9nTCWRBscWEW1DyKOpTw==", + "requires": { + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/arm-apimanagement": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@azure/arm-apimanagement/-/arm-apimanagement-6.0.0.tgz", + "integrity": "sha512-yl4nWQ1Jy0byMl+IxGjwk+0PhypS3cYUUInABxeOcTGbI2x2e8wVDfsksHC3GCtd8i6PLsyUU3yVtNN0mQfQ9A==", + "requires": { + "@azure/ms-rest-azure-js": "^2.0.1", + "@azure/ms-rest-js": "^2.0.4", + "tslib": "^1.10.0" + } + }, + "@azure/arm-appservice": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@azure/arm-appservice/-/arm-appservice-7.0.0.tgz", + "integrity": "sha512-6nJUx1nDWCqllK79Pb0VIhtCXooQxWKcQDbZWS/MBRRjzqc6sRPEtvUaX0UgrO3RPhDn4+LlJbQu0q2mgVwDEA==", + "requires": { + "@azure/ms-rest-azure-js": "^2.0.1", + "@azure/ms-rest-js": "^2.0.4", + "tslib": "^1.10.0" + } + }, + "@azure/arm-botservice": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@azure/arm-botservice/-/arm-botservice-2.1.0.tgz", + "integrity": "sha512-9XblhPsSJfDcx7mCT/FduGEZWIQyqhjT04S6dSbGq+cczDDm6Rceb5zsAIBOIlmef4FYf1MG3nKiInIhwTTdhg==", + "requires": { + "@azure/core-auth": "^1.1.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "tslib": "^1.10.0" + } + }, + "@azure/arm-resources": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@azure/arm-resources/-/arm-resources-4.2.1.tgz", + "integrity": "sha512-WsjhWCxFNFodlWMaGxhcSzeMps09PfDWcrubRZT+dPwIl8Ee3MuuM2fvKrAwM9ixhMrXhX+GP6KAAPdpPg09qg==", + "requires": { + "@azure/core-auth": "^1.1.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "tslib": "^1.10.0" + } + }, + "@azure/arm-sql": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@azure/arm-sql/-/arm-sql-7.1.1.tgz", + "integrity": "sha512-BVFp1TnypTqt0YWw+i9h9l9wemsI6JbR+nFXComy9XtdL6qyfFQ60zzkyyI53RSEZIIDo/6WkVaK/qN5Pewr0w==", + "requires": { + "@azure/core-auth": "^1.1.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "tslib": "^1.10.0" + } + }, + "@azure/arm-storage": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/@azure/arm-storage/-/arm-storage-15.3.0.tgz", + "integrity": "sha512-djN2tmEzvC4lNEYrk3PAXkf5ZcebGDqPZSh/cYKOleumD4eop5EpMX8d5LcSO/9EcSfPpCzutRg0AleMaPQ9Mg==", + "requires": { + "@azure/ms-rest-azure-js": "^2.0.1", + "@azure/ms-rest-js": "^2.0.4", + "tslib": "^1.10.0" + } + }, + "@azure/arm-subscriptions": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@azure/arm-subscriptions/-/arm-subscriptions-3.1.1.tgz", + "integrity": "sha512-SM1lV9I8LOZWYf7vQtN4zuORo3ID1T7oQh3X8ugGT4AUAp+gfmm58ZFTV6YK0gMMZV8211Vlf1kXu6sYA8D0Wg==", + "requires": { + "@azure/core-auth": "^1.1.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "tslib": "^1.10.0" + } + }, + "@azure/core-asynciterator-polyfill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.0.tgz", + "integrity": "sha512-kmv8CGrPfN9SwMwrkiBK9VTQYxdFQEGe0BmQk+M8io56P9KNzpAxcWE/1fxJj7uouwN4kXF0BHW8DNlgx+wtCg==" + }, + "@azure/core-auth": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.3.2.tgz", + "integrity": "sha512-7CU6DmCHIZp5ZPiZ9r3J17lTKMmYsm/zGvNkjArQwPkrLlZ1TZ+EUYfGgh2X31OLMVAQCTJZW4cXHJi02EbJnA==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "tslib": "^2.2.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/core-client": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.3.0.tgz", + "integrity": "sha512-4ricu3aM1TQP2vglBcvFX8KgbWVe+7hl1jVAw6BzIGG4CTAvO3ygDS6th3O+zFwGN9xkgXFHa7Tp3u9za8ciIA==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-rest-pipeline": "^1.1.0", + "@azure/core-tracing": "1.0.0-preview.13", + "tslib": "^2.2.0" + }, + "dependencies": { + "@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "requires": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + } + }, + "@opentelemetry/api": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", + "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/core-http": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-1.2.6.tgz", + "integrity": "sha512-odtH7UMKtekc5YQ86xg9GlVHNXR6pq2JgJ5FBo7/jbOjNGdBqcrIVrZx2bevXVJz/uUTSx6vUf62gzTXTfqYSQ==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.11", + "@azure/logger": "^1.0.0", + "@types/node-fetch": "^2.5.0", + "@types/tunnel": "^0.0.1", + "form-data": "^3.0.0", + "node-fetch": "^2.6.0", + "process": "^0.11.10", + "tough-cookie": "^4.0.0", + "tslib": "^2.2.0", + "tunnel": "^0.0.6", + "uuid": "^8.3.0", + "xml2js": "^0.4.19" + }, + "dependencies": { + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/core-lro": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.0.tgz", + "integrity": "sha512-TJo95eNT1dwYOPCb0m1C2zyxVlHuRRkKGeg9TKu8XMF2qh4v6c1weD63r9RVIrLdHdnSqS0n6PTXBpWoB8NqMw==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "dependencies": { + "@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "requires": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + } + }, + "@opentelemetry/api": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", + "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/core-paging": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.1.3.tgz", + "integrity": "sha512-his7Ah40ThEYORSpIAwuh6B8wkGwO/zG7gqVtmSE4WAJ46e36zUDXTKReUCLBDc6HmjjApQQxxcRFy5FruG79A==", + "requires": { + "@azure/core-asynciterator-polyfill": "^1.0.0" + } + }, + "@azure/core-rest-pipeline": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.2.0.tgz", + "integrity": "sha512-oOd8feRcuoSUwflPNLPO8x6v+m4TcJ9DmazlouuG9d64zJJEwaU757ovpRss9zaL8cggUAdm84C4EbtZ/ltMAw==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "form-data": "^3.0.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "tslib": "^2.2.0", + "uuid": "^8.3.0" + }, + "dependencies": { + "@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "requires": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + } + }, + "@opentelemetry/api": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", + "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/core-tracing": { + "version": "1.0.0-preview.11", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.11.tgz", + "integrity": "sha512-frF0pJc9HTmKncVokhBxCqipjbql02DThQ1ZJ9wLi7SDMLdPAFyDI5xZNzX5guLz+/DtPkY+SGK2li9FIXqshQ==", + "requires": { + "@opencensus/web-types": "0.0.7", + "@opentelemetry/api": "1.0.0-rc.0", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/identity": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-1.5.1.tgz", + "integrity": "sha512-ENYdcHT72PwEb+aiL2G6WIXxdm8mO0LNLZVPXaSRZYNsIshre72MF1H/rnJvcVGX9uVDVClSbNPxXwY5MJPLjw==", + "requires": { + "@azure/core-auth": "^1.3.0", + "@azure/core-client": "^1.0.0", + "@azure/core-rest-pipeline": "^1.1.0", + "@azure/core-tracing": "1.0.0-preview.12", + "@azure/logger": "^1.0.0", + "@azure/msal-node": "1.0.0-beta.6", + "@types/stoppable": "^1.1.0", + "axios": "^0.21.1", + "events": "^3.0.0", + "jws": "^4.0.0", + "keytar": "^7.3.0", + "msal": "^1.0.2", + "open": "^7.0.0", + "qs": "^6.7.0", + "stoppable": "^1.1.0", + "tslib": "^2.0.0", + "uuid": "^8.3.0" + }, + "dependencies": { + "@azure/core-tracing": { + "version": "1.0.0-preview.12", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.12.tgz", + "integrity": "sha512-nvo2Wc4EKZGN6eFu9n3U7OXmASmL8VxoPIH7xaD6OlQqi44bouF0YIi9ID5rEsKLiAU59IYx6M297nqWVMWPDg==", + "requires": { + "@opentelemetry/api": "^1.0.0", + "tslib": "^2.2.0" + } + }, + "@azure/msal-node": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.0.0-beta.6.tgz", + "integrity": "sha512-ZQI11Uz1j0HJohb9JZLRD8z0moVcPks1AFW4Q/Gcl67+QvH4aKEJti7fjCcipEEZYb/qzLSO8U6IZgPYytsiJQ==", + "requires": { + "@azure/msal-common": "^4.0.0", + "axios": "^0.21.1", + "jsonwebtoken": "^8.5.1", + "uuid": "^8.3.0" + } + }, + "@opentelemetry/api": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", + "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" + }, + "jwa": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz", + "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==", + "requires": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "jws": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", + "requires": { + "jwa": "^2.0.0", + "safe-buffer": "^5.0.1" + } + }, + "open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/logger": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.2.tgz", + "integrity": "sha512-YZNjNV0vL3nN2nedmcjQBcpCTo3oqceXmgiQtEm6fLpucjRZyQKAQruhCmCpRlB1iykqKJJ/Y8CDmT5rIE6IJw==", + "requires": { + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@azure/ms-rest-azure-env": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-azure-env/-/ms-rest-azure-env-2.0.0.tgz", + "integrity": "sha512-dG76W7ElfLi+fbTjnZVGj+M9e0BIEJmRxU6fHaUQ12bZBe8EJKYb2GV50YWNaP2uJiVQ5+7nXEVj1VN1UQtaEw==" + }, + "@azure/ms-rest-azure-js": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-azure-js/-/ms-rest-azure-js-2.1.0.tgz", + "integrity": "sha512-CjZjB8apvXl5h97Ck6SbeeCmU0sk56YPozPtTyGudPp1RGoHXNjFNtoOvwOG76EdpmMpxbK10DqcygI16Lu60Q==", + "requires": { + "@azure/core-auth": "^1.1.4", + "@azure/ms-rest-js": "^2.2.0", + "tslib": "^1.10.0" + } + }, + "@azure/ms-rest-js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-js/-/ms-rest-js-2.6.0.tgz", + "integrity": "sha512-4C5FCtvEzWudblB+h92/TYYPiq7tuElX8icVYToxOdggnYqeec4Se14mjse5miInKtZahiFHdl8lZA/jziEc5g==", + "requires": { + "@azure/core-auth": "^1.1.4", + "abort-controller": "^3.0.0", + "form-data": "^2.5.0", + "node-fetch": "^2.6.0", + "tough-cookie": "^3.0.1", + "tslib": "^1.10.0", + "tunnel": "0.0.6", + "uuid": "^8.3.2", + "xml2js": "^0.4.19" + } + }, + "@azure/ms-rest-nodeauth": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-nodeauth/-/ms-rest-nodeauth-3.0.10.tgz", + "integrity": "sha512-oel7ibYlredh2wo7XwNYMx4jWlbMkIzCC8t8VpdhsAWDJVNSSce+DYj5jjZn1oED+QsCytVM2B7/QTuLN1/yDw==", + "requires": { + "@azure/ms-rest-azure-env": "^2.0.0", + "@azure/ms-rest-js": "^2.0.4", + "adal-node": "^0.2.2" + } + }, + "@azure/msal-common": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.5.1.tgz", + "integrity": "sha512-/i5dXM+QAtO+6atYd5oHGBAx48EGSISkXNXViheliOQe+SIFMDo3gSq3lL54W0suOSAsVPws3XnTaIHlla0PIQ==", + "requires": { + "debug": "^4.1.1" + } + }, + "@azure/msal-node": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.3.0.tgz", + "integrity": "sha512-BM5S5sMB6N0aPux4l85NnRNO/5/G+w3oT+JtLbMDBsc/aUxLVYoWMmxVECrYzlQRm5QZzFWRo04Rv5AnAF7z2g==", + "requires": { + "@azure/msal-common": "^4.5.0", + "axios": "^0.21.1", + "jsonwebtoken": "^8.5.1", + "uuid": "^8.3.0" + } + }, + "@azure/storage-blob": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.7.0.tgz", + "integrity": "sha512-7YEWEx03Us/YBxthzBv788R7jokwpCD5KcIsvtE5xRaijNX9o80KXpabhEwLR9DD9nmt/AlU/c1R+aXydgCduQ==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-http": "^2.0.0", + "@azure/core-lro": "^2.0.0", + "@azure/core-paging": "^1.1.1", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "events": "^3.0.0", + "tslib": "^2.0.0" + }, + "dependencies": { + "@azure/core-http": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-2.1.0.tgz", + "integrity": "sha512-Pzj87F4b1RH4PFDUpxkZqCdDZ35c5AjDCt3lsTn3i7yCtrXasEm6PVJYhjwsvYYmtgM7aDZIXexcu/qLLf7kyA==", + "requires": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "@types/node-fetch": "^2.5.0", + "@types/tunnel": "^0.0.1", + "form-data": "^3.0.0", + "node-fetch": "^2.6.0", + "process": "^0.11.10", + "tough-cookie": "^4.0.0", + "tslib": "^2.2.0", + "tunnel": "^0.0.6", + "uuid": "^8.3.0", + "xml2js": "^0.4.19" + } + }, + "@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "requires": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + } + }, + "@opentelemetry/api": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", + "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", + "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", + "dev": true + }, + "@babel/highlight": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.14.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@dbpiper/timer": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@dbpiper/timer/-/timer-1.0.0-beta.2.tgz", + "integrity": "sha512-K4pnT5wpSZ8qKpA9sb23EiAigcA0lfRoXCEdXplD9nmPyNhE5zjbRcWf9+1QY6UbCUgRc6ks/0Yj8t0+9f9nMw==", + "requires": { + "@types/lodash": "^4.14.123", + "lodash": "^4.17.11", + "moment": "^2.24.0" + } + }, + "@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "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 + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "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 + } + } + }, + "@feathersjs/hooks": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@feathersjs/hooks/-/hooks-0.6.5.tgz", + "integrity": "sha512-WtcEoG/imdHRvC3vofGi/OcgH+cjHHhO0AfEeTlsnrKLjVKKBXV6aoIrB2nHZPpE7iW5sA7AZMR6bPD8ytxN+w==" + }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, + "@js-joda/core": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-3.2.0.tgz", + "integrity": "sha512-PMqgJ0sw5B7FKb2d5bWYIoxjri+QlW/Pys7+Rw82jSH0QN3rB05jZ/VrrsUdh1w4+i2kw9JOejXGq/KhDOX7Kg==" + }, + "@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "@microsoft/teamsfx-api": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@microsoft/teamsfx-api/-/teamsfx-api-0.4.0.tgz", + "integrity": "sha512-Ir6tbMZApHcMIjKC3CCBwqy6fbCa0VQZgNzG81H0wS5cw1vPZx2qLxt1XCK63CPJqlBWJmAhm60Nknr6P7p3yw==", + "requires": { + "@azure/core-http": "^1.2.2", + "@azure/ms-rest-nodeauth": "^3.0.7", + "@types/fs-extra": "^9.0.10", + "axios": "^0.21.1", + "chai": "^4.3.4", + "jsonschema": "^1.4.0", + "neverthrow": "^3.2.0" + } + }, + "@microsoft/teamsfx-cli": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@microsoft/teamsfx-cli/-/teamsfx-cli-0.3.2.tgz", + "integrity": "sha512-GfSH/aLV2u4ui5MFKBJZ2WgbqpQmKh/8XsHvwwMCJUJ1PrzAXBmdNhp2guoHoAAk0x56YvqL64ISo9OQ/7mbGQ==", + "requires": { + "@azure/arm-apimanagement": "^6.0.0", + "@azure/arm-resources": "^4.0.0", + "@azure/arm-sql": "^7.0.2", + "@azure/arm-subscriptions": "^3.0.0", + "@azure/core-http": "^1.2.0", + "@azure/identity": "^1.3.0", + "@azure/ms-rest-nodeauth": "^3.0.6", + "@microsoft/teamsfx-api": "^0.4.0", + "@microsoft/teamsfx-core": "^0.4.2", + "adm-zip": "^0.5.5", + "applicationinsights": "^1.8.10", + "async-mutex": "^0.3.1", + "axios": "^0.21.1", + "azure-arm-resource": "^3.1.1-preview", + "chalk": "^4.1.0", + "dotenv": "^8.2.0", + "express": "^4.17.1", + "fs-extra": "^9.1.0", + "glob": "^7.1.6", + "inquirer": "^8.0.0", + "keytar": "^7.7.0", + "md5": "^2.3.0", + "ms-rest-azure": "^3.0.0", + "node-machine-id": "^1.1.12", + "open": "^8.2.1", + "tedious": "^9.2.1", + "tree-kill": "^1.2.2", + "underscore": "^1.12.1", + "yargs": "^16.2.0" + } + }, + "@microsoft/teamsfx-core": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@microsoft/teamsfx-core/-/teamsfx-core-0.4.2.tgz", + "integrity": "sha512-EttLRmE9KVy8H44gfmvIGsg+orHfxkwm4NCdAFnBaSG0osDRhqgW4B+Aqsik9KsGCIoMWmBJ8UB4O6/cdbPHNQ==", + "requires": { + "@apidevtools/swagger-parser": "^10.0.2", + "@azure/arm-apimanagement": "^6.0.0", + "@azure/arm-appservice": "^7.0.0", + "@azure/arm-botservice": "^2.0.0", + "@azure/arm-resources": "^4.0.0", + "@azure/arm-sql": "^7.0.2", + "@azure/arm-storage": "^15.2.0", + "@azure/arm-subscriptions": "^3.0.0", + "@azure/ms-rest-nodeauth": "^3.0.6", + "@azure/msal-node": "^1.0.0", + "@azure/storage-blob": "^12.3.0", + "@dbpiper/timer": "1.0.0-beta.2", + "@feathersjs/hooks": "^0.6.5", + "@microsoft/teamsfx-api": "^0.4.0", + "@types/jwt-decode": "3.1.0", + "@types/proper-lockfile": "^4.1.1", + "adm-zip": "^0.5.5", + "ajv": "^7.1.1", + "axios": "^0.21.1", + "cryptr": "^6.0.2", + "dotenv": "^8.2.0", + "express": "^4.17.1", + "fs-extra": "^9.1.0", + "glob": "^7.1.6", + "got": "^11.8.2", + "http-close": "^1.0.0", + "ignore": "^5.1.8", + "install": "^0.13.0", + "js-base64": "^3.6.0", + "js-yaml": "^4.0.0", + "jsonschema": "^1.4.0", + "jwt-decode": "3.1.2", + "klaw": "^3.0.0", + "md5": "^2.3.0", + "mime": "^2.5.2", + "mustache": "^4.2.0", + "node-forge": "^0.10.0", + "node-ts-uuid": "^1.0.8", + "openapi-types": "^7.2.3", + "proper-lockfile": "^4.1.2", + "reflect-metadata": "^0.1.13", + "semver": "^7.3.4", + "sudo-prompt": "^9.2.1", + "tedious": "^9.2.1", + "tslib": "^2.1.0", + "typedi": "^0.10.0", + "url-parse": "^1.5.1", + "uuid": "^8.3.2", + "validator": "^13.1.1", + "zip-a-folder": "0.0.12" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "@mochajs/json-file-reporter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@mochajs/json-file-reporter/-/json-file-reporter-1.3.0.tgz", + "integrity": "sha512-evIxpeP8EOixo/T2xh5xYEIzwbEHk8YNJfRUm1KeTs8F3bMjgNn2580Ogze9yisXNlTxu88JiJJYzXjjg5NdLA==", + "dev": true + }, + "@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==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@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==", + "dev": true + }, + "@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==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@opencensus/web-types": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@opencensus/web-types/-/web-types-0.0.7.tgz", + "integrity": "sha512-xB+w7ZDAu3YBzqH44rCmG9/RlrOmFuDPt/bpf17eJr8eZSrLt7nc7LnWdxM9Mmoj/YKMHpxRg28txu3TcpiL+g==" + }, + "@opentelemetry/api": { + "version": "1.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.0-rc.0.tgz", + "integrity": "sha512-iXKByCMfrlO5S6Oh97BuM56tM2cIBB0XsL/vWF/AtJrJEKx4MC/Xdu0xDsGXMGcNWpqF7ujMsjjnp0+UHBwnDQ==" + }, + "@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" + }, + "@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "requires": { + "defer-to-connect": "^2.0.0" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" + }, + "@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", + "requires": { + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + } + } + }, + "@types/chai": { + "version": "4.2.21", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.21.tgz", + "integrity": "sha512-yd+9qKmJxm496BOV9CMNaey8TWsikaZOwMRwPHQIjcOJM9oV+fi9ZMNw3JsVnbEEbo2gRTDnGEBv8pjyn67hNg==", + "dev": true + }, + "@types/fs-extra": { + "version": "9.0.12", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.12.tgz", + "integrity": "sha512-I+bsBr67CurCGnSenZZ7v94gd3tc3+Aj2taxMT4yu4ABLuOgOjeFxX3dokG24ztSRg5tnT00sL8BszO7gSMoIw==", + "requires": { + "@types/node": "*" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + } + } + }, + "@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" + }, + "@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==" + }, + "@types/jwt-decode": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/jwt-decode/-/jwt-decode-3.1.0.tgz", + "integrity": "sha512-tthwik7TKkou3mVnBnvVuHnHElbjtdbM63pdBCbZTirCt3WAdM73Y79mOri7+ljsS99ZVwUFZHLMxJuJnv/z1w==", + "requires": { + "jwt-decode": "*" + } + }, + "@types/keytar": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@types/keytar/-/keytar-4.4.2.tgz", + "integrity": "sha512-xtQcDj9ruGnMwvSu1E2BH4SFa5Dv2PvSPd0CKEBLN5hEj/v5YpXJY+B6hAfuKIbvEomD7vJTc/P1s1xPNh2kRw==", + "dev": true, + "requires": { + "keytar": "*" + } + }, + "@types/keyv": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz", + "integrity": "sha512-/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==", + "requires": { + "@types/node": "*" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + } + } + }, + "@types/lodash": { + "version": "4.14.172", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.172.tgz", + "integrity": "sha512-/BHF5HAx3em7/KkzVKm3LrsD6HZAXuXO1AJZQ3cRRBZj4oHZDviWPYu0aEplAqDFNHZPW6d3G7KN+ONcCCC7pw==" + }, + "@types/mocha": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz", + "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==", + "dev": true + }, + "@types/node": { + "version": "14.17.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.11.tgz", + "integrity": "sha512-n2OQ+0Bz6WEsUjrvcHD1xZ8K+Kgo4cn9/w94s1bJS690QMUWfJPW/m7CCb7gPkA1fcYwL2UpjXP/rq/Eo41m6w==", + "dev": true + }, + "@types/node-fetch": { + "version": "2.5.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.12.tgz", + "integrity": "sha512-MKgC4dlq4kKNa/mYrwpKfzQMB5X3ee5U6fSprkKpToBqBmX4nFZL9cW5jl6sWn+xpRJ7ypWh2yyqqr8UUCstSw==", + "requires": { + "@types/node": "*", + "form-data": "^3.0.0" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } + } + }, + "@types/proper-lockfile": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@types/proper-lockfile/-/proper-lockfile-4.1.2.tgz", + "integrity": "sha512-kd4LMvcnpYkspDcp7rmXKedn8iJSCoa331zRRamUp5oanKt/CefbEGPQP7G89enz7sKD4bvsr8mHSsC8j5WOvA==", + "requires": { + "@types/retry": "*" + } + }, + "@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "requires": { + "@types/node": "*" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + } + } + }, + "@types/retry": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", + "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==" + }, + "@types/selenium-webdriver": { + "version": "3.0.19", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.19.tgz", + "integrity": "sha512-OFUilxQg+rWL2FMxtmIgCkUDlJB6pskkpvmew7yeXfzzsOBb5rc+y2+DjHm+r3r1ZPPcJefK3DveNSYWGiy68g==", + "dev": true + }, + "@types/stoppable": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/stoppable/-/stoppable-1.1.1.tgz", + "integrity": "sha512-b8N+fCADRIYYrGZOcmOR8ZNBOqhktWTB/bMUl5LvGtT201QKJZOOH5UsFyI3qtteM6ZAJbJqZoBcLqqxKIwjhw==", + "requires": { + "@types/node": "*" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + } + } + }, + "@types/tunnel": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.1.tgz", + "integrity": "sha512-AOqu6bQu5MSWwYvehMXLukFHnupHrpZ8nvgae5Ggie9UwzDR1CCwoXgSSWNZJuyOlCdfdsWMA5F2LlmvyoTv8A==", + "requires": { + "@types/node": "*" + }, + "dependencies": { + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + } + } + }, + "@types/uuid": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==", + "dev": true + }, + "@types/yauzl": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==", + "dev": true, + "optional": true, + "requires": { + "@types/node": "*" + } + }, + "@typescript-eslint/eslint-plugin": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.3.tgz", + "integrity": "sha512-tBgfA3K/3TsZY46ROGvoRxQr1wBkclbVqRQep97MjVHJzcRBURRY3sNFqLk0/Xr//BY5hM9H2p/kp+6qim85SA==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "4.29.3", + "@typescript-eslint/scope-manager": "4.29.3", + "debug": "^4.3.1", + "functional-red-black-tree": "^1.0.1", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@typescript-eslint/experimental-utils": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.3.tgz", + "integrity": "sha512-ffIvbytTVWz+3keg+Sy94FG1QeOvmV9dP2YSdLFHw/ieLXWCa3U1TYu8IRCOpMv2/SPS8XqhM1+ou1YHsdzKrg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.29.3", + "@typescript-eslint/types": "4.29.3", + "@typescript-eslint/typescript-estree": "4.29.3", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + } + }, + "@typescript-eslint/parser": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.3.tgz", + "integrity": "sha512-jrHOV5g2u8ROghmspKoW7pN8T/qUzk0+DITun0MELptvngtMrwUJ1tv5zMI04CYVEUsSrN4jV7AKSv+I0y0EfQ==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "4.29.3", + "@typescript-eslint/types": "4.29.3", + "@typescript-eslint/typescript-estree": "4.29.3", + "debug": "^4.3.1" + } + }, + "@typescript-eslint/scope-manager": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.3.tgz", + "integrity": "sha512-x+w8BLXO7iWPkG5mEy9bA1iFRnk36p/goVlYobVWHyDw69YmaH9q6eA+Fgl7kYHmFvWlebUTUfhtIg4zbbl8PA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.29.3", + "@typescript-eslint/visitor-keys": "4.29.3" + } + }, + "@typescript-eslint/types": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.3.tgz", + "integrity": "sha512-s1eV1lKNgoIYLAl1JUba8NhULmf+jOmmeFO1G5MN/RBCyyzg4TIOfIOICVNC06lor+Xmy4FypIIhFiJXOknhIg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.3.tgz", + "integrity": "sha512-45oQJA0bxna4O5TMwz55/TpgjX1YrAPOI/rb6kPgmdnemRZx/dB0rsx+Ku8jpDvqTxcE1C/qEbVHbS3h0hflag==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.29.3", + "@typescript-eslint/visitor-keys": "4.29.3", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.29.3", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.3.tgz", + "integrity": "sha512-MGGfJvXT4asUTeVs0Q2m+sY63UsfnA+C/FDgBKV3itLBmM9H0u+URcneePtkd0at1YELmZK6HSolCqM4Fzs6yA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.29.3", + "eslint-visitor-keys": "^2.0.0" + } + }, + "@ungap/promise-all-settled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", + "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", + "dev": true + }, + "abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "requires": { + "event-target-shim": "^5.0.0" + } + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true + }, + "adal-node": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.2.2.tgz", + "integrity": "sha512-luzQ9cXOjUlZoCiWeYbyR+nHwScSrPTDTbOInFphQs/PnwNz6wAIVkbsHEXtvYBnjLctByTTI8ccfpGX100oRQ==", + "requires": { + "@types/node": "^8.0.47", + "async": "^2.6.3", + "axios": "^0.21.1", + "date-utils": "*", + "jws": "3.x.x", + "underscore": ">= 1.3.1", + "uuid": "^3.1.0", + "xmldom": ">= 0.1.x", + "xpath.js": "~1.1.0" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "adm-zip": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.5.tgz", + "integrity": "sha512-IWwXKnCbirdbyXSfUDvCCrmYrOHANRZcc8NcRrvTlIApdl7PwE9oGcsYvNeJPAVY1M+70b4PxXGKIf8AEuiQ6w==" + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + } + }, + "ajv": { + "version": "7.2.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.4.tgz", + "integrity": "sha512-nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "applicationinsights": { + "version": "1.8.10", + "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-1.8.10.tgz", + "integrity": "sha512-ZLDA7mShh4mP2Z/HlFolmvhBPX1LfnbIWXrselyYVA7EKjHhri1fZzpu2EiWAmfbRxNBY6fRjoPJWbx5giKy4A==", + "requires": { + "cls-hooked": "^4.2.2", + "continuation-local-storage": "^3.2.1", + "diagnostic-channel": "0.3.1", + "diagnostic-channel-publishers": "0.4.4" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true + }, + "archiver": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-3.1.1.tgz", + "integrity": "sha512-5Hxxcig7gw5Jod/8Gq0OneVgLYET+oNHcxgWItq4TbhOzRLKNAFUb9edAftiMKXvXfCB0vbGrJdZDNq0dWMsxg==", + "requires": { + "archiver-utils": "^2.1.0", + "async": "^2.6.3", + "buffer-crc32": "^0.2.1", + "glob": "^7.1.4", + "readable-stream": "^3.4.0", + "tar-stream": "^2.1.0", + "zip-stream": "^2.1.2" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "archiver-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz", + "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", + "requires": { + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" + } + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==" + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "requires": { + "lodash": "^4.17.14" + } + }, + "async-hook-jl": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/async-hook-jl/-/async-hook-jl-1.7.6.tgz", + "integrity": "sha512-gFaHkFfSxTjvoxDMYqDuGHlcRyUuamF8s+ZTtJdDzqjws4mCt7v0vuV79/E2Wr2/riMQgtG4/yUtXWs1gZ7JMg==", + "requires": { + "stack-chain": "^1.3.7" + } + }, + "async-listener": { + "version": "0.6.10", + "resolved": "https://registry.npmjs.org/async-listener/-/async-listener-0.6.10.tgz", + "integrity": "sha512-gpuo6xOyF4D5DE5WvyqZdPA3NGhiT6Qf07l7DCB0wwDEsLvDIbCr6j9S5aj5Ch96dLace5tXVzWBZkxU/c5ohw==", + "requires": { + "semver": "^5.3.0", + "shimmer": "^1.1.0" + } + }, + "async-mutex": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.3.1.tgz", + "integrity": "sha512-vRfQwcqBnJTLzVQo72Sf7KIUbcSUP5hNchx6udI1U6LuPQpfePgdjJzlCe76yFZ8pxlLjn9lwcl/Ya0TSOv0Tw==", + "requires": { + "tslib": "^2.1.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + } + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + }, + "axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "requires": { + "follow-redirects": "^1.10.0" + } + }, + "azure-arm-resource": { + "version": "3.1.1-preview", + "resolved": "https://registry.npmjs.org/azure-arm-resource/-/azure-arm-resource-3.1.1-preview.tgz", + "integrity": "sha512-01/t+0aDxcvEoAk+EOgMdZwi6DdCFN+iQM5CBaMhNg9DBoztrfRIpOz0OR4QUCynmcyCpl52CZN0Pho36mQiHA==", + "requires": { + "ms-rest": "^2.3.0", + "ms-rest-azure": "^2.5.0" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" + }, + "adal-node": { + "version": "0.1.28", + "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", + "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", + "requires": { + "@types/node": "^8.0.47", + "async": ">=0.6.0", + "date-utils": "*", + "jws": "3.x.x", + "request": ">= 2.52.0", + "underscore": ">= 1.3.1", + "uuid": "^3.1.0", + "xmldom": ">= 0.1.x", + "xpath.js": "~1.1.0" + } + }, + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "^4.14.0" + } + }, + "ms-rest-azure": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ms-rest-azure/-/ms-rest-azure-2.6.0.tgz", + "integrity": "sha512-J6386a9krZ4VtU7CRt+Ypgo9RGf8+d3gjMBkH7zbkM4zzkhbbMOYiPRaZ+bHZcfihkKLlktTgA6rjshTjF329A==", + "requires": { + "adal-node": "^0.1.28", + "async": "2.6.0", + "moment": "^2.22.2", + "ms-rest": "^2.3.2", + "request": "^2.88.0", + "uuid": "^3.2.1" + } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "azure-devops-node-api": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-11.0.1.tgz", + "integrity": "sha512-YMdjAw9l5p/6leiyIloxj3k7VIvYThKjvqgiQn88r3nhT93ENwsoDS3A83CyJ4uTWzCZ5f5jCi6c27rTU5Pz+A==", + "dev": true, + "requires": { + "tunnel": "0.0.6", + "typed-rest-client": "^1.8.4" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", + "dev": true, + "requires": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + } + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, + "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 + }, + "buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", + "dev": true + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + }, + "cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==" + }, + "cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "chai": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.4.tgz", + "integrity": "sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA==", + "requires": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^3.0.1", + "get-func-name": "^2.0.0", + "pathval": "^1.1.1", + "type-detect": "^4.0.5" + } + }, + "chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", + "dev": true, + "requires": { + "traverse": ">=0.3.0 <0.4" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" + }, + "check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=" + }, + "cheerio": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", + "dev": true, + "requires": { + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", + "dev": true + } + } + }, + "cheerio-select": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", + "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", + "dev": true, + "requires": { + "css-select": "^4.1.3", + "css-what": "^5.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0", + "domutils": "^2.7.0" + } + }, + "chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.3.1", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-spinners": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", + "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==" + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==" + }, + "clipboardy": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", + "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", + "dev": true, + "requires": { + "arch": "^2.1.1", + "execa": "^1.0.0", + "is-wsl": "^2.1.1" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "is-fullwidth-code-point": { + "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==" + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "requires": { + "mimic-response": "^1.0.0" + }, + "dependencies": { + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + } + } + }, + "cls-hooked": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/cls-hooked/-/cls-hooked-4.2.2.tgz", + "integrity": "sha512-J4Xj5f5wq/4jAvcdgoGsL3G103BtWpZrMo8NEinRltN+xpTZdI+M38pyQqhuFU/P792xkMFvnKSf+Lm81U1bxw==", + "requires": { + "async-hook-jl": "^1.7.6", + "emitter-listener": "^1.0.1", + "semver": "^5.4.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "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==", + "requires": { + "color-name": "~1.1.4" + } + }, + "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==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "optional": true + }, + "compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "dev": true + }, + "compress-commons": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-2.1.1.tgz", + "integrity": "sha512-eVw6n7CnEMFzc3duyFVrQEuY1BlHR3rYsSztyG32ibGMW722i3C6IizEGMFmfMU+A+fALvBIwxN3czffTcdA+Q==", + "requires": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^3.0.1", + "normalize-path": "^3.0.0", + "readable-stream": "^2.3.6" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "requires": { + "safe-buffer": "5.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "continuation-local-storage": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/continuation-local-storage/-/continuation-local-storage-3.2.1.tgz", + "integrity": "sha512-jx44cconVqkCEEyLSKWwkvUXwO561jXMa3LPjTPsm5QR22PA0/mhe33FT4Xb5y74JDvt/Cq+5lm8S8rskLv9ZA==", + "requires": { + "async-listener": "^0.6.0", + "emitter-listener": "^1.1.1" + } + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "requires": { + "buffer": "^5.1.0" + } + }, + "crc32-stream": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-3.0.1.tgz", + "integrity": "sha512-mctvpXlbzsvK+6z8kJwSJ5crm7yBwrQMTybJzMw1O4lLGJqjlDCXY2Zw7KheiA6XBEcBmfLx1D88mjRGVJtY9w==", + "requires": { + "crc": "^3.4.4", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" + }, + "cryptr": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/cryptr/-/cryptr-6.0.2.tgz", + "integrity": "sha512-1TRHI4bmuLIB8WgkH9eeYXzhEg1T4tonO4vVaMBKKde8Dre51J68nAgTVXTwMYXAf7+mV2gBCkm/9wksjSb2sA==" + }, + "css-select": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" + } + }, + "css-what": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", + "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-utils": { + "version": "1.2.21", + "resolved": "https://registry.npmjs.org/date-utils/-/date-utils-1.2.21.tgz", + "integrity": "sha1-YfsWzcEnSzyayq/+n8ad+HIKK2Q=" + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true + }, + "decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "requires": { + "mimic-response": "^2.0.0" + } + }, + "deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "requires": { + "type-detect": "^4.0.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "requires": { + "clone": "^1.0.2" + } + }, + "defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==" + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "denodeify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz", + "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" + }, + "diagnostic-channel": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/diagnostic-channel/-/diagnostic-channel-0.3.1.tgz", + "integrity": "sha512-6eb9YRrimz8oTr5+JDzGmSYnXy5V7YnK5y/hd8AUDK1MssHjQKm9LlD6NSrHx4vMDF3+e/spI2hmWTviElgWZA==", + "requires": { + "semver": "^5.3.0" + } + }, + "diagnostic-channel-publishers": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-0.4.4.tgz", + "integrity": "sha512-l126t01d2ZS9EreskvEtZPrcgstuvH3rbKy82oUhUrVmBaGx4hO9wECdl3cvZbKDYjMF3QJDB5z5dL9yWAjvZQ==" + }, + "diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true + }, + "domhandler": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", + "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", + "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "dotenv": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==" + }, + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "emitter-listener": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/emitter-listener/-/emitter-listener-1.1.2.tgz", + "integrity": "sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ==", + "requires": { + "shimmer": "^1.2.0" + } + }, + "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==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "eslint": { + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "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 + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "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 + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "requires": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "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==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fastq": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.12.0.tgz", + "integrity": "sha512-VNX0QkHK3RsXVKr9KrlUv/FoTa0NdbYoHHl7uXHv2rzyHSlxjdNAKug2twd9luJxpcyNeAgf5iPPMutJO67Dfg==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "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, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "dev": true + }, + "follow-redirects": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.2.tgz", + "integrity": "sha512-yLR6WaE2lbF0x4K2qE2p9PEXKLDjUjnR/xmjS3wHAYxtlsI9MLLBJUZirAHKzUZDGLxje7w/cXR49WOUo4rbsA==" + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "dependencies": { + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=" + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "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, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + }, + "dependencies": { + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + } + } + }, + "globby": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + } + }, + "got": { + "version": "11.8.2", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.2.tgz", + "integrity": "sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==", + "requires": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.1", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "dependencies": { + "decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "requires": { + "mimic-response": "^3.1.0" + } + }, + "mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + } + } + }, + "graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "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==" + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "http-close": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-close/-/http-close-1.0.0.tgz", + "integrity": "sha512-lqMabfHDuVOlz4nd3uJCfClyFs/CRCwT2abwBcGTXjdfiX5vJdt7UIolFPqORBPoRZJItliNsXJKPd9+YFAR4A==", + "requires": { + "debug": "^4.1.1" + } + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "requires": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + } + }, + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "inquirer": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz", + "integrity": "sha512-DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q==", + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.3.0", + "run-async": "^2.4.0", + "rxjs": "^7.2.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "is-fullwidth-code-point": { + "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==" + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "install": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/install/-/install-0.13.0.tgz", + "integrity": "sha512-zDml/jzr2PKU9I8J/xyZBQn8rPCAY//UOYNmR01XwNwyfhEWObo2SWfSl1+0tm1u6PhxLwDnfsT/6jB7OUxqFA==" + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==" + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "jpeg-js": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.3.tgz", + "integrity": "sha512-ru1HWKek8octvUHFHvE5ZzQ1yAsJmIvRdGWvSoKV52XKyuyYA437QWDttXT8eZXDSbuMpHlLzPDZUPd6idIz+Q==", + "dev": true + }, + "js-base64": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.6.1.tgz", + "integrity": "sha512-Frdq2+tRRGLQUIQOgsIGSCd1VePCS2fsddTG5dTCqR0JHgltXWfsxnY0gIXPoMeRmdom6Oyq+UMOFg5suduOjQ==" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "jsbi": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jsbi/-/jsbi-3.2.1.tgz", + "integrity": "sha512-NzcT09wuJReIO829enrY3yRdHFz+ciVIq01PCGPkHlwIv5Dj9v2F4daQ4akwuPHf6xO/oii4Jrd3BsPepOxXrg==" + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "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==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "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==" + }, + "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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + }, + "dependencies": { + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + } + } + }, + "jsonschema": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.0.tgz", + "integrity": "sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw==" + }, + "jsonwebtoken": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", + "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", + "requires": { + "jws": "^3.2.2", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "semver": "^5.6.0" + } + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jszip": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.7.1.tgz", + "integrity": "sha512-ghL0tz1XG9ZEmRMcEN2vt7xabrDdqHHeykgARpmZ0BiIctWxM47Vt63ZO2dnp4QYt/xJVLLy5Zv1l/xRdh2byg==", + "dev": true, + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "requires": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "requires": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "jwt-decode": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz", + "integrity": "sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A==" + }, + "keytar": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/keytar/-/keytar-7.7.0.tgz", + "integrity": "sha512-YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A==", + "requires": { + "node-addon-api": "^3.0.0", + "prebuild-install": "^6.0.0" + } + }, + "keyv": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", + "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", + "requires": { + "json-buffer": "3.0.1" + } + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "klaw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "requires": { + "readable-stream": "^2.0.5" + } + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "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, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "requires": { + "immediate": "~3.0.5" + } + }, + "linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "dev": true, + "requires": { + "uc.micro": "^1.0.1" + } + }, + "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, + "requires": { + "p-locate": "^5.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" + }, + "lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" + }, + "lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" + }, + "lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + }, + "lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" + }, + "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 + }, + "lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true + }, + "lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" + }, + "log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "requires": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "markdown-it": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", + "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "entities": "~2.0.0", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + }, + "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "entities": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + } + } + }, + "md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "requires": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + }, + "mime-db": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" + }, + "mime-types": { + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "requires": { + "mime-db": "1.49.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "mocha": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", + "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", + "dev": true, + "requires": { + "@ungap/promise-all-settled": "1.1.2", + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.5.1", + "debug": "4.3.1", + "diff": "5.0.0", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.1.6", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "4.0.0", + "log-symbols": "4.0.0", + "minimatch": "3.0.4", + "ms": "2.1.3", + "nanoid": "3.1.20", + "serialize-javascript": "5.0.1", + "strip-json-comments": "3.1.1", + "supports-color": "8.1.1", + "which": "2.0.2", + "wide-align": "1.1.3", + "workerpool": "6.1.0", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", + "yargs-unparser": "2.0.0" + }, + "dependencies": { + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "js-yaml": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "requires": { + "chalk": "^4.0.0" + } + }, + "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 + }, + "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 + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "yargs-parser": { + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "dev": true + } + } + }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + }, + "monaco-page-objects": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/monaco-page-objects/-/monaco-page-objects-1.6.3.tgz", + "integrity": "sha512-vMFBgsY3+MkrG0ATMtWisND9OT1MLERmjbDkkGDbGMTyC/RdrFOQMr7NfXNI/vbSmXsZOj9CmC6hYOVFnKlkyg==", + "dev": true, + "requires": { + "clipboardy": "^2.3.0", + "clone-deep": "^4.0.1", + "compare-versions": "^3.5.1", + "fs-extra": "^10.0.0", + "ts-essentials": "^7.0.2" + }, + "dependencies": { + "fs-extra": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", + "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + } + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "ms-rest": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.4.tgz", + "integrity": "sha512-VeqCbawxRM6nhw0RKNfj7TWL7SL8PB6MypqwgylXCi+u412uvYoyY/kSmO8n06wyd8nIcnTbYToCmSKFMI1mCg==", + "requires": { + "duplexer": "^0.1.1", + "is-buffer": "^1.1.6", + "is-stream": "^1.1.0", + "moment": "^2.21.0", + "request": "^2.88.0", + "through": "^2.3.8", + "tunnel": "0.0.5", + "uuid": "^3.2.1" + }, + "dependencies": { + "tunnel": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.5.tgz", + "integrity": "sha512-gj5sdqherx4VZKMcBA4vewER7zdK25Td+z1npBqpbDys4eJrLx+SlYjJvq1bDXs2irkuJM5pf8ktaEQVipkrbA==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "ms-rest-azure": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ms-rest-azure/-/ms-rest-azure-3.0.0.tgz", + "integrity": "sha512-cttN01/TtMDB4v3rt/WQ/slgffB6jcUYxcPzcL0VNSB+WFPE1j4y5ICNHMuD1RaNNekCYMI4Pv51BDQ/BXNq7Q==", + "requires": { + "adal-node": "^0.1.28", + "async": "2.6.0", + "moment": "^2.22.2", + "ms-rest": "^2.3.2", + "request": "^2.88.0", + "uuid": "^3.2.1" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" + }, + "adal-node": { + "version": "0.1.28", + "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", + "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", + "requires": { + "@types/node": "^8.0.47", + "async": ">=0.6.0", + "date-utils": "*", + "jws": "3.x.x", + "request": ">= 2.52.0", + "underscore": ">= 1.3.1", + "uuid": "^3.1.0", + "xmldom": ">= 0.1.x", + "xpath.js": "~1.1.0" + } + }, + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "^4.14.0" + } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "msal": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/msal/-/msal-1.4.12.tgz", + "integrity": "sha512-gjupwQ6nvNL6mZkl5NIXyUmZhTiEMRu5giNdgHMh8l5EPOnV2Xj6nukY1NIxFacSTkEYUSDB47Pej9GxDYf+1w==", + "requires": { + "tslib": "^1.9.3" + } + }, + "mustache": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", + "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==" + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "nanoid": { + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "dev": true + }, + "napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "native-duplexpair": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz", + "integrity": "sha1-eJkHjmS/PIo9cyYBs9QP8F21j6A=" + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, + "neverthrow": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/neverthrow/-/neverthrow-3.2.0.tgz", + "integrity": "sha512-AINA32QbYO83L+3CBI6I5lH4LpBSlLwWteJ+uI25s4AQy6g/xz3RZuedmuNo91lLw2rY+AbPEPQdxd7mg1rXoQ==" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node-abi": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz", + "integrity": "sha512-g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg==", + "requires": { + "semver": "^5.4.1" + } + }, + "node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==" + }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==" + }, + "node-machine-id": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", + "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==" + }, + "node-ts-uuid": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/node-ts-uuid/-/node-ts-uuid-1.0.8.tgz", + "integrity": "sha512-o/qbHffN0uI2SYDxqc5vuMrWHZe7MV2XdCimsJz4hnbus/9yEw6OdshXqbmDFCpFKUzrKePb8zXPwWOGCPqTCw==" + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + }, + "dependencies": { + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + } + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", + "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-inspect": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/open/-/open-8.2.1.tgz", + "integrity": "sha512-rXILpcQlkF/QuFez2BJDf3GsqpjGKbkUUToAIGo9A0Q6ZkoSGogZJulrUdwRkrAsoQvoZsrjCYt8+zblOk7JQQ==", + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "openapi-types": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-7.2.3.tgz", + "integrity": "sha512-olbaNxz12R27+mTyJ/ZAFEfUruauHH27AkeQHDHRq5AF0LdNkK1SSV7EourXQDK+4aX7dv2HtyirAGK06WMAsA==" + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "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.3" + } + }, + "ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "requires": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "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, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "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, + "requires": { + "p-limit": "^3.0.2" + } + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "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, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-semver": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz", + "integrity": "sha1-mkr9bfBj3Egm+T+6SpnPIj9mbLg=", + "dev": true, + "requires": { + "semver": "^5.1.0" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dev": true, + "requires": { + "parse5": "^6.0.1" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "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 + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "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 + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==" + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true + }, + "playwright": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.14.0.tgz", + "integrity": "sha512-aR5oZ1iVsjQkGfYCjgYAmyMAVu0MQ0i8MgdnfdqDu9EVLfbnpuuFmTv/Rb7/Yjno1kOrDUP9+RyNC+zfG3wozA==", + "dev": true, + "requires": { + "commander": "^6.1.0", + "debug": "^4.1.1", + "extract-zip": "^2.0.1", + "https-proxy-agent": "^5.0.0", + "jpeg-js": "^0.4.2", + "mime": "^2.4.6", + "pngjs": "^5.0.0", + "progress": "^2.0.3", + "proper-lockfile": "^4.1.1", + "proxy-from-env": "^1.1.0", + "rimraf": "^3.0.2", + "stack-utils": "^2.0.3", + "ws": "^7.4.6", + "yazl": "^2.5.1" + }, + "dependencies": { + "commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true + } + } + }, + "pngjs": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", + "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==", + "dev": true + }, + "prebuild-install": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", + "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", + "requires": { + "detect-libc": "^1.0.3", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^2.21.0", + "npmlog": "^4.0.1", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^3.0.3", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + } + }, + "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 + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "proper-lockfile": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", + "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "requires": { + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + } + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "querystring": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz", + "integrity": "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==" + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", + "dev": true, + "requires": { + "mute-stream": "~0.0.4" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, + "readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "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==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, + "resolve-alpn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.0.tgz", + "integrity": "sha512-e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA==" + }, + "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==", + "dev": true + }, + "responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "requires": { + "lowercase-keys": "^2.0.0" + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=" + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==" + }, + "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==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rxjs": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.3.0.tgz", + "integrity": "sha512-p2yuGIg9S1epc3vrjKf6iVb3RCaAYjYskkO+jHIaV0IjOPlJop4UnodOoFb2xeNwlguqLYvGw1b1McillYb5Gw==", + "requires": { + "tslib": "~2.1.0" + }, + "dependencies": { + "tslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==" + } + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "dev": true, + "requires": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "selenium-webdriver": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", + "integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==", + "dev": true, + "requires": { + "jszip": "^3.1.3", + "rimraf": "^2.5.4", + "tmp": "0.0.30", + "xml2js": "^0.4.17" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "tmp": { + "version": "0.0.30", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", + "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.1" + } + } + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + } + } + }, + "serialize-javascript": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "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, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "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 + }, + "shimmer": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", + "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==" + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz", + "integrity": "sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==", + "requires": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "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==", + "dev": true + } + } + }, + "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 + }, + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-chain": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/stack-chain/-/stack-chain-1.3.7.tgz", + "integrity": "sha1-0ZLJ/06moiyUxN1FkXHj8AzqEoU=" + }, + "stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + } + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + }, + "stoppable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", + "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "sudo-prompt": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", + "integrity": "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "table": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "dev": true, + "requires": { + "ajv": "^8.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "is-fullwidth-code-point": { + "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==", + "dev": true + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "targz": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/targz/-/targz-1.0.1.tgz", + "integrity": "sha1-j3alI2lM3t+7XWCkB2/27uzFOY8=", + "dev": true, + "requires": { + "tar-fs": "^1.8.1" + }, + "dependencies": { + "bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "dev": true, + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "tar-fs": { + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz", + "integrity": "sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==", + "dev": true, + "requires": { + "chownr": "^1.0.1", + "mkdirp": "^0.5.1", + "pump": "^1.0.0", + "tar-stream": "^1.1.2" + } + }, + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dev": true, + "requires": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + } + } + } + }, + "tedious": { + "version": "9.2.3", + "resolved": "https://registry.npmjs.org/tedious/-/tedious-9.2.3.tgz", + "integrity": "sha512-+mI2r/5mqxpTHKBZ/SW+NNH2MK5i3Pwwkw0gF5ZrS2wf2uT/03bLSss8nm7xh604abJXyjx0sirhwH63H328qA==", + "requires": { + "@azure/ms-rest-nodeauth": "^3.0.6", + "@js-joda/core": "^3.1.0", + "adal-node": "^0.1.28", + "bl": "^3.0.0", + "depd": "^2.0.0", + "iconv-lite": "^0.6.2", + "jsbi": "^3.1.3", + "native-duplexpair": "^1.0.0", + "punycode": "^2.1.0", + "readable-stream": "^3.6.0", + "sprintf-js": "^1.1.2" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" + }, + "adal-node": { + "version": "0.1.28", + "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", + "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", + "requires": { + "@types/node": "^8.0.47", + "async": ">=0.6.0", + "date-utils": "*", + "jws": "3.x.x", + "request": ">= 2.52.0", + "underscore": ">= 1.3.1", + "uuid": "^3.1.0", + "xmldom": ">= 0.1.x", + "xpath.js": "~1.1.0" + } + }, + "bl": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-3.0.1.tgz", + "integrity": "sha512-jrCW5ZhfQ/Vt07WX1Ngs+yn9BDqPL/gw28S7s9H6QK/gupnizNzJAss5akW20ISgOrbLTlXOOCTJeNUQqruAWQ==", + "requires": { + "readable-stream": "^3.0.1" + } + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + }, + "tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "requires": { + "ip-regex": "^2.1.0", + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", + "dev": true + }, + "tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==" + }, + "truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha1-QFkjkJWS1W94pYGENLC3hInKXys=", + "dev": true, + "requires": { + "utf8-byte-length": "^1.0.1" + } + }, + "ts-essentials": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz", + "integrity": "sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==", + "dev": true + }, + "ts-node": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", + "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", + "dev": true, + "requires": { + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.17", + "yn": "3.1.1" + }, + "dependencies": { + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true + } + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, + "tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==" + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" + }, + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-rest-client": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.5.tgz", + "integrity": "sha512-952/Aegu3lTqUAI1anbDLbewojnF/gh8at9iy1CIrfS1h/+MtNjB1Y9z6ZF5n2kZd+97em56lZ9uu7Zz3y/pwg==", + "dev": true, + "requires": { + "qs": "^6.9.1", + "tunnel": "0.0.6", + "underscore": "^1.12.1" + } + }, + "typedi": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/typedi/-/typedi-0.10.0.tgz", + "integrity": "sha512-v3UJF8xm68BBj6AF4oQML3ikrfK2c9EmZUyLOfShpJuItAqVBHWP/KtpGinkSsIiP6EZyyb6Z3NXyW9dgS9X1w==" + }, + "typescript": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", + "dev": true + }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true + }, + "underscore": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz", + "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==" + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "unzip-stream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/unzip-stream/-/unzip-stream-0.3.1.tgz", + "integrity": "sha512-RzaGXLNt+CW+T41h1zl6pGz3EaeVhYlK+rdAap+7DxW5kqsqePO8kRtWPaCiVqdhZc86EctSPVYNix30YOMzmw==", + "dev": true, + "requires": { + "binary": "^0.3.0", + "mkdirp": "^0.5.1" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "url-join": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz", + "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=", + "dev": true + }, + "url-parse": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.3.tgz", + "integrity": "sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==", + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "utf8-byte-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", + "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "validator": { + "version": "13.6.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.6.0.tgz", + "integrity": "sha512-gVgKbdbHgtxpRyR8K0O6oFZPhhB5tT1jeEHZR0Znr9Svg03U0+r9DXWMrnRAB+HtCStDQKlaIZm42tVsVjqtjg==" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vsce": { + "version": "1.96.1", + "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.96.1.tgz", + "integrity": "sha512-KnEVqjfc1dXrpZsbJ8J7B9VQ7GAAx8o5RqBNk42Srv1KF9+e2/aXchQHe9QZxeUs/FiliHoMGpGvnHTXwKIT2A==", + "dev": true, + "requires": { + "azure-devops-node-api": "^11.0.1", + "chalk": "^2.4.2", + "cheerio": "^1.0.0-rc.9", + "commander": "^6.1.0", + "denodeify": "^1.2.1", + "glob": "^7.0.6", + "leven": "^3.1.0", + "lodash": "^4.17.15", + "markdown-it": "^10.0.0", + "mime": "^1.3.4", + "minimatch": "^3.0.3", + "osenv": "^0.1.3", + "parse-semver": "^1.1.1", + "read": "^1.0.7", + "semver": "^5.1.0", + "tmp": "^0.2.1", + "typed-rest-client": "^1.8.4", + "url-join": "^1.1.0", + "yauzl": "^2.3.1", + "yazl": "^2.2.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "requires": { + "rimraf": "^3.0.0" + } + } + } + }, + "vscode-extension-tester": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/vscode-extension-tester/-/vscode-extension-tester-4.1.2.tgz", + "integrity": "sha512-QWy7BBS8zdsWMj7/okpb8aJ/+16BelZzqLrJd2zYZJbzepxxrXZhpE034HmLlMdEnvTqN9yM94uVLz1CcZS6KA==", + "dev": true, + "requires": { + "@types/selenium-webdriver": "^3.0.15", + "commander": "^8.0.0", + "compare-versions": "^3.6.0", + "fs-extra": "^10.0.0", + "glob": "^7.1.7", + "js-yaml": "^4.1.0", + "monaco-page-objects": "^1.6.3", + "request": "^2.88.0", + "sanitize-filename": "^1.6.3", + "selenium-webdriver": "^3.0.0", + "targz": "^1.0.1", + "unzip-stream": "^0.3.0", + "vsce": "^1.96.0", + "vscode-extension-tester-locators": "^1.59.0" + }, + "dependencies": { + "commander": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.1.0.tgz", + "integrity": "sha512-mf45ldcuHSYShkplHHGKWb4TrmwQadxOn7v4WuhDJy0ZVoY5JFajaRDKD0PNe5qXzBX0rhovjTnP6Kz9LETcuA==", + "dev": true + }, + "fs-extra": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", + "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + } + } + }, + "vscode-extension-tester-locators": { + "version": "1.59.0", + "resolved": "https://registry.npmjs.org/vscode-extension-tester-locators/-/vscode-extension-tester-locators-1.59.0.tgz", + "integrity": "sha512-P2nW8PXZjsV1lJzkVQbRV9TvXk0jkc1dDSSzaYkKLksyejgljFwCbgUbC3VxyQZHTH8kQtLxj8HNIM6QAGM9vA==", + "dev": true + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "requires": { + "defaults": "^1.0.3" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "workerpool": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", + "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", + "dev": true + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "is-fullwidth-code-point": { + "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==" + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "dev": true + }, + "xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + } + }, + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + }, + "xmldom": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.6.0.tgz", + "integrity": "sha512-iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg==" + }, + "xpath.js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xpath.js/-/xpath.js-1.1.0.tgz", + "integrity": "sha512-jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==" + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "is-fullwidth-code-point": { + "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==" + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + }, + "yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "dev": true, + "requires": { + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + } + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3" + } + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + }, + "z-schema": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.1.tgz", + "integrity": "sha512-Gp8xU2lULhREqTWj9t4BEAeA7M835n4fWJ9KjGWksV3wmLUdOJo2hAr+QYvkVZIGOOTyeN274g1f95dKRsgYgQ==", + "requires": { + "commander": "^2.7.1", + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^13.6.0" + } + }, + "zip-a-folder": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/zip-a-folder/-/zip-a-folder-0.0.12.tgz", + "integrity": "sha512-wZGiWgp3z2TocBlzx3S5tsLgPbT39qG2uIZmn2MhYLVjhKIr2nMhg7i4iPDL4W3XvMDaOEEVU5ZB0Y/Pt6BLvA==", + "requires": { + "archiver": "^3.1.1" + } + }, + "zip-stream": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.1.3.tgz", + "integrity": "sha512-EkXc2JGcKhO5N5aZ7TmuNo45budRaFGHOmz24wtJR7znbNqDPmdZtUauKX6et8KAVseAMBOyWJqEpXcHTBsh7Q==", + "requires": { + "archiver-utils": "^2.1.0", + "compress-commons": "^2.1.1", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + } + } } diff --git a/packages/p1/package.json b/packages/p1/package.json index 50100586..254379ec 100644 --- a/packages/p1/package.json +++ b/packages/p1/package.json @@ -1,12 +1,40 @@ { - "name": "lerna-test-pkg1", - "version": "0.16.0-alpha.1", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "long odd codeasdf", - "license": "MIT", - "gitHead": "1441c53643c5d246fdf6fb4f3ab8e261cf5e0bd8" + "name": "lerna-test-pkg1", + "version": "0.16.0-alpha.1", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "long odd codeasdf", + "license": "MIT", + "gitHead": "1441c53643c5d246fdf6fb4f3ab8e261cf5e0bd8", + "devDependencies": { + "@mochajs/json-file-reporter": "^1.3.0", + "@types/chai": "^4.2.19", + "@types/fs-extra": "^9.0.11", + "@types/keytar": "^4.4.2", + "@types/mocha": "^8.2.2", + "@types/node": "^14.17.4", + "@types/uuid": "^8.3.0", + "@typescript-eslint/eslint-plugin": "^4.28.1", + "@typescript-eslint/parser": "^4.28.1", + "chai": "^4.3.4", + "eslint": "^7.29.0", + "fs-extra": "^9.1.0", + "mocha": "^8.4.0", + "playwright": "^1.12.3", + "rimraf": "^3.0.2", + "ts-node": "^9.1.1", + "typescript": "^4.3.4", + "uuid": "^8.3.2", + "vscode-extension-tester": "^4.1.0" + }, + "dependencies": { + "@azure/msal-node": "^1.2.0", + "@microsoft/teamsfx-cli": "^0.3.0", + "axios": "^0.21.1", + "dotenv": "^8.2.0", + "querystring": "^0.2.1" + } } From 91849aec422e474f97cb84e4da35363dde00d825 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 14:29:34 +0800 Subject: [PATCH 097/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 34 +++++++++++++++ packages/p1/azureLogin.ts | 87 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 .github/workflows/os.yml create mode 100644 packages/p1/azureLogin.ts diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml new file mode 100644 index 00000000..6d0d1712 --- /dev/null +++ b/.github/workflows/os.yml @@ -0,0 +1,34 @@ +name: uitest + +on: + workflow_dispatch: + +jobs: + main: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup node + uses: actions/setup-node@v2.1.2 + with: + node-version: 14 + + - name: Install function core tool in Linux + if: matrix.os == 'ubuntu-latest' + run: | + curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg + sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg + sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-$(lsb_release -cs)-prod $(lsb_release -cs) main" > /etc/apt/sources.list.d/dotnetdev.list' + sudo apt-get update + sudo apt-get install azure-functions-core-tools-3 + sudo apt-get install libsecret-1-dev + sudo apt install gnome-keyring --no-install-recommends + sudo apt install dbus-x11 gnupg2 pass + export $(dbus-launch) + export DISPLAY=:0.0 + + - name: Azure Login + run: | + npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' diff --git a/packages/p1/azureLogin.ts b/packages/p1/azureLogin.ts new file mode 100644 index 00000000..eb68d1da --- /dev/null +++ b/packages/p1/azureLogin.ts @@ -0,0 +1,87 @@ +/** + * Azure Account extension will store refresh token by keytar. So this lib + * will use OAuth2.0 password flow to get and store refresh token. + */ +import * as keytar from "keytar"; +import * as axios from "axios"; +import * as os from "os"; +import { exit } from "process"; + +// the friendly service name to store secret in keytar +const serviceName = "VS Code Azure"; +const accountName = "AzureCloud"; +const scopes = [ + "https://management.core.windows.net/user_impersonation", + "offline_access", + "openid", + "profile", +]; +const clientID = "aebc6443-996d-45c2-90f0-388ff96faa56"; +const grantType = "password"; +const tenentID = "72f988bf-86f1-41af-91ab-2d7cd011db47"; +const baseURL = "https://login.microsoftonline.com"; + +async function azureLogin() { + // Entry + const username = process.argv[3]; + const password = process.argv[4]; + + if (!username || !password) { + console.error( + `Please provide username and password, e.g.,${os.EOL}\t npx ts-node azureLogin.ts -- "username" "password"` + ); + process.exit(-1); + } + + const client: axios.AxiosInstance = axios.default.create({ + baseURL: baseURL, + timeout: 1000 * 100, + headers: { "Content-Type": "application/x-www-form-urlencoded" }, + }); + + const data = { + client_id: clientID, + scope: scopes.reduce((p: string, c: string, i: number) => { + if (i == 0) { + p = c; + } else { + p += ` ${c}`; + } + return p; + }), + username: username, + password: password, + grant_type: grantType, + }; + + const encodeForm = (data: any) => { + return Object.keys(data) + .map( + (key) => encodeURIComponent(key) + "=" + encodeURIComponent(data[key]) + ) + .join("&"); + }; + + client + .post(`/${tenentID}/oauth2/v2.0/token`, encodeForm(data)) + .then((resp) => { + keytar + .setPassword(serviceName, accountName, resp.data["refresh_token"]) + .then(() => { + console.log("Azure login Successfully!"); + }) + .catch((err) => { + console.log(err); + exit(1); + }); + }) + .catch((err) => { + console.log(err); + exit(1); + }); +} + +azureLogin().catch((err) => { + console.log(err); + process.exit(1); +}); From 8f925788630a3b07e5f093ac7f36921b82053d58 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 14:31:53 +0800 Subject: [PATCH 098/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 6d0d1712..3617d1bc 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -1,4 +1,4 @@ -name: uitest +name: os on: workflow_dispatch: @@ -16,7 +16,6 @@ jobs: node-version: 14 - name: Install function core tool in Linux - if: matrix.os == 'ubuntu-latest' run: | curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg From c182f19f8770d5f8d75d08f2f8d6a15a27e532cd Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 14:35:31 +0800 Subject: [PATCH 099/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 2 + package-lock.json | 379 ++++++--------------------------------- packages/p1/package.json | 2 +- 3 files changed, 54 insertions(+), 329 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 3617d1bc..3b149fa1 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -30,4 +30,6 @@ jobs: - name: Azure Login run: | + npm install + npx lerna bootstrap npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' diff --git a/package-lock.json b/package-lock.json index 3af743df..9a2945a0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -81,19 +81,6 @@ } } }, - "@cspotcode/source-map-consumer": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", - "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==" - }, - "@cspotcode/source-map-support": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.6.1.tgz", - "integrity": "sha512-DX3Z+T5dt1ockmPdobJS/FAsQPW4V4SrWEhD2iYQT2Cb2tQsiMnYxrcUH9By/Z3B+v0S5LMBkQtV/XOBbpLEOg==", - "requires": { - "@cspotcode/source-map-consumer": "0.8.0" - } - }, "@lerna/add": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@lerna/add/-/add-4.0.0.tgz", @@ -1489,26 +1476,6 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, - "@tsconfig/node10": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz", - "integrity": "sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==" - }, - "@tsconfig/node12": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", - "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==" - }, - "@tsconfig/node14": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz", - "integrity": "sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==" - }, - "@tsconfig/node16": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz", - "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==" - }, "@types/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", @@ -1549,16 +1516,6 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, - "acorn": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz", - "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==" - }, - "acorn-walk": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.1.tgz", - "integrity": "sha512-FbJdceMlPHEAWJOILDk1fXD8lnTlEIWFkqtfk+MvmL5q/qlHfN7GEHcsFZWt/Tea9jRNPWUZG4G976nqAAmU9w==" - }, "add-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", @@ -1627,7 +1584,8 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true }, "ansi-styles": { "version": "4.3.0", @@ -1641,22 +1599,19 @@ "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true }, "are-we-there-yet": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" } }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" - }, "array-differ": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", @@ -1738,11 +1693,6 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -1758,28 +1708,6 @@ "integrity": "sha512-/6FKxSTWoJdbsLDF8tdIjaRiFXiE6UHsEHE3OPI/cwPURCVi1ukP0gmLn7XWEiFk5TcwQjjY5PWsU+j+tgXgmw==", "dev": true }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1799,15 +1727,6 @@ "fill-range": "^7.0.1" } }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -1971,7 +1890,8 @@ "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true }, "ci-info": { "version": "2.0.0", @@ -2074,7 +1994,8 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true }, "color-convert": { "version": "2.0.1", @@ -2175,7 +2096,8 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true }, "conventional-changelog-angular": { "version": "5.0.12", @@ -2300,7 +2222,8 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true }, "cosmiconfig": { "version": "7.0.0", @@ -2315,11 +2238,6 @@ "yaml": "^1.10.0" } }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" - }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -2406,25 +2324,12 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "requires": { - "mimic-response": "^2.0.0" - } - }, "dedent": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", "dev": true }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, "defaults": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", @@ -2452,7 +2357,8 @@ "delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true }, "depd": { "version": "1.1.2", @@ -2472,11 +2378,6 @@ "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", "dev": true }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, "dezalgo": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", @@ -2487,11 +2388,6 @@ "wrappy": "1" } }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" - }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -2542,14 +2438,6 @@ "iconv-lite": "^0.6.2" } }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, "env-paths": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", @@ -2647,11 +2535,6 @@ "strip-final-newline": "^2.0.0" } }, - "expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" - }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -2772,11 +2655,6 @@ "mime-types": "^2.1.12" } }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, "fs-extra": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", @@ -2814,6 +2692,7 @@ "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, "requires": { "aproba": "^1.0.3", "console-control-strings": "^1.0.0", @@ -3139,11 +3018,6 @@ "ini": "^1.3.2" } }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" - }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -3252,7 +3126,8 @@ "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true }, "hosted-git-info": { "version": "4.0.2", @@ -3326,11 +3201,6 @@ "safer-buffer": ">= 2.1.2 < 3.0.0" } }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, "ignore": { "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", @@ -3405,12 +3275,14 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true }, "init-package-json": { "version": "2.0.3", @@ -3588,6 +3460,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3710,7 +3583,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true }, "isexe": { "version": "2.0.0", @@ -3800,15 +3674,6 @@ "verror": "1.10.0" } }, - "keytar": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/keytar/-/keytar-7.7.0.tgz", - "integrity": "sha512-YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A==", - "requires": { - "node-addon-api": "^3.0.0", - "prebuild-install": "^6.0.0" - } - }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -3998,11 +3863,6 @@ } } }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, "make-fetch-happen": { "version": "8.0.14", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz", @@ -4188,11 +4048,6 @@ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" - }, "min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -4211,7 +4066,8 @@ "minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true }, "minimist-options": { "version": "4.1.0", @@ -4402,11 +4258,6 @@ "minimist": "^1.2.5" } }, - "mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, "mkdirp-infer-owner": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz", @@ -4463,37 +4314,12 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, "neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, - "node-abi": { - "version": "2.30.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz", - "integrity": "sha512-g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg==", - "requires": { - "semver": "^5.4.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==" - }, "node-fetch": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", @@ -4728,6 +4554,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, "requires": { "are-we-there-yet": "~1.1.2", "console-control-strings": "~1.1.0", @@ -4738,7 +4565,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true }, "oauth-sign": { "version": "0.9.0", @@ -4749,7 +4577,8 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true }, "object-inspect": { "version": "1.10.2", @@ -4790,6 +4619,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "requires": { "wrappy": "1" } @@ -5127,30 +4957,11 @@ "find-up": "^4.0.0" } }, - "prebuild-install": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", - "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", - "requires": { - "detect-libc": "^1.0.3", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^2.21.0", - "npmlog": "^4.0.1", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^3.0.3", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - } - }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "promise-inflight": { "version": "1.0.1", @@ -5195,15 +5006,6 @@ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -5246,17 +5048,6 @@ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, "read": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", @@ -5426,6 +5217,7 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5593,7 +5385,8 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -5613,7 +5406,8 @@ "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true }, "shallow-clone": { "version": "3.0.1", @@ -5664,22 +5458,8 @@ "signal-exit": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz", - "integrity": "sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==", - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true }, "slash": { "version": "3.0.0", @@ -5851,6 +5631,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -5881,6 +5662,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -5889,6 +5671,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -5914,11 +5697,6 @@ "min-indent": "^1.0.0" } }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, "strong-log-transformer": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz", @@ -5962,41 +5740,6 @@ } } }, - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", @@ -6116,25 +5859,6 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, - "ts-node": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.2.1.tgz", - "integrity": "sha512-hCnyOyuGmD5wHleOQX6NIjJtYVIO8bPP8F2acWkB4W06wdlkgyvJtubO/I9NkI88hCFECbsEgoLc0VNkYmcSfw==", - "requires": { - "@cspotcode/source-map-support": "0.6.1", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "yn": "3.1.1" - } - }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -6145,6 +5869,7 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -6255,7 +5980,8 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true }, "util-promisify": { "version": "2.1.0", @@ -6354,6 +6080,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, "requires": { "string-width": "^1.0.2 || 2" } @@ -6412,7 +6139,8 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true }, "write-file-atomic": { "version": "2.4.3", @@ -6600,11 +6328,6 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" } } } diff --git a/packages/p1/package.json b/packages/p1/package.json index 254379ec..9c84af5c 100644 --- a/packages/p1/package.json +++ b/packages/p1/package.json @@ -26,7 +26,7 @@ "playwright": "^1.12.3", "rimraf": "^3.0.2", "ts-node": "^9.1.1", - "typescript": "^4.3.4", + "typescript": "^4.3.5", "uuid": "^8.3.2", "vscode-extension-tester": "^4.1.0" }, From 39a00fc9b2d1a3c4656ddb08da6891cdbdc787f4 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 14:39:26 +0800 Subject: [PATCH 100/202] fix: install necessary tools on linux --- packages/p1/tsconfig.json | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 packages/p1/tsconfig.json diff --git a/packages/p1/tsconfig.json b/packages/p1/tsconfig.json new file mode 100644 index 00000000..a1443555 --- /dev/null +++ b/packages/p1/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "module": "commonjs", + "target": "es6", + "outDir": "out", + "lib": ["es6", "dom", "esnext.asynciterable"], + "sourceMap": true, + "rootDir": "src", + "resolveJsonModule": true, + "skipLibCheck": true, + "strict": true /* enable all strict type-checking options */, + "jsx": "react" + /* Additional Checks */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + }, + "include": ["src"], + "exclude": ["node_modules", ".test-resources"], + } From 8fca4b3cb3e821610701ce57abd3138dc344a713 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 14:43:04 +0800 Subject: [PATCH 101/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 3b149fa1..a78dd841 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -6,6 +6,9 @@ on: jobs: main: runs-on: ubuntu-latest + env: + AZURE_USERNAME: ${{ secrets.AZURE_USERNAME }} + AZURE_PASSWORD: ${{ secrets.AZURE_PASSWORD }} steps: - name: Checkout uses: actions/checkout@v2 From c5909375ecb3c25cd1151b81d32cdf8fa47f5a3a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 15:08:40 +0800 Subject: [PATCH 102/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index a78dd841..e2110ae8 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -20,19 +20,19 @@ jobs: - name: Install function core tool in Linux run: | - curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg - sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg - sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-$(lsb_release -cs)-prod $(lsb_release -cs) main" > /etc/apt/sources.list.d/dotnetdev.list' - sudo apt-get update - sudo apt-get install azure-functions-core-tools-3 - sudo apt-get install libsecret-1-dev + sudo apt upgrade + sudo apt install libsecret-1-dev + sudo apt install xvfb sudo apt install gnome-keyring --no-install-recommends sudo apt install dbus-x11 gnupg2 pass export $(dbus-launch) export DISPLAY=:0.0 - - name: Azure Login + - name: lerna run: | npm install npx lerna bootstrap + + - name: Azure Login + run: | npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' From e8fc75020be9f175d5c2597a632d257955de044f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 15:12:25 +0800 Subject: [PATCH 103/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index e2110ae8..7ad97cd0 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -28,6 +28,16 @@ jobs: export $(dbus-launch) export DISPLAY=:0.0 + - name: init dbus + run: | + NO_AT_BRIDGE=1; + eval $(dbus-launch --sh-syntax); + + - name: init keychain + run: | + eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); + eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); + - name: lerna run: | npm install From 2282e2b2a79c6d758fa7d96b1e42d25fa821246e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 15:32:02 +0800 Subject: [PATCH 104/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 7ad97cd0..5a336fa4 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -18,25 +18,10 @@ jobs: with: node-version: 14 - - name: Install function core tool in Linux - run: | - sudo apt upgrade - sudo apt install libsecret-1-dev - sudo apt install xvfb - sudo apt install gnome-keyring --no-install-recommends - sudo apt install dbus-x11 gnupg2 pass - export $(dbus-launch) - export DISPLAY=:0.0 - - - name: init dbus - run: | - NO_AT_BRIDGE=1; - eval $(dbus-launch --sh-syntax); - - name: init keychain run: | - eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); - eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); + which keyring + keyring --help - name: lerna run: | From 787ed7b9f5b6c641e9edd35da23a78afe2e8ac74 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 15:36:52 +0800 Subject: [PATCH 105/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 5a336fa4..068a5b0d 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -30,4 +30,5 @@ jobs: - name: Azure Login run: | + sudo apt-get install libsecret-1-dev npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' From c0c9ca975bea9f917232d24acec3200a3213be14 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 24 Aug 2021 16:17:48 +0800 Subject: [PATCH 106/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 9 +++------ packages/p1/azureLogin.ts | 19 +++++++++++++++---- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 068a5b0d..371dbca8 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -18,11 +18,6 @@ jobs: with: node-version: 14 - - name: init keychain - run: | - which keyring - keyring --help - - name: lerna run: | npm install @@ -30,5 +25,7 @@ jobs: - name: Azure Login run: | - sudo apt-get install libsecret-1-dev + mkdir -p ~/.local/share/keyrings + echo "Default_keyring" >> ~/.local/share/keyrings/default + npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' diff --git a/packages/p1/azureLogin.ts b/packages/p1/azureLogin.ts index eb68d1da..bd2714f5 100644 --- a/packages/p1/azureLogin.ts +++ b/packages/p1/azureLogin.ts @@ -81,7 +81,18 @@ async function azureLogin() { }); } -azureLogin().catch((err) => { - console.log(err); - process.exit(1); -}); +azureLogin() + .then(() => { + keytar + .getPassword(serviceName, accountName) + .then((resp) => { + console.log(resp); + }) + .catch((err) => { + console.log(err); + }); + }) + .catch((err) => { + console.log(err); + process.exit(1); + }); From a3b424d81f474acbf0711159ac39f0291021f492 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 10:45:18 +0800 Subject: [PATCH 107/202] fix: install necessary tools on linux --- .github/workflows/os.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 371dbca8..5b512c95 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -25,7 +25,13 @@ jobs: - name: Azure Login run: | - mkdir -p ~/.local/share/keyrings - echo "Default_keyring" >> ~/.local/share/keyrings/default + apt-get update + apt install -y gnome-keyring python3-venv python3-dev + python3 -m venv venv + source venv/bin/activate # source a virtual environment to avoid polluting your system + pip3 install --upgrade pip + pip3 install keyring + dbus-run-session -- sh # this will drop you into a new D-bus shell + echo 'somecredstorepass' | gnome-keyring-daemon --unlock # unlock the system's keyring npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' From 7ca5cac175a9f1e3eaf633cc8587fb1ed99d49a8 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 15:56:30 +0800 Subject: [PATCH 108/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 5b512c95..33b7d5a5 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -6,9 +6,6 @@ on: jobs: main: runs-on: ubuntu-latest - env: - AZURE_USERNAME: ${{ secrets.AZURE_USERNAME }} - AZURE_PASSWORD: ${{ secrets.AZURE_PASSWORD }} steps: - name: Checkout uses: actions/checkout@v2 @@ -25,13 +22,7 @@ jobs: - name: Azure Login run: | - apt-get update - apt install -y gnome-keyring python3-venv python3-dev - python3 -m venv venv - source venv/bin/activate # source a virtual environment to avoid polluting your system - pip3 install --upgrade pip - pip3 install keyring - dbus-run-session -- sh # this will drop you into a new D-bus shell - echo 'somecredstorepass' | gnome-keyring-daemon --unlock # unlock the system's keyring + echo 'Default_keyring' >> ~/.local/share/keyrings/default + echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring - npx ts-node packages/p1/azureLogin.ts -- '${{ env.AZURE_USERNAME }}' '${{ env.AZURE_PASSWORD }}' + npx ts-node packages/p1/azureLogin.ts -- '${{ secrets.AZURE_USERNAME }}' '${{ secrets.AZURE_PASSWORD }}' From 93df23c008052f12db5344a1066487b30660c6c5 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:00:00 +0800 Subject: [PATCH 109/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 33b7d5a5..f32c0e79 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -22,6 +22,9 @@ jobs: - name: Azure Login run: | + ls -alh ~/.local + ls -alh ~/.local/share + ls -alh ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring From d752f974170afcae85c3545f55e8261230c4cf51 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:02:02 +0800 Subject: [PATCH 110/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index f32c0e79..7fbc11b2 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -22,9 +22,7 @@ jobs: - name: Azure Login run: | - ls -alh ~/.local - ls -alh ~/.local/share - ls -alh ~/.local/share/keyrings + mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring From bb15045d172e0850a08e8b664de03883f4648a57 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:08:48 +0800 Subject: [PATCH 111/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 7fbc11b2..28e5268c 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -20,10 +20,17 @@ jobs: npm install npx lerna bootstrap - - name: Azure Login + - name: Install necessary tools in Linux run: | + sudo apt update + sudo apt install dbus-x11 gnupg2 pass + export $(dbus-launch) + export DISPLAY=:0.0 + mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring + - name: Azure Login + run: | npx ts-node packages/p1/azureLogin.ts -- '${{ secrets.AZURE_USERNAME }}' '${{ secrets.AZURE_PASSWORD }}' From 793c372f1e5e6ed30a3d7052d3f88fe8dd8df244 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:11:29 +0800 Subject: [PATCH 112/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 28e5268c..adc3ecfe 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -24,8 +24,11 @@ jobs: run: | sudo apt update sudo apt install dbus-x11 gnupg2 pass - export $(dbus-launch) export DISPLAY=:0.0 + NO_AT_BRIDGE=1; + eval $(dbus-launch --sh-syntax); + eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); + eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From a747341e4eb0ef02417114e6fb651ed378f2e046 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:17:11 +0800 Subject: [PATCH 113/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index adc3ecfe..23cb92a7 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -27,8 +27,10 @@ jobs: export DISPLAY=:0.0 NO_AT_BRIDGE=1; eval $(dbus-launch --sh-syntax); - eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); - eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); + + echo -n "root" | gnome-keyring-daemon --login; + gnome-keyring-daemon --components=secrets --start; + gnome-keyring-daemon -r -d --unlock mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From fc92b5cf8ae1a1f56e4ffc37c278e7f3096073f9 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:20:42 +0800 Subject: [PATCH 114/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 23cb92a7..a3fe73ee 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -23,7 +23,7 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install dbus-x11 gnupg2 pass + sudo apt install dbus-x11 gnupg2 pass gnome-keyring export DISPLAY=:0.0 NO_AT_BRIDGE=1; eval $(dbus-launch --sh-syntax); From b345bcfd03234e9e8371895ccbf86f4b84c3bf70 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 16:24:48 +0800 Subject: [PATCH 115/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index a3fe73ee..ba74abe8 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -23,11 +23,9 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install dbus-x11 gnupg2 pass gnome-keyring - export DISPLAY=:0.0 - NO_AT_BRIDGE=1; - eval $(dbus-launch --sh-syntax); + sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-dev + dbus-run-session -- $SHELL echo -n "root" | gnome-keyring-daemon --login; gnome-keyring-daemon --components=secrets --start; gnome-keyring-daemon -r -d --unlock From 6df9306c74b0a1517f2423c0755e7bb6c451d82e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 19:53:49 +0800 Subject: [PATCH 116/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index ba74abe8..bb429b92 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -26,8 +26,7 @@ jobs: sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-dev dbus-run-session -- $SHELL - echo -n "root" | gnome-keyring-daemon --login; - gnome-keyring-daemon --components=secrets --start; + gnome-keyring-daemon --start; gnome-keyring-daemon -r -d --unlock mkdir -p ~/.local/share/keyrings From 26d2d67daff71419cecbbce7f811b00fe0d7c16c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 19:57:06 +0800 Subject: [PATCH 117/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index bb429b92..6b496b22 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -25,8 +25,11 @@ jobs: sudo apt update sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-dev + echo "1=====" dbus-run-session -- $SHELL + echo "2=====" gnome-keyring-daemon --start; + echo "3=====" gnome-keyring-daemon -r -d --unlock mkdir -p ~/.local/share/keyrings From 0e5996f641af7cd6acc386d910afe5fd84cede3b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:02:08 +0800 Subject: [PATCH 118/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 6b496b22..cadea3d0 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -28,9 +28,7 @@ jobs: echo "1=====" dbus-run-session -- $SHELL echo "2=====" - gnome-keyring-daemon --start; - echo "3=====" - gnome-keyring-daemon -r -d --unlock + echo 'root' | /usr/bin/gnome-keyring-daemon -r -d --unlock mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From 6b90b1a7548dc7331e3db04b52849138866782cd Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:09:49 +0800 Subject: [PATCH 119/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index cadea3d0..685ae4f4 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -28,7 +28,7 @@ jobs: echo "1=====" dbus-run-session -- $SHELL echo "2=====" - echo 'root' | /usr/bin/gnome-keyring-daemon -r -d --unlock + echo 'root' | gnome-keyring-daemon -r -d --unlock --login mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From db0bd282dfbf332f87c614b55c5dd5939ce90a53 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:11:46 +0800 Subject: [PATCH 120/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 685ae4f4..db4eea4e 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -28,7 +28,7 @@ jobs: echo "1=====" dbus-run-session -- $SHELL echo "2=====" - echo 'root' | gnome-keyring-daemon -r -d --unlock --login + echo 'root' | gnome-keyring-daemon --login mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From 17bc823f66bc0ec60a30d706ccf0d05a8bba3627 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:21:32 +0800 Subject: [PATCH 121/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index db4eea4e..0bbc5787 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -23,12 +23,8 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-dev + sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools - echo "1=====" - dbus-run-session -- $SHELL - echo "2=====" - echo 'root' | gnome-keyring-daemon --login mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From 18e155e5164ff09982c9c3e056218582ae2037d0 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:24:42 +0800 Subject: [PATCH 122/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 0bbc5787..9e6170f3 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -25,6 +25,7 @@ jobs: sudo apt update sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools + export SFDX_USE_GENERIC_UNIX_KEYCHAIN=true mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From 538b8a1fea9f08136483bc35a4460c26843a7a43 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:29:36 +0800 Subject: [PATCH 123/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 9e6170f3..491478c3 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -6,6 +6,8 @@ on: jobs: main: runs-on: ubuntu-latest + env: + SFDX_USE_GENERIC_UNIX_KEYCHAIN: true steps: - name: Checkout uses: actions/checkout@v2 @@ -25,8 +27,6 @@ jobs: sudo apt update sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools - export SFDX_USE_GENERIC_UNIX_KEYCHAIN=true - mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring From a248af9db62a59b87f19279c8fb4d9508f0406c1 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:30:10 +0800 Subject: [PATCH 124/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 491478c3..4f70c8f4 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -33,4 +33,5 @@ jobs: - name: Azure Login run: | + export SFDX_USE_GENERIC_UNIX_KEYCHAIN=true npx ts-node packages/p1/azureLogin.ts -- '${{ secrets.AZURE_USERNAME }}' '${{ secrets.AZURE_PASSWORD }}' From d79c96dd83c2ac70f361b98b618537d218b57f9a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 25 Aug 2021 20:34:08 +0800 Subject: [PATCH 125/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 4f70c8f4..b18f8cb3 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -25,7 +25,11 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools + sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools + export $(dbus-launch) + dbus-launch + gnome-keyring-daemon --start --daemonize --components=secrets + echo '' | gnome-keyring-daemon -r -d --unlock mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From b4cb07e756f779898678d5c175a6cee173a3fc28 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 09:42:43 +0800 Subject: [PATCH 126/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index b18f8cb3..f023c93b 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -29,7 +29,8 @@ jobs: export $(dbus-launch) dbus-launch gnome-keyring-daemon --start --daemonize --components=secrets - echo '' | gnome-keyring-daemon -r -d --unlock + echo 'root' | gnome-keyring-daemon --login + echo '' | gnome-keyring-daemon --unlock mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From cdbcdffbee1bbe592015214fbfed571b6b2c2930 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 09:45:08 +0800 Subject: [PATCH 127/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index f023c93b..08ddc5a0 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -27,7 +27,6 @@ jobs: sudo apt update sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools export $(dbus-launch) - dbus-launch gnome-keyring-daemon --start --daemonize --components=secrets echo 'root' | gnome-keyring-daemon --login echo '' | gnome-keyring-daemon --unlock From cde6f4e64e02046b0efb05d273eb01656be243a6 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 10:02:03 +0800 Subject: [PATCH 128/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 08ddc5a0..9838199c 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -26,10 +26,17 @@ jobs: run: | sudo apt update sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools + echo "=====================" export $(dbus-launch) + echo "=====================" + echo $DBUS_SESSION_BUS_ADDRESS + echo "=====================" gnome-keyring-daemon --start --daemonize --components=secrets + echo "=====================" echo 'root' | gnome-keyring-daemon --login + echo "=====================" echo '' | gnome-keyring-daemon --unlock + echo "=====================" mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From cf1782d4f2dad6f8990292e631c24d7bd6d22865 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 10:13:58 +0800 Subject: [PATCH 129/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 9838199c..204405c0 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -31,12 +31,6 @@ jobs: echo "=====================" echo $DBUS_SESSION_BUS_ADDRESS echo "=====================" - gnome-keyring-daemon --start --daemonize --components=secrets - echo "=====================" - echo 'root' | gnome-keyring-daemon --login - echo "=====================" - echo '' | gnome-keyring-daemon --unlock - echo "=====================" mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From ffa1f370ab5323b9e4820a296f811a8f9116914d Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 10:22:44 +0800 Subject: [PATCH 130/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 204405c0..0e42126a 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -27,9 +27,7 @@ jobs: sudo apt update sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools echo "=====================" - export $(dbus-launch) - echo "=====================" - echo $DBUS_SESSION_BUS_ADDRESS + dbus-daemon --session --nopidfile --nofork --address=unix:path=local/bus echo "=====================" mkdir -p ~/.local/share/keyrings From 1f6a644ce944fa258f50b31e1cc44529953b06c3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 10:25:54 +0800 Subject: [PATCH 131/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 0e42126a..b2982911 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -27,7 +27,8 @@ jobs: sudo apt update sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools echo "=====================" - dbus-daemon --session --nopidfile --nofork --address=unix:path=local/bus + env -u DISPLAY dbus-launch --sh-syntax + echo "=====================" echo "=====================" mkdir -p ~/.local/share/keyrings From 92ac70b6e33783ed40710f20f9966b1ff8541433 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 10:42:24 +0800 Subject: [PATCH 132/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index b2982911..b493eefc 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -26,8 +26,11 @@ jobs: run: | sudo apt update sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools + + echo "=====================" + gpg2 --gen-key + pass init $gpg_id echo "=====================" - env -u DISPLAY dbus-launch --sh-syntax echo "=====================" echo "=====================" From 2fcc9516007363610a9dab1b8d466773f53b3e26 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 26 Aug 2021 10:56:49 +0800 Subject: [PATCH 133/202] feat(vsc): hide login in case of spfx project --- .github/workflows/os.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index b493eefc..7f17bf8c 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -28,10 +28,8 @@ jobs: sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools echo "=====================" - gpg2 --gen-key - pass init $gpg_id - echo "=====================" - echo "=====================" + dbus-run-session -- sh # this will drop you into a new D-bus shell + echo 'somecredstorepass' | gnome-keyring-daemon --unlock echo "=====================" mkdir -p ~/.local/share/keyrings From cbefc679da9c8258bc21364cacf81fa461423a54 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 10:43:06 +0800 Subject: [PATCH 134/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/mail.yml diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml new file mode 100644 index 00000000..6bc6b631 --- /dev/null +++ b/.github/workflows/mail.yml @@ -0,0 +1,21 @@ +name: os + +on: + workflow_dispatch: + +jobs: + main: + runs-on: ubuntu-latest + steps: + - name: Send E-mail to the whole team + uses: satak/webrequest-action@master + with: + url: https://prod-30.eastus.logic.azure.com:443/workflows/9aa865da96054bd89749c2d4ce68df8e/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=uIoB06NUHSnKoZeWjNDI9t4rrhbTBKxJNiBtDoMRSQs + method: POST + payload: | + { + "to": "haolong@microsoft.com", + "body": "TeamsFx CLI E2E Test failed
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", + "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", + "apiKey": "${{ secrets.MAIL_API_KEY }}", + } From 6d5b0165e7884f3cabb9dae005fbee103e379874 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 10:43:38 +0800 Subject: [PATCH 135/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index 6bc6b631..331207cf 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -1,4 +1,4 @@ -name: os +name: mail on: workflow_dispatch: From a58cba9480ff8d181a926c796fab567472f68b17 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 10:45:04 +0800 Subject: [PATCH 136/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index 331207cf..4da208b5 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -17,5 +17,5 @@ jobs: "to": "haolong@microsoft.com", "body": "TeamsFx CLI E2E Test failed
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", - "apiKey": "${{ secrets.MAIL_API_KEY }}", + "apiKey": "${{ secrets.MAIL_API_KEY }}" } From d982a265c4e91b60832cce7e347444450b9df074 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 10:50:02 +0800 Subject: [PATCH 137/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index 4da208b5..87f08549 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -7,6 +7,40 @@ jobs: main: runs-on: ubuntu-latest steps: + - name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Check git log + id: git-log + shell: bash + run: | + declare -A email_uid + for i in $(git log --pretty="%ae" e2e..HEAD | sort | uniq); + do + if [ ${email_uid[$i]+exist} ]; then + continue + fi + + resp=$(curl -u :${{ secrets.ADO_PAT }} "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") + uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) + email_uid[$i]=$uid + done + echo ${email_uid[@]} + + gitlog=$(git log --pretty=format:'{"commit":"%h","subject":"%s","email":"%aE","date":"%aD"},' e2e..HEAD | grep -v "noreply") + gitlog=[${gitlog::-1}] + + description=" Commit Date Subject Author " + for row in $(echo $gitlog | jq -r '.[] | @base64'); do + _jq() { + echo ${row} | base64 --decode | jq -r ${1} + } + description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " + done + echo "::set-output name=description::$description" + - name: Send E-mail to the whole team uses: satak/webrequest-action@master with: @@ -15,7 +49,9 @@ jobs: payload: | { "to": "haolong@microsoft.com", - "body": "TeamsFx CLI E2E Test failed
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", + "body": "TeamsFx CLI E2E Test failed + ${{ steps.git-log.outputs.description }}
+ The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", "apiKey": "${{ secrets.MAIL_API_KEY }}" } From 6341dc37a221e2b2fd73a144c400c739ec08a171 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 12:59:17 +0800 Subject: [PATCH 138/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index 87f08549..9444e413 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -49,9 +49,7 @@ jobs: payload: | { "to": "haolong@microsoft.com", - "body": "TeamsFx CLI E2E Test failed - ${{ steps.git-log.outputs.description }}
- The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", + "body": "TeamsFx CLI E2E Test failed ${{ steps.git-log.outputs.description }}
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", "apiKey": "${{ secrets.MAIL_API_KEY }}" } From 07eec94378bc9a810df0ce787f2cc4a558eb6ed0 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 13:01:42 +0800 Subject: [PATCH 139/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index 9444e413..e2e4655a 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -49,7 +49,7 @@ jobs: payload: | { "to": "haolong@microsoft.com", - "body": "TeamsFx CLI E2E Test failed ${{ steps.git-log.outputs.description }}
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", + "body": 'TeamsFx CLI E2E Test failed ${{ steps.git-log.outputs.description }}
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.', "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", "apiKey": "${{ secrets.MAIL_API_KEY }}" } From de496d9ac5b294b3460ae39e6a4175eff4c52aa8 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 13:18:42 +0800 Subject: [PATCH 140/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index e2e4655a..cd8746b0 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -39,6 +39,7 @@ jobs: } description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " done + description=`echo $description | sed -e 's/"/\\"/g'` echo "::set-output name=description::$description" - name: Send E-mail to the whole team @@ -49,7 +50,7 @@ jobs: payload: | { "to": "haolong@microsoft.com", - "body": 'TeamsFx CLI E2E Test failed ${{ steps.git-log.outputs.description }}
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.', + "body": "TeamsFx CLI E2E Test failed ${{ steps.git-log.outputs.description }}
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", "apiKey": "${{ secrets.MAIL_API_KEY }}" } From f530a99bf02a18ca27cc5680c0debe10bb179d27 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 13:21:07 +0800 Subject: [PATCH 141/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index cd8746b0..b68e4a3a 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -40,6 +40,7 @@ jobs: description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " done description=`echo $description | sed -e 's/"/\\"/g'` + echo $description echo "::set-output name=description::$description" - name: Send E-mail to the whole team From 7e2b4cec45856e21784603207a456ef9e9c3c517 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 27 Aug 2021 13:24:09 +0800 Subject: [PATCH 142/202] test: upload resource & solution's ut coverage --- .github/workflows/mail.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml index b68e4a3a..bbfa5c07 100644 --- a/.github/workflows/mail.yml +++ b/.github/workflows/mail.yml @@ -39,7 +39,7 @@ jobs: } description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " done - description=`echo $description | sed -e 's/"/\\"/g'` + description=`echo $description | sed -e 's/"/\\\"/g'` echo $description echo "::set-output name=description::$description" From 4969627d9b5a7ebdee6c4637a203e746d13cd3e4 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 31 Aug 2021 15:09:07 +0800 Subject: [PATCH 143/202] chore: add base64encode function --- .github/workflows/cd.yml | 108 --------------------------------------- .github/workflows/os.yml | 4 +- 2 files changed, 2 insertions(+), 110 deletions(-) delete mode 100644 .github/workflows/cd.yml diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml deleted file mode 100644 index 961180dd..00000000 --- a/.github/workflows/cd.yml +++ /dev/null @@ -1,108 +0,0 @@ -name: CD - -on: - workflow_dispatch: - inputs: - version: - description: "which version to bump(major, minor, patch, premajor, preminor, prepatch, prerelease)" - required: true - default: "prerelease" - preid: - description: "preid name(alpha or rc)" - required: false - default: "alpha" - force: - description: "force release even if no update(set --force-publish if necessary)" - required: false - default: "" - schedule: - - cron: "*/3 8 * * *" - -jobs: - cd: - runs-on: ubuntu-latest - - steps: - - name: Validate inputs - if: ${{ github.event_name == 'workflow_dispatch' && ((github.ref != 'refs/heads/dev' && github.ref != 'refs/heads/main') || (github.ref == 'refs/heads/dev' && (!startsWith(github.event.inputs.version, 'pre') || github.event.inputs.preid != 'alpha')) || (github.ref == 'refs/heads/main' && startsWith(github.event.inputs.version, 'pre') && github.event.inputs.preid != 'rc')) }} - run: | - exit 1 - - name: Checkout branch - run: | - exit 1 - - - name: Checkout branch - uses: actions/checkout@v2 - with: - fetch-depth: 0 - token: ${{ secrets.CD_PAT }} - ref: ${{ github.ref }} - - - name: Setup node - uses: actions/setup-node@v2.1.2 - with: - node-version: 14 - - - name: Setup npm registry - run: | - echo "${{ secrets.NPMRC }}" > ~/.npmrc - - - name: Setup project - run: | - npm run setup - - - name: Setup git - run: | - git config --global user.name 'MSFT-yiz' - git config --global user.email 'yiz@microsoft.com' - - - name: release alpha npm packages to npmjs.org - if: ${{ github.event_name == 'schedule' }} - run: | - npx lerna publish --no-private --preid=alpha --dist-tag=alpha prerelease --yes - - - name: release rc npm packages to npmjs.org - if: ${{ github.event_name == 'workflow_dispatch' && startsWith(github.event.inputs.version, 'pre') }} - run: | - npx lerna publish --no-private --preid=${{ github.event.inputs.preid }} --dist-tag=${{ github.event.inputs.preid }} ${{ github.event.inputs.version }} --yes ${{ github.event.inputs.force }} - - - name: release stable npm packages to npmjs.org - if: ${{ github.event_name == 'workflow_dispatch' && github.ref == 'refs/heads/main' && !startsWith(github.event.inputs.version, 'pre') }} - run: | - npx lerna publish --no-private --dist-tag=latest ${{ github.event.inputs.version }} --yes ${{ github.event.inputs.force }} - - - name: pack vsix - id: pack-vsix - uses: nick-invision/retry@v2 - with: - timeout_minutes: 10 - max_attempts: 10 - retry_on: error - command: | - sleep 5 - cd ./packages/p4 - npm install - npx vsce package - VERSION=`ls *.vsix | awk -F '.vsix' '{print $1}'` - echo "::set-output name=VERSION::$VERSION" - - - name: check whether vscode extension changed or not - id: extension-checker - working-directory: ./packages/p4 - run: | - if git diff HEAD^ package.json | grep version; - then - echo "::set-output name=CHANGED::true" - else - echo "::set-output name=CHANGED::false" - fi - - - name: release VSCode extension to github - if: ${{ steps.extension-checker.outputs.CHANGED == 'true' || github.event.inputs.force == '--force-publish' }} - uses: marvinpinto/action-automatic-releases@latest - with: - repo_token: ${{ secrets.CD_PAT }} - prerelease: true - automatic_release_tag: ${{ steps.pack-vsix.outputs.VERSION }} - files: | - ./packages/**/*.vsix diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 7f17bf8c..c0603395 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: jobs: - main: + test_os: runs-on: ubuntu-latest env: SFDX_USE_GENERIC_UNIX_KEYCHAIN: true @@ -25,7 +25,7 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install -y dbus-x11 gnupg2 pass gnome-keyring libsecret-1-0 libsecret-1-dev libsecret-common libsecret-tools + sudo apt install -y dbus-x11 gnome-keyring libsecret-1-0 libsecret-common libsecret-tools echo "=====================" dbus-run-session -- sh # this will drop you into a new D-bus shell From cd704463814b8754b6b804f4e3eb4afdf8412129 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 31 Aug 2021 15:15:05 +0800 Subject: [PATCH 144/202] chore: add base64encode function --- .github/workflows/os.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index c0603395..aef3bb71 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -27,10 +27,11 @@ jobs: sudo apt update sudo apt install -y dbus-x11 gnome-keyring libsecret-1-0 libsecret-common libsecret-tools - echo "=====================" - dbus-run-session -- sh # this will drop you into a new D-bus shell - echo 'somecredstorepass' | gnome-keyring-daemon --unlock - echo "=====================" + NO_AT_BRIDGE=1; + eval $(dbus-launch --sh-syntax); + + eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); + eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default From 13e4ccbc3300de41da5c37f359fd3784db4bb57b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 31 Aug 2021 15:44:52 +0800 Subject: [PATCH 145/202] chore: add base64encode function --- .github/workflows/os.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index aef3bb71..10c4eae6 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -33,6 +33,7 @@ jobs: eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); + export DISPLAY=:0.0 mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring From 34bc151c1b38f03434282e6f30167ec2aca9feb4 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 31 Aug 2021 19:36:34 +0800 Subject: [PATCH 146/202] chore: add base64encode function --- .github/workflows/os.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 10c4eae6..3ffb261f 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -33,7 +33,7 @@ jobs: eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); - export DISPLAY=:0.0 + export DISPLAY=:99.0 mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring From 5cca95fb61ed5caceae8fc1cde5ca69c141de59c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 31 Aug 2021 19:51:59 +0800 Subject: [PATCH 147/202] chore: add base64encode function --- .github/workflows/os.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 3ffb261f..655387c9 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -25,13 +25,7 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install -y dbus-x11 gnome-keyring libsecret-1-0 libsecret-common libsecret-tools - - NO_AT_BRIDGE=1; - eval $(dbus-launch --sh-syntax); - - eval $(echo -n "" | /usr/bin/gnome-keyring-daemon --login); - eval $(/usr/bin/gnome-keyring-daemon --components=secrets --start); + sudo apt install libsecret-1-dev=0.15 export DISPLAY=:99.0 mkdir -p ~/.local/share/keyrings From cbdc3fbb7b3a8a5b0e63dc2d017f5cf9c874855c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 1 Sep 2021 09:39:30 +0800 Subject: [PATCH 148/202] chore: add base64encode function --- .github/workflows/os.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 655387c9..43ed10df 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -5,7 +5,7 @@ on: jobs: test_os: - runs-on: ubuntu-latest + runs-on: ubuntu-16.04 env: SFDX_USE_GENERIC_UNIX_KEYCHAIN: true steps: @@ -25,9 +25,7 @@ jobs: - name: Install necessary tools in Linux run: | sudo apt update - sudo apt install libsecret-1-dev=0.15 - export DISPLAY=:99.0 mkdir -p ~/.local/share/keyrings echo 'Default_keyring' >> ~/.local/share/keyrings/default echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring From b55fc22098a49b9d10f85ec424c059a2c0d403fb Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 1 Sep 2021 09:43:43 +0800 Subject: [PATCH 149/202] chore: add base64encode function --- .github/workflows/os.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 43ed10df..0d37a3c2 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -5,7 +5,7 @@ on: jobs: test_os: - runs-on: ubuntu-16.04 + runs-on: ubuntu-18.04 env: SFDX_USE_GENERIC_UNIX_KEYCHAIN: true steps: From 11fceec63c907931f80a70bc1758af4f771af617 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 9 Sep 2021 14:01:59 +0800 Subject: [PATCH 150/202] test: upload cli e2e test result to github action --- .github/workflows/os.yml | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 0d37a3c2..728d0011 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -5,9 +5,7 @@ on: jobs: test_os: - runs-on: ubuntu-18.04 - env: - SFDX_USE_GENERIC_UNIX_KEYCHAIN: true + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 @@ -22,6 +20,20 @@ jobs: npm install npx lerna bootstrap + - name: fail + run: | + exit 1 + + - name: test always + if: ${{ always() && github.ref == 'refs/heads/main' }} + run: | + echo "hello, world" + + - name: test fail + if: ${{ always() }} + run: | + echo "hello, world" + - name: Install necessary tools in Linux run: | sudo apt update From ddb5c8ded97724cd6e669a6e8b3994b9a745a0a3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 17 Sep 2021 10:16:59 +0800 Subject: [PATCH 151/202] feat: modify action.yml --- a.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/a.md b/a.md index 8bd6648e..57c08464 100644 --- a/a.md +++ b/a.md @@ -1 +1,3 @@ asdf + +telemetry From 693dfa9b6fdab5f04e9525000b542928e1dcb79b Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 17 Sep 2021 10:17:09 +0800 Subject: [PATCH 152/202] feat: modify action.yml --- .github/workflows/reviewer.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/reviewer.yml diff --git a/.github/workflows/reviewer.yml b/.github/workflows/reviewer.yml new file mode 100644 index 00000000..1f6583f5 --- /dev/null +++ b/.github/workflows/reviewer.yml @@ -0,0 +1,31 @@ +name: reviewer + +on: + pull_request: + +jobs: + run-tests: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Setup node + uses: actions/setup-node@v2.1.2 + with: + node-version: 14 + + - name: assign-reviewer + uses: LongOddCode/assign-reviewer@0.1.0 + with: + reviewers: '["chagong"]' + conscript: 0 + script: bash + result: TELEMETRY_RESULT + run: | + line=`git diff -U0 ${{ github.base_ref }} | grep '^[+-]' | grep -Ev '^(--- a/|\+\+\+ b/)' | grep -i "telemetry" | wc -l` + if [ $line -gt 0 ]; then + echo '::set-output name=TELEMETRY_RESULT::true' + fi From 2fdf7f7fd755427aad517c9f8f42bfa1516c5ccb Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 28 Sep 2021 14:22:42 +0800 Subject: [PATCH 153/202] chore: remove pr owner from reviewer list --- .github/workflows/reviewer.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reviewer.yml b/.github/workflows/reviewer.yml index 1f6583f5..ad6986eb 100644 --- a/.github/workflows/reviewer.yml +++ b/.github/workflows/reviewer.yml @@ -18,7 +18,7 @@ jobs: node-version: 14 - name: assign-reviewer - uses: LongOddCode/assign-reviewer@0.1.0 + uses: LongOddCode/assign-reviewer@0.2.1 with: reviewers: '["chagong"]' conscript: 0 From 622f964196ebf56befa198fc92325df555e3675e Mon Sep 17 00:00:00 2001 From: Long Hao Date: Wed, 3 Nov 2021 03:08:08 +0000 Subject: [PATCH 154/202] chore: v3 pt --- a.md | 3 - azure-pipelines.yml | 23 - b.md | 2 - c.md | 0 packages/p1/LICENSE | 21 - packages/p1/a.md | 2 - packages/p1/azureLogin.ts | 98 - packages/p1/package-lock.json | 6469 ----------------------- packages/p1/package.json | 40 - packages/p1/tsconfig.json | 20 - packages/p2/2.md | 1 - packages/p2/LICENSE | 21 - packages/p2/package-lock.json | 13 - packages/p2/package.json | 15 - packages/p3/3.md | 1 - packages/p3/LICENSE | 21 - packages/p3/package-lock.json | 28 - packages/p3/package.json | 16 - packages/p4/.eslintrc.js | 20 - packages/p4/.vscode/extensions.json | 9 - packages/p4/.vscode/launch.json | 35 - packages/p4/.vscode/settings.json | 3 - packages/p4/.vscode/tasks.json | 20 - packages/p4/4.md | 1 - packages/p4/README.md | 29 - packages/p4/demo.gif | Bin 535734 -> 0 bytes packages/p4/out/CodelensProvider.js | 51 - packages/p4/out/CodelensProvider.js.map | 1 - packages/p4/out/extension.js | 33 - packages/p4/out/extension.js.map | 1 - packages/p4/package-lock.json | 1281 ----- packages/p4/package.json | 57 - packages/p4/src/CodelensProvider.ts | 55 - packages/p4/src/extension.ts | 35 - packages/p4/tsconfig.json | 20 - packages/p4/yarn.lock | 940 ---- 36 files changed, 9385 deletions(-) delete mode 100644 a.md delete mode 100644 azure-pipelines.yml delete mode 100644 b.md delete mode 100644 c.md delete mode 100644 packages/p1/LICENSE delete mode 100644 packages/p1/a.md delete mode 100644 packages/p1/azureLogin.ts delete mode 100644 packages/p1/package-lock.json delete mode 100644 packages/p1/package.json delete mode 100644 packages/p1/tsconfig.json delete mode 100644 packages/p2/2.md delete mode 100644 packages/p2/LICENSE delete mode 100644 packages/p2/package-lock.json delete mode 100644 packages/p2/package.json delete mode 100644 packages/p3/3.md delete mode 100644 packages/p3/LICENSE delete mode 100644 packages/p3/package-lock.json delete mode 100644 packages/p3/package.json delete mode 100644 packages/p4/.eslintrc.js delete mode 100644 packages/p4/.vscode/extensions.json delete mode 100644 packages/p4/.vscode/launch.json delete mode 100644 packages/p4/.vscode/settings.json delete mode 100644 packages/p4/.vscode/tasks.json delete mode 100644 packages/p4/4.md delete mode 100644 packages/p4/README.md delete mode 100644 packages/p4/demo.gif delete mode 100644 packages/p4/out/CodelensProvider.js delete mode 100644 packages/p4/out/CodelensProvider.js.map delete mode 100644 packages/p4/out/extension.js delete mode 100644 packages/p4/out/extension.js.map delete mode 100644 packages/p4/package-lock.json delete mode 100644 packages/p4/package.json delete mode 100644 packages/p4/src/CodelensProvider.ts delete mode 100644 packages/p4/src/extension.ts delete mode 100644 packages/p4/tsconfig.json delete mode 100644 packages/p4/yarn.lock diff --git a/a.md b/a.md deleted file mode 100644 index 57c08464..00000000 --- a/a.md +++ /dev/null @@ -1,3 +0,0 @@ -asdf - -telemetry diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 39bc3971..00000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,23 +0,0 @@ -# Node.js -# Build a general Node.js project with npm. -# Add steps that analyze code, save build artifacts, deploy, and more: -# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript - -trigger: -- dev - -pool: - vmImage: ubuntu-latest - -steps: -- task: NodeTool@0 - inputs: - versionSpec: '14.x' - displayName: 'Install Node.js' - -- script: | - npm install - npm run setup - lscpu - lshw - displayName: 'npm install and build' diff --git a/b.md b/b.md deleted file mode 100644 index 00180597..00000000 --- a/b.md +++ /dev/null @@ -1,2 +0,0 @@ -sadf -1111 \ No newline at end of file diff --git a/c.md b/c.md deleted file mode 100644 index e69de29b..00000000 diff --git a/packages/p1/LICENSE b/packages/p1/LICENSE deleted file mode 100644 index 8f7691b7..00000000 --- a/packages/p1/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 Long Hao - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/packages/p1/a.md b/packages/p1/a.md deleted file mode 100644 index 0fb40a4a..00000000 --- a/packages/p1/a.md +++ /dev/null @@ -1,2 +0,0 @@ -asdfsdfsdfsdfsdfsdfsdfsdfsdfsdfsdsdfsdfsdfsdfsfsdfsdfsdfsdfsdfasdfasdfsdfsfdsdfsdfsf -asdfsdfsfdsdfsdf diff --git a/packages/p1/azureLogin.ts b/packages/p1/azureLogin.ts deleted file mode 100644 index bd2714f5..00000000 --- a/packages/p1/azureLogin.ts +++ /dev/null @@ -1,98 +0,0 @@ -/** - * Azure Account extension will store refresh token by keytar. So this lib - * will use OAuth2.0 password flow to get and store refresh token. - */ -import * as keytar from "keytar"; -import * as axios from "axios"; -import * as os from "os"; -import { exit } from "process"; - -// the friendly service name to store secret in keytar -const serviceName = "VS Code Azure"; -const accountName = "AzureCloud"; -const scopes = [ - "https://management.core.windows.net/user_impersonation", - "offline_access", - "openid", - "profile", -]; -const clientID = "aebc6443-996d-45c2-90f0-388ff96faa56"; -const grantType = "password"; -const tenentID = "72f988bf-86f1-41af-91ab-2d7cd011db47"; -const baseURL = "https://login.microsoftonline.com"; - -async function azureLogin() { - // Entry - const username = process.argv[3]; - const password = process.argv[4]; - - if (!username || !password) { - console.error( - `Please provide username and password, e.g.,${os.EOL}\t npx ts-node azureLogin.ts -- "username" "password"` - ); - process.exit(-1); - } - - const client: axios.AxiosInstance = axios.default.create({ - baseURL: baseURL, - timeout: 1000 * 100, - headers: { "Content-Type": "application/x-www-form-urlencoded" }, - }); - - const data = { - client_id: clientID, - scope: scopes.reduce((p: string, c: string, i: number) => { - if (i == 0) { - p = c; - } else { - p += ` ${c}`; - } - return p; - }), - username: username, - password: password, - grant_type: grantType, - }; - - const encodeForm = (data: any) => { - return Object.keys(data) - .map( - (key) => encodeURIComponent(key) + "=" + encodeURIComponent(data[key]) - ) - .join("&"); - }; - - client - .post(`/${tenentID}/oauth2/v2.0/token`, encodeForm(data)) - .then((resp) => { - keytar - .setPassword(serviceName, accountName, resp.data["refresh_token"]) - .then(() => { - console.log("Azure login Successfully!"); - }) - .catch((err) => { - console.log(err); - exit(1); - }); - }) - .catch((err) => { - console.log(err); - exit(1); - }); -} - -azureLogin() - .then(() => { - keytar - .getPassword(serviceName, accountName) - .then((resp) => { - console.log(resp); - }) - .catch((err) => { - console.log(err); - }); - }) - .catch((err) => { - console.log(err); - process.exit(1); - }); diff --git a/packages/p1/package-lock.json b/packages/p1/package-lock.json deleted file mode 100644 index 7dcb5460..00000000 --- a/packages/p1/package-lock.json +++ /dev/null @@ -1,6469 +0,0 @@ -{ - "name": "lerna-test-pkg1", - "version": "0.16.0-alpha.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@apidevtools/json-schema-ref-parser": { - "version": "9.0.9", - "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz", - "integrity": "sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w==", - "requires": { - "@jsdevtools/ono": "^7.1.3", - "@types/json-schema": "^7.0.6", - "call-me-maybe": "^1.0.1", - "js-yaml": "^4.1.0" - } - }, - "@apidevtools/openapi-schemas": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@apidevtools/openapi-schemas/-/openapi-schemas-2.1.0.tgz", - "integrity": "sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==" - }, - "@apidevtools/swagger-methods": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz", - "integrity": "sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==" - }, - "@apidevtools/swagger-parser": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/@apidevtools/swagger-parser/-/swagger-parser-10.0.3.tgz", - "integrity": "sha512-sNiLY51vZOmSPFZA5TF35KZ2HbgYklQnTSDnkghamzLb3EkNtcQnrBQEj5AOCxHpTtXpqMCRM1CrmV2rG6nw4g==", - "requires": { - "@apidevtools/json-schema-ref-parser": "^9.0.6", - "@apidevtools/openapi-schemas": "^2.0.4", - "@apidevtools/swagger-methods": "^3.0.2", - "@jsdevtools/ono": "^7.1.3", - "call-me-maybe": "^1.0.1", - "z-schema": "^5.0.1" - } - }, - "@azure/abort-controller": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.4.tgz", - "integrity": "sha512-lNUmDRVGpanCsiUN3NWxFTdwmdFI53xwhkTFfHDGTYk46ca7Ind3nanJc+U6Zj9Tv+9nTCWRBscWEW1DyKOpTw==", - "requires": { - "tslib": "^2.0.0" - }, - "dependencies": { - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/arm-apimanagement": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@azure/arm-apimanagement/-/arm-apimanagement-6.0.0.tgz", - "integrity": "sha512-yl4nWQ1Jy0byMl+IxGjwk+0PhypS3cYUUInABxeOcTGbI2x2e8wVDfsksHC3GCtd8i6PLsyUU3yVtNN0mQfQ9A==", - "requires": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", - "tslib": "^1.10.0" - } - }, - "@azure/arm-appservice": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@azure/arm-appservice/-/arm-appservice-7.0.0.tgz", - "integrity": "sha512-6nJUx1nDWCqllK79Pb0VIhtCXooQxWKcQDbZWS/MBRRjzqc6sRPEtvUaX0UgrO3RPhDn4+LlJbQu0q2mgVwDEA==", - "requires": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", - "tslib": "^1.10.0" - } - }, - "@azure/arm-botservice": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@azure/arm-botservice/-/arm-botservice-2.1.0.tgz", - "integrity": "sha512-9XblhPsSJfDcx7mCT/FduGEZWIQyqhjT04S6dSbGq+cczDDm6Rceb5zsAIBOIlmef4FYf1MG3nKiInIhwTTdhg==", - "requires": { - "@azure/core-auth": "^1.1.4", - "@azure/ms-rest-azure-js": "^2.1.0", - "@azure/ms-rest-js": "^2.2.0", - "tslib": "^1.10.0" - } - }, - "@azure/arm-resources": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@azure/arm-resources/-/arm-resources-4.2.1.tgz", - "integrity": "sha512-WsjhWCxFNFodlWMaGxhcSzeMps09PfDWcrubRZT+dPwIl8Ee3MuuM2fvKrAwM9ixhMrXhX+GP6KAAPdpPg09qg==", - "requires": { - "@azure/core-auth": "^1.1.4", - "@azure/ms-rest-azure-js": "^2.1.0", - "@azure/ms-rest-js": "^2.2.0", - "tslib": "^1.10.0" - } - }, - "@azure/arm-sql": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@azure/arm-sql/-/arm-sql-7.1.1.tgz", - "integrity": "sha512-BVFp1TnypTqt0YWw+i9h9l9wemsI6JbR+nFXComy9XtdL6qyfFQ60zzkyyI53RSEZIIDo/6WkVaK/qN5Pewr0w==", - "requires": { - "@azure/core-auth": "^1.1.4", - "@azure/ms-rest-azure-js": "^2.1.0", - "@azure/ms-rest-js": "^2.2.0", - "tslib": "^1.10.0" - } - }, - "@azure/arm-storage": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/@azure/arm-storage/-/arm-storage-15.3.0.tgz", - "integrity": "sha512-djN2tmEzvC4lNEYrk3PAXkf5ZcebGDqPZSh/cYKOleumD4eop5EpMX8d5LcSO/9EcSfPpCzutRg0AleMaPQ9Mg==", - "requires": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", - "tslib": "^1.10.0" - } - }, - "@azure/arm-subscriptions": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@azure/arm-subscriptions/-/arm-subscriptions-3.1.1.tgz", - "integrity": "sha512-SM1lV9I8LOZWYf7vQtN4zuORo3ID1T7oQh3X8ugGT4AUAp+gfmm58ZFTV6YK0gMMZV8211Vlf1kXu6sYA8D0Wg==", - "requires": { - "@azure/core-auth": "^1.1.4", - "@azure/ms-rest-azure-js": "^2.1.0", - "@azure/ms-rest-js": "^2.2.0", - "tslib": "^1.10.0" - } - }, - "@azure/core-asynciterator-polyfill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.0.tgz", - "integrity": "sha512-kmv8CGrPfN9SwMwrkiBK9VTQYxdFQEGe0BmQk+M8io56P9KNzpAxcWE/1fxJj7uouwN4kXF0BHW8DNlgx+wtCg==" - }, - "@azure/core-auth": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.3.2.tgz", - "integrity": "sha512-7CU6DmCHIZp5ZPiZ9r3J17lTKMmYsm/zGvNkjArQwPkrLlZ1TZ+EUYfGgh2X31OLMVAQCTJZW4cXHJi02EbJnA==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "tslib": "^2.2.0" - }, - "dependencies": { - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/core-client": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.3.0.tgz", - "integrity": "sha512-4ricu3aM1TQP2vglBcvFX8KgbWVe+7hl1jVAw6BzIGG4CTAvO3ygDS6th3O+zFwGN9xkgXFHa7Tp3u9za8ciIA==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-asynciterator-polyfill": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-rest-pipeline": "^1.1.0", - "@azure/core-tracing": "1.0.0-preview.13", - "tslib": "^2.2.0" - }, - "dependencies": { - "@azure/core-tracing": { - "version": "1.0.0-preview.13", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", - "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", - "requires": { - "@opentelemetry/api": "^1.0.1", - "tslib": "^2.2.0" - } - }, - "@opentelemetry/api": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", - "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/core-http": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-1.2.6.tgz", - "integrity": "sha512-odtH7UMKtekc5YQ86xg9GlVHNXR6pq2JgJ5FBo7/jbOjNGdBqcrIVrZx2bevXVJz/uUTSx6vUf62gzTXTfqYSQ==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-asynciterator-polyfill": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.11", - "@azure/logger": "^1.0.0", - "@types/node-fetch": "^2.5.0", - "@types/tunnel": "^0.0.1", - "form-data": "^3.0.0", - "node-fetch": "^2.6.0", - "process": "^0.11.10", - "tough-cookie": "^4.0.0", - "tslib": "^2.2.0", - "tunnel": "^0.0.6", - "uuid": "^8.3.0", - "xml2js": "^0.4.19" - }, - "dependencies": { - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - } - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/core-lro": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.0.tgz", - "integrity": "sha512-TJo95eNT1dwYOPCb0m1C2zyxVlHuRRkKGeg9TKu8XMF2qh4v6c1weD63r9RVIrLdHdnSqS0n6PTXBpWoB8NqMw==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "tslib": "^2.2.0" - }, - "dependencies": { - "@azure/core-tracing": { - "version": "1.0.0-preview.13", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", - "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", - "requires": { - "@opentelemetry/api": "^1.0.1", - "tslib": "^2.2.0" - } - }, - "@opentelemetry/api": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", - "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/core-paging": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.1.3.tgz", - "integrity": "sha512-his7Ah40ThEYORSpIAwuh6B8wkGwO/zG7gqVtmSE4WAJ46e36zUDXTKReUCLBDc6HmjjApQQxxcRFy5FruG79A==", - "requires": { - "@azure/core-asynciterator-polyfill": "^1.0.0" - } - }, - "@azure/core-rest-pipeline": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.2.0.tgz", - "integrity": "sha512-oOd8feRcuoSUwflPNLPO8x6v+m4TcJ9DmazlouuG9d64zJJEwaU757ovpRss9zaL8cggUAdm84C4EbtZ/ltMAw==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "form-data": "^3.0.0", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "tslib": "^2.2.0", - "uuid": "^8.3.0" - }, - "dependencies": { - "@azure/core-tracing": { - "version": "1.0.0-preview.13", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", - "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", - "requires": { - "@opentelemetry/api": "^1.0.1", - "tslib": "^2.2.0" - } - }, - "@opentelemetry/api": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", - "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" - }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/core-tracing": { - "version": "1.0.0-preview.11", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.11.tgz", - "integrity": "sha512-frF0pJc9HTmKncVokhBxCqipjbql02DThQ1ZJ9wLi7SDMLdPAFyDI5xZNzX5guLz+/DtPkY+SGK2li9FIXqshQ==", - "requires": { - "@opencensus/web-types": "0.0.7", - "@opentelemetry/api": "1.0.0-rc.0", - "tslib": "^2.0.0" - }, - "dependencies": { - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/identity": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-1.5.1.tgz", - "integrity": "sha512-ENYdcHT72PwEb+aiL2G6WIXxdm8mO0LNLZVPXaSRZYNsIshre72MF1H/rnJvcVGX9uVDVClSbNPxXwY5MJPLjw==", - "requires": { - "@azure/core-auth": "^1.3.0", - "@azure/core-client": "^1.0.0", - "@azure/core-rest-pipeline": "^1.1.0", - "@azure/core-tracing": "1.0.0-preview.12", - "@azure/logger": "^1.0.0", - "@azure/msal-node": "1.0.0-beta.6", - "@types/stoppable": "^1.1.0", - "axios": "^0.21.1", - "events": "^3.0.0", - "jws": "^4.0.0", - "keytar": "^7.3.0", - "msal": "^1.0.2", - "open": "^7.0.0", - "qs": "^6.7.0", - "stoppable": "^1.1.0", - "tslib": "^2.0.0", - "uuid": "^8.3.0" - }, - "dependencies": { - "@azure/core-tracing": { - "version": "1.0.0-preview.12", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.12.tgz", - "integrity": "sha512-nvo2Wc4EKZGN6eFu9n3U7OXmASmL8VxoPIH7xaD6OlQqi44bouF0YIi9ID5rEsKLiAU59IYx6M297nqWVMWPDg==", - "requires": { - "@opentelemetry/api": "^1.0.0", - "tslib": "^2.2.0" - } - }, - "@azure/msal-node": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.0.0-beta.6.tgz", - "integrity": "sha512-ZQI11Uz1j0HJohb9JZLRD8z0moVcPks1AFW4Q/Gcl67+QvH4aKEJti7fjCcipEEZYb/qzLSO8U6IZgPYytsiJQ==", - "requires": { - "@azure/msal-common": "^4.0.0", - "axios": "^0.21.1", - "jsonwebtoken": "^8.5.1", - "uuid": "^8.3.0" - } - }, - "@opentelemetry/api": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", - "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" - }, - "jwa": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz", - "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==", - "requires": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "jws": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", - "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", - "requires": { - "jwa": "^2.0.0", - "safe-buffer": "^5.0.1" - } - }, - "open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", - "requires": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" - } - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/logger": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.2.tgz", - "integrity": "sha512-YZNjNV0vL3nN2nedmcjQBcpCTo3oqceXmgiQtEm6fLpucjRZyQKAQruhCmCpRlB1iykqKJJ/Y8CDmT5rIE6IJw==", - "requires": { - "tslib": "^2.0.0" - }, - "dependencies": { - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@azure/ms-rest-azure-env": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@azure/ms-rest-azure-env/-/ms-rest-azure-env-2.0.0.tgz", - "integrity": "sha512-dG76W7ElfLi+fbTjnZVGj+M9e0BIEJmRxU6fHaUQ12bZBe8EJKYb2GV50YWNaP2uJiVQ5+7nXEVj1VN1UQtaEw==" - }, - "@azure/ms-rest-azure-js": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@azure/ms-rest-azure-js/-/ms-rest-azure-js-2.1.0.tgz", - "integrity": "sha512-CjZjB8apvXl5h97Ck6SbeeCmU0sk56YPozPtTyGudPp1RGoHXNjFNtoOvwOG76EdpmMpxbK10DqcygI16Lu60Q==", - "requires": { - "@azure/core-auth": "^1.1.4", - "@azure/ms-rest-js": "^2.2.0", - "tslib": "^1.10.0" - } - }, - "@azure/ms-rest-js": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@azure/ms-rest-js/-/ms-rest-js-2.6.0.tgz", - "integrity": "sha512-4C5FCtvEzWudblB+h92/TYYPiq7tuElX8icVYToxOdggnYqeec4Se14mjse5miInKtZahiFHdl8lZA/jziEc5g==", - "requires": { - "@azure/core-auth": "^1.1.4", - "abort-controller": "^3.0.0", - "form-data": "^2.5.0", - "node-fetch": "^2.6.0", - "tough-cookie": "^3.0.1", - "tslib": "^1.10.0", - "tunnel": "0.0.6", - "uuid": "^8.3.2", - "xml2js": "^0.4.19" - } - }, - "@azure/ms-rest-nodeauth": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@azure/ms-rest-nodeauth/-/ms-rest-nodeauth-3.0.10.tgz", - "integrity": "sha512-oel7ibYlredh2wo7XwNYMx4jWlbMkIzCC8t8VpdhsAWDJVNSSce+DYj5jjZn1oED+QsCytVM2B7/QTuLN1/yDw==", - "requires": { - "@azure/ms-rest-azure-env": "^2.0.0", - "@azure/ms-rest-js": "^2.0.4", - "adal-node": "^0.2.2" - } - }, - "@azure/msal-common": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.5.1.tgz", - "integrity": "sha512-/i5dXM+QAtO+6atYd5oHGBAx48EGSISkXNXViheliOQe+SIFMDo3gSq3lL54W0suOSAsVPws3XnTaIHlla0PIQ==", - "requires": { - "debug": "^4.1.1" - } - }, - "@azure/msal-node": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.3.0.tgz", - "integrity": "sha512-BM5S5sMB6N0aPux4l85NnRNO/5/G+w3oT+JtLbMDBsc/aUxLVYoWMmxVECrYzlQRm5QZzFWRo04Rv5AnAF7z2g==", - "requires": { - "@azure/msal-common": "^4.5.0", - "axios": "^0.21.1", - "jsonwebtoken": "^8.5.1", - "uuid": "^8.3.0" - } - }, - "@azure/storage-blob": { - "version": "12.7.0", - "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.7.0.tgz", - "integrity": "sha512-7YEWEx03Us/YBxthzBv788R7jokwpCD5KcIsvtE5xRaijNX9o80KXpabhEwLR9DD9nmt/AlU/c1R+aXydgCduQ==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^2.0.0", - "@azure/core-lro": "^2.0.0", - "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "events": "^3.0.0", - "tslib": "^2.0.0" - }, - "dependencies": { - "@azure/core-http": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-2.1.0.tgz", - "integrity": "sha512-Pzj87F4b1RH4PFDUpxkZqCdDZ35c5AjDCt3lsTn3i7yCtrXasEm6PVJYhjwsvYYmtgM7aDZIXexcu/qLLf7kyA==", - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-asynciterator-polyfill": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "@types/node-fetch": "^2.5.0", - "@types/tunnel": "^0.0.1", - "form-data": "^3.0.0", - "node-fetch": "^2.6.0", - "process": "^0.11.10", - "tough-cookie": "^4.0.0", - "tslib": "^2.2.0", - "tunnel": "^0.0.6", - "uuid": "^8.3.0", - "xml2js": "^0.4.19" - } - }, - "@azure/core-tracing": { - "version": "1.0.0-preview.13", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", - "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", - "requires": { - "@opentelemetry/api": "^1.0.1", - "tslib": "^2.2.0" - } - }, - "@opentelemetry/api": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.2.tgz", - "integrity": "sha512-DCF9oC89ao8/EJUqrp/beBlDR8Bp2R43jqtzayqCoomIvkwTuPfLcHdVhIGRR69GFlkykFjcDW+V92t0AS7Tww==" - }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - } - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", - "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", - "dev": true - }, - "@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@dbpiper/timer": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@dbpiper/timer/-/timer-1.0.0-beta.2.tgz", - "integrity": "sha512-K4pnT5wpSZ8qKpA9sb23EiAigcA0lfRoXCEdXplD9nmPyNhE5zjbRcWf9+1QY6UbCUgRc6ks/0Yj8t0+9f9nMw==", - "requires": { - "@types/lodash": "^4.14.123", - "lodash": "^4.17.11", - "moment": "^2.24.0" - } - }, - "@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "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 - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "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 - } - } - }, - "@feathersjs/hooks": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/@feathersjs/hooks/-/hooks-0.6.5.tgz", - "integrity": "sha512-WtcEoG/imdHRvC3vofGi/OcgH+cjHHhO0AfEeTlsnrKLjVKKBXV6aoIrB2nHZPpE7iW5sA7AZMR6bPD8ytxN+w==" - }, - "@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - } - }, - "@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", - "dev": true - }, - "@js-joda/core": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-3.2.0.tgz", - "integrity": "sha512-PMqgJ0sw5B7FKb2d5bWYIoxjri+QlW/Pys7+Rw82jSH0QN3rB05jZ/VrrsUdh1w4+i2kw9JOejXGq/KhDOX7Kg==" - }, - "@jsdevtools/ono": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", - "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" - }, - "@microsoft/teamsfx-api": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@microsoft/teamsfx-api/-/teamsfx-api-0.4.0.tgz", - "integrity": "sha512-Ir6tbMZApHcMIjKC3CCBwqy6fbCa0VQZgNzG81H0wS5cw1vPZx2qLxt1XCK63CPJqlBWJmAhm60Nknr6P7p3yw==", - "requires": { - "@azure/core-http": "^1.2.2", - "@azure/ms-rest-nodeauth": "^3.0.7", - "@types/fs-extra": "^9.0.10", - "axios": "^0.21.1", - "chai": "^4.3.4", - "jsonschema": "^1.4.0", - "neverthrow": "^3.2.0" - } - }, - "@microsoft/teamsfx-cli": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@microsoft/teamsfx-cli/-/teamsfx-cli-0.3.2.tgz", - "integrity": "sha512-GfSH/aLV2u4ui5MFKBJZ2WgbqpQmKh/8XsHvwwMCJUJ1PrzAXBmdNhp2guoHoAAk0x56YvqL64ISo9OQ/7mbGQ==", - "requires": { - "@azure/arm-apimanagement": "^6.0.0", - "@azure/arm-resources": "^4.0.0", - "@azure/arm-sql": "^7.0.2", - "@azure/arm-subscriptions": "^3.0.0", - "@azure/core-http": "^1.2.0", - "@azure/identity": "^1.3.0", - "@azure/ms-rest-nodeauth": "^3.0.6", - "@microsoft/teamsfx-api": "^0.4.0", - "@microsoft/teamsfx-core": "^0.4.2", - "adm-zip": "^0.5.5", - "applicationinsights": "^1.8.10", - "async-mutex": "^0.3.1", - "axios": "^0.21.1", - "azure-arm-resource": "^3.1.1-preview", - "chalk": "^4.1.0", - "dotenv": "^8.2.0", - "express": "^4.17.1", - "fs-extra": "^9.1.0", - "glob": "^7.1.6", - "inquirer": "^8.0.0", - "keytar": "^7.7.0", - "md5": "^2.3.0", - "ms-rest-azure": "^3.0.0", - "node-machine-id": "^1.1.12", - "open": "^8.2.1", - "tedious": "^9.2.1", - "tree-kill": "^1.2.2", - "underscore": "^1.12.1", - "yargs": "^16.2.0" - } - }, - "@microsoft/teamsfx-core": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@microsoft/teamsfx-core/-/teamsfx-core-0.4.2.tgz", - "integrity": "sha512-EttLRmE9KVy8H44gfmvIGsg+orHfxkwm4NCdAFnBaSG0osDRhqgW4B+Aqsik9KsGCIoMWmBJ8UB4O6/cdbPHNQ==", - "requires": { - "@apidevtools/swagger-parser": "^10.0.2", - "@azure/arm-apimanagement": "^6.0.0", - "@azure/arm-appservice": "^7.0.0", - "@azure/arm-botservice": "^2.0.0", - "@azure/arm-resources": "^4.0.0", - "@azure/arm-sql": "^7.0.2", - "@azure/arm-storage": "^15.2.0", - "@azure/arm-subscriptions": "^3.0.0", - "@azure/ms-rest-nodeauth": "^3.0.6", - "@azure/msal-node": "^1.0.0", - "@azure/storage-blob": "^12.3.0", - "@dbpiper/timer": "1.0.0-beta.2", - "@feathersjs/hooks": "^0.6.5", - "@microsoft/teamsfx-api": "^0.4.0", - "@types/jwt-decode": "3.1.0", - "@types/proper-lockfile": "^4.1.1", - "adm-zip": "^0.5.5", - "ajv": "^7.1.1", - "axios": "^0.21.1", - "cryptr": "^6.0.2", - "dotenv": "^8.2.0", - "express": "^4.17.1", - "fs-extra": "^9.1.0", - "glob": "^7.1.6", - "got": "^11.8.2", - "http-close": "^1.0.0", - "ignore": "^5.1.8", - "install": "^0.13.0", - "js-base64": "^3.6.0", - "js-yaml": "^4.0.0", - "jsonschema": "^1.4.0", - "jwt-decode": "3.1.2", - "klaw": "^3.0.0", - "md5": "^2.3.0", - "mime": "^2.5.2", - "mustache": "^4.2.0", - "node-forge": "^0.10.0", - "node-ts-uuid": "^1.0.8", - "openapi-types": "^7.2.3", - "proper-lockfile": "^4.1.2", - "reflect-metadata": "^0.1.13", - "semver": "^7.3.4", - "sudo-prompt": "^9.2.1", - "tedious": "^9.2.1", - "tslib": "^2.1.0", - "typedi": "^0.10.0", - "url-parse": "^1.5.1", - "uuid": "^8.3.2", - "validator": "^13.1.1", - "zip-a-folder": "0.0.12" - }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "@mochajs/json-file-reporter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@mochajs/json-file-reporter/-/json-file-reporter-1.3.0.tgz", - "integrity": "sha512-evIxpeP8EOixo/T2xh5xYEIzwbEHk8YNJfRUm1KeTs8F3bMjgNn2580Ogze9yisXNlTxu88JiJJYzXjjg5NdLA==", - "dev": true - }, - "@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==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@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==", - "dev": true - }, - "@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==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@opencensus/web-types": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/@opencensus/web-types/-/web-types-0.0.7.tgz", - "integrity": "sha512-xB+w7ZDAu3YBzqH44rCmG9/RlrOmFuDPt/bpf17eJr8eZSrLt7nc7LnWdxM9Mmoj/YKMHpxRg28txu3TcpiL+g==" - }, - "@opentelemetry/api": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.0-rc.0.tgz", - "integrity": "sha512-iXKByCMfrlO5S6Oh97BuM56tM2cIBB0XsL/vWF/AtJrJEKx4MC/Xdu0xDsGXMGcNWpqF7ujMsjjnp0+UHBwnDQ==" - }, - "@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" - }, - "@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "requires": { - "defer-to-connect": "^2.0.0" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" - }, - "@types/cacheable-request": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", - "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", - "requires": { - "@types/http-cache-semantics": "*", - "@types/keyv": "*", - "@types/node": "*", - "@types/responselike": "*" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - } - } - }, - "@types/chai": { - "version": "4.2.21", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.21.tgz", - "integrity": "sha512-yd+9qKmJxm496BOV9CMNaey8TWsikaZOwMRwPHQIjcOJM9oV+fi9ZMNw3JsVnbEEbo2gRTDnGEBv8pjyn67hNg==", - "dev": true - }, - "@types/fs-extra": { - "version": "9.0.12", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.12.tgz", - "integrity": "sha512-I+bsBr67CurCGnSenZZ7v94gd3tc3+Aj2taxMT4yu4ABLuOgOjeFxX3dokG24ztSRg5tnT00sL8BszO7gSMoIw==", - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - } - } - }, - "@types/http-cache-semantics": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" - }, - "@types/json-schema": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", - "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==" - }, - "@types/jwt-decode": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/jwt-decode/-/jwt-decode-3.1.0.tgz", - "integrity": "sha512-tthwik7TKkou3mVnBnvVuHnHElbjtdbM63pdBCbZTirCt3WAdM73Y79mOri7+ljsS99ZVwUFZHLMxJuJnv/z1w==", - "requires": { - "jwt-decode": "*" - } - }, - "@types/keytar": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/@types/keytar/-/keytar-4.4.2.tgz", - "integrity": "sha512-xtQcDj9ruGnMwvSu1E2BH4SFa5Dv2PvSPd0CKEBLN5hEj/v5YpXJY+B6hAfuKIbvEomD7vJTc/P1s1xPNh2kRw==", - "dev": true, - "requires": { - "keytar": "*" - } - }, - "@types/keyv": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz", - "integrity": "sha512-/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==", - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - } - } - }, - "@types/lodash": { - "version": "4.14.172", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.172.tgz", - "integrity": "sha512-/BHF5HAx3em7/KkzVKm3LrsD6HZAXuXO1AJZQ3cRRBZj4oHZDviWPYu0aEplAqDFNHZPW6d3G7KN+ONcCCC7pw==" - }, - "@types/mocha": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz", - "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==", - "dev": true - }, - "@types/node": { - "version": "14.17.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.11.tgz", - "integrity": "sha512-n2OQ+0Bz6WEsUjrvcHD1xZ8K+Kgo4cn9/w94s1bJS690QMUWfJPW/m7CCb7gPkA1fcYwL2UpjXP/rq/Eo41m6w==", - "dev": true - }, - "@types/node-fetch": { - "version": "2.5.12", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.12.tgz", - "integrity": "sha512-MKgC4dlq4kKNa/mYrwpKfzQMB5X3ee5U6fSprkKpToBqBmX4nFZL9cW5jl6sWn+xpRJ7ypWh2yyqqr8UUCstSw==", - "requires": { - "@types/node": "*", - "form-data": "^3.0.0" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "@types/proper-lockfile": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@types/proper-lockfile/-/proper-lockfile-4.1.2.tgz", - "integrity": "sha512-kd4LMvcnpYkspDcp7rmXKedn8iJSCoa331zRRamUp5oanKt/CefbEGPQP7G89enz7sKD4bvsr8mHSsC8j5WOvA==", - "requires": { - "@types/retry": "*" - } - }, - "@types/responselike": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", - "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - } - } - }, - "@types/retry": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", - "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==" - }, - "@types/selenium-webdriver": { - "version": "3.0.19", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.19.tgz", - "integrity": "sha512-OFUilxQg+rWL2FMxtmIgCkUDlJB6pskkpvmew7yeXfzzsOBb5rc+y2+DjHm+r3r1ZPPcJefK3DveNSYWGiy68g==", - "dev": true - }, - "@types/stoppable": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/stoppable/-/stoppable-1.1.1.tgz", - "integrity": "sha512-b8N+fCADRIYYrGZOcmOR8ZNBOqhktWTB/bMUl5LvGtT201QKJZOOH5UsFyI3qtteM6ZAJbJqZoBcLqqxKIwjhw==", - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - } - } - }, - "@types/tunnel": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.1.tgz", - "integrity": "sha512-AOqu6bQu5MSWwYvehMXLukFHnupHrpZ8nvgae5Ggie9UwzDR1CCwoXgSSWNZJuyOlCdfdsWMA5F2LlmvyoTv8A==", - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - } - } - }, - "@types/uuid": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", - "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==", - "dev": true - }, - "@types/yauzl": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz", - "integrity": "sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==", - "dev": true, - "optional": true, - "requires": { - "@types/node": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.3.tgz", - "integrity": "sha512-tBgfA3K/3TsZY46ROGvoRxQr1wBkclbVqRQep97MjVHJzcRBURRY3sNFqLk0/Xr//BY5hM9H2p/kp+6qim85SA==", - "dev": true, - "requires": { - "@typescript-eslint/experimental-utils": "4.29.3", - "@typescript-eslint/scope-manager": "4.29.3", - "debug": "^4.3.1", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.1.0", - "semver": "^7.3.5", - "tsutils": "^3.21.0" - }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/experimental-utils": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.3.tgz", - "integrity": "sha512-ffIvbytTVWz+3keg+Sy94FG1QeOvmV9dP2YSdLFHw/ieLXWCa3U1TYu8IRCOpMv2/SPS8XqhM1+ou1YHsdzKrg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.29.3", - "@typescript-eslint/types": "4.29.3", - "@typescript-eslint/typescript-estree": "4.29.3", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0" - } - }, - "@typescript-eslint/parser": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.3.tgz", - "integrity": "sha512-jrHOV5g2u8ROghmspKoW7pN8T/qUzk0+DITun0MELptvngtMrwUJ1tv5zMI04CYVEUsSrN4jV7AKSv+I0y0EfQ==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "4.29.3", - "@typescript-eslint/types": "4.29.3", - "@typescript-eslint/typescript-estree": "4.29.3", - "debug": "^4.3.1" - } - }, - "@typescript-eslint/scope-manager": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.3.tgz", - "integrity": "sha512-x+w8BLXO7iWPkG5mEy9bA1iFRnk36p/goVlYobVWHyDw69YmaH9q6eA+Fgl7kYHmFvWlebUTUfhtIg4zbbl8PA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.29.3", - "@typescript-eslint/visitor-keys": "4.29.3" - } - }, - "@typescript-eslint/types": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.3.tgz", - "integrity": "sha512-s1eV1lKNgoIYLAl1JUba8NhULmf+jOmmeFO1G5MN/RBCyyzg4TIOfIOICVNC06lor+Xmy4FypIIhFiJXOknhIg==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.3.tgz", - "integrity": "sha512-45oQJA0bxna4O5TMwz55/TpgjX1YrAPOI/rb6kPgmdnemRZx/dB0rsx+Ku8jpDvqTxcE1C/qEbVHbS3h0hflag==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.29.3", - "@typescript-eslint/visitor-keys": "4.29.3", - "debug": "^4.3.1", - "globby": "^11.0.3", - "is-glob": "^4.0.1", - "semver": "^7.3.5", - "tsutils": "^3.21.0" - }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/visitor-keys": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.3.tgz", - "integrity": "sha512-MGGfJvXT4asUTeVs0Q2m+sY63UsfnA+C/FDgBKV3itLBmM9H0u+URcneePtkd0at1YELmZK6HSolCqM4Fzs6yA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.29.3", - "eslint-visitor-keys": "^2.0.0" - } - }, - "@ungap/promise-all-settled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", - "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", - "dev": true - }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "requires": { - "event-target-shim": "^5.0.0" - } - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true - }, - "adal-node": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.2.2.tgz", - "integrity": "sha512-luzQ9cXOjUlZoCiWeYbyR+nHwScSrPTDTbOInFphQs/PnwNz6wAIVkbsHEXtvYBnjLctByTTI8ccfpGX100oRQ==", - "requires": { - "@types/node": "^8.0.47", - "async": "^2.6.3", - "axios": "^0.21.1", - "date-utils": "*", - "jws": "3.x.x", - "underscore": ">= 1.3.1", - "uuid": "^3.1.0", - "xmldom": ">= 0.1.x", - "xpath.js": "~1.1.0" - }, - "dependencies": { - "@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } - } - }, - "adm-zip": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.5.tgz", - "integrity": "sha512-IWwXKnCbirdbyXSfUDvCCrmYrOHANRZcc8NcRrvTlIApdl7PwE9oGcsYvNeJPAVY1M+70b4PxXGKIf8AEuiQ6w==" - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.4.tgz", - "integrity": "sha512-nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "applicationinsights": { - "version": "1.8.10", - "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-1.8.10.tgz", - "integrity": "sha512-ZLDA7mShh4mP2Z/HlFolmvhBPX1LfnbIWXrselyYVA7EKjHhri1fZzpu2EiWAmfbRxNBY6fRjoPJWbx5giKy4A==", - "requires": { - "cls-hooked": "^4.2.2", - "continuation-local-storage": "^3.2.1", - "diagnostic-channel": "0.3.1", - "diagnostic-channel-publishers": "0.4.4" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true - }, - "archiver": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-3.1.1.tgz", - "integrity": "sha512-5Hxxcig7gw5Jod/8Gq0OneVgLYET+oNHcxgWItq4TbhOzRLKNAFUb9edAftiMKXvXfCB0vbGrJdZDNq0dWMsxg==", - "requires": { - "archiver-utils": "^2.1.0", - "async": "^2.6.3", - "buffer-crc32": "^0.2.1", - "glob": "^7.1.4", - "readable-stream": "^3.4.0", - "tar-stream": "^2.1.0", - "zip-stream": "^2.1.2" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "archiver-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz", - "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", - "requires": { - "glob": "^7.1.4", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash.defaults": "^4.2.0", - "lodash.difference": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.union": "^4.6.0", - "normalize-path": "^3.0.0", - "readable-stream": "^2.0.0" - } - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==" - }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "requires": { - "lodash": "^4.17.14" - } - }, - "async-hook-jl": { - "version": "1.7.6", - "resolved": "https://registry.npmjs.org/async-hook-jl/-/async-hook-jl-1.7.6.tgz", - "integrity": "sha512-gFaHkFfSxTjvoxDMYqDuGHlcRyUuamF8s+ZTtJdDzqjws4mCt7v0vuV79/E2Wr2/riMQgtG4/yUtXWs1gZ7JMg==", - "requires": { - "stack-chain": "^1.3.7" - } - }, - "async-listener": { - "version": "0.6.10", - "resolved": "https://registry.npmjs.org/async-listener/-/async-listener-0.6.10.tgz", - "integrity": "sha512-gpuo6xOyF4D5DE5WvyqZdPA3NGhiT6Qf07l7DCB0wwDEsLvDIbCr6j9S5aj5Ch96dLace5tXVzWBZkxU/c5ohw==", - "requires": { - "semver": "^5.3.0", - "shimmer": "^1.1.0" - } - }, - "async-mutex": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.3.1.tgz", - "integrity": "sha512-vRfQwcqBnJTLzVQo72Sf7KIUbcSUP5hNchx6udI1U6LuPQpfePgdjJzlCe76yFZ8pxlLjn9lwcl/Ya0TSOv0Tw==", - "requires": { - "tslib": "^2.1.0" - }, - "dependencies": { - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" - }, - "axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", - "requires": { - "follow-redirects": "^1.10.0" - } - }, - "azure-arm-resource": { - "version": "3.1.1-preview", - "resolved": "https://registry.npmjs.org/azure-arm-resource/-/azure-arm-resource-3.1.1-preview.tgz", - "integrity": "sha512-01/t+0aDxcvEoAk+EOgMdZwi6DdCFN+iQM5CBaMhNg9DBoztrfRIpOz0OR4QUCynmcyCpl52CZN0Pho36mQiHA==", - "requires": { - "ms-rest": "^2.3.0", - "ms-rest-azure": "^2.5.0" - }, - "dependencies": { - "@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" - }, - "adal-node": { - "version": "0.1.28", - "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", - "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", - "requires": { - "@types/node": "^8.0.47", - "async": ">=0.6.0", - "date-utils": "*", - "jws": "3.x.x", - "request": ">= 2.52.0", - "underscore": ">= 1.3.1", - "uuid": "^3.1.0", - "xmldom": ">= 0.1.x", - "xpath.js": "~1.1.0" - } - }, - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "requires": { - "lodash": "^4.14.0" - } - }, - "ms-rest-azure": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/ms-rest-azure/-/ms-rest-azure-2.6.0.tgz", - "integrity": "sha512-J6386a9krZ4VtU7CRt+Ypgo9RGf8+d3gjMBkH7zbkM4zzkhbbMOYiPRaZ+bHZcfihkKLlktTgA6rjshTjF329A==", - "requires": { - "adal-node": "^0.1.28", - "async": "2.6.0", - "moment": "^2.22.2", - "ms-rest": "^2.3.2", - "request": "^2.88.0", - "uuid": "^3.2.1" - } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } - } - }, - "azure-devops-node-api": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-11.0.1.tgz", - "integrity": "sha512-YMdjAw9l5p/6leiyIloxj3k7VIvYThKjvqgiQn88r3nhT93ENwsoDS3A83CyJ4uTWzCZ5f5jCi6c27rTU5Pz+A==", - "dev": true, - "requires": { - "tunnel": "0.0.6", - "typed-rest-client": "^1.8.4" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", - "dev": true, - "requires": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - } - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dev": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-equal-constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" - }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", - "dev": true - }, - "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 - }, - "buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", - "dev": true - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - }, - "cacheable-lookup": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==" - }, - "cacheable-request": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", - "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "chai": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.4.tgz", - "integrity": "sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA==", - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - } - }, - "chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", - "dev": true, - "requires": { - "traverse": ">=0.3.0 <0.4" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" - }, - "charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=" - }, - "cheerio": { - "version": "1.0.0-rc.10", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", - "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", - "dev": true, - "requires": { - "cheerio-select": "^1.5.0", - "dom-serializer": "^1.3.2", - "domhandler": "^4.2.0", - "htmlparser2": "^6.1.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "tslib": "^2.2.0" - }, - "dependencies": { - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", - "dev": true - } - } - }, - "cheerio-select": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", - "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", - "dev": true, - "requires": { - "css-select": "^4.1.3", - "css-what": "^5.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0", - "domutils": "^2.7.0" - } - }, - "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", - "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==" - }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==" - }, - "clipboardy": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", - "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", - "dev": true, - "requires": { - "arch": "^2.1.1", - "execa": "^1.0.0", - "is-wsl": "^2.1.1" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "is-fullwidth-code-point": { - "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==" - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", - "requires": { - "mimic-response": "^1.0.0" - }, - "dependencies": { - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - } - } - }, - "cls-hooked": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/cls-hooked/-/cls-hooked-4.2.2.tgz", - "integrity": "sha512-J4Xj5f5wq/4jAvcdgoGsL3G103BtWpZrMo8NEinRltN+xpTZdI+M38pyQqhuFU/P792xkMFvnKSf+Lm81U1bxw==", - "requires": { - "async-hook-jl": "^1.7.6", - "emitter-listener": "^1.0.1", - "semver": "^5.4.1" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "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==", - "requires": { - "color-name": "~1.1.4" - } - }, - "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==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "optional": true - }, - "compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", - "dev": true - }, - "compress-commons": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-2.1.1.tgz", - "integrity": "sha512-eVw6n7CnEMFzc3duyFVrQEuY1BlHR3rYsSztyG32ibGMW722i3C6IizEGMFmfMU+A+fALvBIwxN3czffTcdA+Q==", - "requires": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^3.0.1", - "normalize-path": "^3.0.0", - "readable-stream": "^2.3.6" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "requires": { - "safe-buffer": "5.1.2" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "continuation-local-storage": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/continuation-local-storage/-/continuation-local-storage-3.2.1.tgz", - "integrity": "sha512-jx44cconVqkCEEyLSKWwkvUXwO561jXMa3LPjTPsm5QR22PA0/mhe33FT4Xb5y74JDvt/Cq+5lm8S8rskLv9ZA==", - "requires": { - "async-listener": "^0.6.0", - "emitter-listener": "^1.1.1" - } - }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "crc": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", - "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", - "requires": { - "buffer": "^5.1.0" - } - }, - "crc32-stream": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-3.0.1.tgz", - "integrity": "sha512-mctvpXlbzsvK+6z8kJwSJ5crm7yBwrQMTybJzMw1O4lLGJqjlDCXY2Zw7KheiA6XBEcBmfLx1D88mjRGVJtY9w==", - "requires": { - "crc": "^3.4.4", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" - }, - "cryptr": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/cryptr/-/cryptr-6.0.2.tgz", - "integrity": "sha512-1TRHI4bmuLIB8WgkH9eeYXzhEg1T4tonO4vVaMBKKde8Dre51J68nAgTVXTwMYXAf7+mV2gBCkm/9wksjSb2sA==" - }, - "css-select": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", - "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^5.0.0", - "domhandler": "^4.2.0", - "domutils": "^2.6.0", - "nth-check": "^2.0.0" - } - }, - "css-what": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", - "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-utils": { - "version": "1.2.21", - "resolved": "https://registry.npmjs.org/date-utils/-/date-utils-1.2.21.tgz", - "integrity": "sha1-YfsWzcEnSzyayq/+n8ad+HIKK2Q=" - }, - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true - }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "requires": { - "mimic-response": "^2.0.0" - } - }, - "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "requires": { - "clone": "^1.0.2" - } - }, - "defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==" - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "denodeify": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz", - "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, - "diagnostic-channel": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/diagnostic-channel/-/diagnostic-channel-0.3.1.tgz", - "integrity": "sha512-6eb9YRrimz8oTr5+JDzGmSYnXy5V7YnK5y/hd8AUDK1MssHjQKm9LlD6NSrHx4vMDF3+e/spI2hmWTviElgWZA==", - "requires": { - "semver": "^5.3.0" - } - }, - "diagnostic-channel-publishers": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-0.4.4.tgz", - "integrity": "sha512-l126t01d2ZS9EreskvEtZPrcgstuvH3rbKy82oUhUrVmBaGx4hO9wECdl3cvZbKDYjMF3QJDB5z5dL9yWAjvZQ==" - }, - "diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true - }, - "domhandler": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", - "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", - "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==" - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "emitter-listener": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/emitter-listener/-/emitter-listener-1.1.2.tgz", - "integrity": "sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ==", - "requires": { - "shimmer": "^1.2.0" - } - }, - "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==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, - "enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "dev": true, - "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.9", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } - } - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "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 - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "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 - } - } - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - } - }, - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - }, - "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" - }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "requires": { - "@types/yauzl": "^2.9.1", - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "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==" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastq": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.12.0.tgz", - "integrity": "sha512-VNX0QkHK3RsXVKr9KrlUv/FoTa0NdbYoHHl7uXHv2rzyHSlxjdNAKug2twd9luJxpcyNeAgf5iPPMutJO67Dfg==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "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, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true - }, - "follow-redirects": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.2.tgz", - "integrity": "sha512-yLR6WaE2lbF0x4K2qE2p9PEXKLDjUjnR/xmjS3wHAYxtlsI9MLLBJUZirAHKzUZDGLxje7w/cXR49WOUo4rbsA==" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - } - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=" - }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "requires": { - "pump": "^3.0.0" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "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, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - }, - "dependencies": { - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } - } - }, - "globby": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", - "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - }, - "got": { - "version": "11.8.2", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.2.tgz", - "integrity": "sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==", - "requires": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.1", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "dependencies": { - "decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "requires": { - "mimic-response": "^3.1.0" - } - }, - "mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" - } - } - }, - "graceful-fs": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "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==" - } - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" - }, - "http-close": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/http-close/-/http-close-1.0.0.tgz", - "integrity": "sha512-lqMabfHDuVOlz4nd3uJCfClyFs/CRCwT2abwBcGTXjdfiX5vJdt7UIolFPqORBPoRZJItliNsXJKPd9+YFAR4A==", - "requires": { - "debug": "^4.1.1" - } - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - } - } - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "http2-wrapper": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", - "requires": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - } - }, - "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" - }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "inquirer": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz", - "integrity": "sha512-DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q==", - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.3.0", - "run-async": "^2.4.0", - "rxjs": "^7.2.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "is-fullwidth-code-point": { - "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==" - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "install": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/install/-/install-0.13.0.tgz", - "integrity": "sha512-zDml/jzr2PKU9I8J/xyZBQn8rPCAY//UOYNmR01XwNwyfhEWObo2SWfSl1+0tm1u6PhxLwDnfsT/6jB7OUxqFA==" - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==" - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==" - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "jpeg-js": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.3.tgz", - "integrity": "sha512-ru1HWKek8octvUHFHvE5ZzQ1yAsJmIvRdGWvSoKV52XKyuyYA437QWDttXT8eZXDSbuMpHlLzPDZUPd6idIz+Q==", - "dev": true - }, - "js-base64": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.6.1.tgz", - "integrity": "sha512-Frdq2+tRRGLQUIQOgsIGSCd1VePCS2fsddTG5dTCqR0JHgltXWfsxnY0gIXPoMeRmdom6Oyq+UMOFg5suduOjQ==" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "requires": { - "argparse": "^2.0.1" - } - }, - "jsbi": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsbi/-/jsbi-3.2.1.tgz", - "integrity": "sha512-NzcT09wuJReIO829enrY3yRdHFz+ciVIq01PCGPkHlwIv5Dj9v2F4daQ4akwuPHf6xO/oii4Jrd3BsPepOxXrg==" - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "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==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "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==" - }, - "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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - } - } - }, - "jsonschema": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.0.tgz", - "integrity": "sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw==" - }, - "jsonwebtoken": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", - "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", - "requires": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^5.6.0" - } - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "jszip": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.7.1.tgz", - "integrity": "sha512-ghL0tz1XG9ZEmRMcEN2vt7xabrDdqHHeykgARpmZ0BiIctWxM47Vt63ZO2dnp4QYt/xJVLLy5Zv1l/xRdh2byg==", - "dev": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" - } - }, - "jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "requires": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "requires": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, - "jwt-decode": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz", - "integrity": "sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A==" - }, - "keytar": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/keytar/-/keytar-7.7.0.tgz", - "integrity": "sha512-YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A==", - "requires": { - "node-addon-api": "^3.0.0", - "prebuild-install": "^6.0.0" - } - }, - "keyv": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", - "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", - "requires": { - "json-buffer": "3.0.1" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klaw": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", - "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "requires": { - "readable-stream": "^2.0.5" - } - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "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, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", - "dev": true, - "requires": { - "immediate": "~3.0.5" - } - }, - "linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", - "dev": true, - "requires": { - "uc.micro": "^1.0.1" - } - }, - "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, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" - }, - "lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" - }, - "lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" - }, - "lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" - }, - "lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" - }, - "lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" - }, - "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 - }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" - }, - "lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, - "lodash.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "markdown-it": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", - "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "entities": "~2.0.0", - "linkify-it": "^2.0.0", - "mdurl": "^1.0.1", - "uc.micro": "^1.0.5" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - } - } - }, - "md5": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", - "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", - "requires": { - "charenc": "0.0.2", - "crypt": "0.0.2", - "is-buffer": "~1.1.6" - } - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" - }, - "mime-db": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", - "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" - }, - "mime-types": { - "version": "2.1.32", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", - "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", - "requires": { - "mime-db": "1.49.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" - }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, - "mocha": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", - "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", - "dev": true, - "requires": { - "@ungap/promise-all-settled": "1.1.2", - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.1", - "debug": "4.3.1", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.1.6", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "4.0.0", - "log-symbols": "4.0.0", - "minimatch": "3.0.4", - "ms": "2.1.3", - "nanoid": "3.1.20", - "serialize-javascript": "5.0.1", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "which": "2.0.2", - "wide-align": "1.1.3", - "workerpool": "6.1.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "js-yaml": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", - "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", - "dev": true, - "requires": { - "chalk": "^4.0.0" - } - }, - "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 - }, - "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 - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true - } - } - }, - "moment": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", - "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" - }, - "monaco-page-objects": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/monaco-page-objects/-/monaco-page-objects-1.6.3.tgz", - "integrity": "sha512-vMFBgsY3+MkrG0ATMtWisND9OT1MLERmjbDkkGDbGMTyC/RdrFOQMr7NfXNI/vbSmXsZOj9CmC6hYOVFnKlkyg==", - "dev": true, - "requires": { - "clipboardy": "^2.3.0", - "clone-deep": "^4.0.1", - "compare-versions": "^3.5.1", - "fs-extra": "^10.0.0", - "ts-essentials": "^7.0.2" - }, - "dependencies": { - "fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true - } - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "ms-rest": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.4.tgz", - "integrity": "sha512-VeqCbawxRM6nhw0RKNfj7TWL7SL8PB6MypqwgylXCi+u412uvYoyY/kSmO8n06wyd8nIcnTbYToCmSKFMI1mCg==", - "requires": { - "duplexer": "^0.1.1", - "is-buffer": "^1.1.6", - "is-stream": "^1.1.0", - "moment": "^2.21.0", - "request": "^2.88.0", - "through": "^2.3.8", - "tunnel": "0.0.5", - "uuid": "^3.2.1" - }, - "dependencies": { - "tunnel": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.5.tgz", - "integrity": "sha512-gj5sdqherx4VZKMcBA4vewER7zdK25Td+z1npBqpbDys4eJrLx+SlYjJvq1bDXs2irkuJM5pf8ktaEQVipkrbA==" - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } - } - }, - "ms-rest-azure": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ms-rest-azure/-/ms-rest-azure-3.0.0.tgz", - "integrity": "sha512-cttN01/TtMDB4v3rt/WQ/slgffB6jcUYxcPzcL0VNSB+WFPE1j4y5ICNHMuD1RaNNekCYMI4Pv51BDQ/BXNq7Q==", - "requires": { - "adal-node": "^0.1.28", - "async": "2.6.0", - "moment": "^2.22.2", - "ms-rest": "^2.3.2", - "request": "^2.88.0", - "uuid": "^3.2.1" - }, - "dependencies": { - "@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" - }, - "adal-node": { - "version": "0.1.28", - "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", - "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", - "requires": { - "@types/node": "^8.0.47", - "async": ">=0.6.0", - "date-utils": "*", - "jws": "3.x.x", - "request": ">= 2.52.0", - "underscore": ">= 1.3.1", - "uuid": "^3.1.0", - "xmldom": ">= 0.1.x", - "xpath.js": "~1.1.0" - } - }, - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "requires": { - "lodash": "^4.14.0" - } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } - } - }, - "msal": { - "version": "1.4.12", - "resolved": "https://registry.npmjs.org/msal/-/msal-1.4.12.tgz", - "integrity": "sha512-gjupwQ6nvNL6mZkl5NIXyUmZhTiEMRu5giNdgHMh8l5EPOnV2Xj6nukY1NIxFacSTkEYUSDB47Pej9GxDYf+1w==", - "requires": { - "tslib": "^1.9.3" - } - }, - "mustache": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", - "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==" - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" - }, - "nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", - "dev": true - }, - "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, - "native-duplexpair": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz", - "integrity": "sha1-eJkHjmS/PIo9cyYBs9QP8F21j6A=" - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" - }, - "neverthrow": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/neverthrow/-/neverthrow-3.2.0.tgz", - "integrity": "sha512-AINA32QbYO83L+3CBI6I5lH4LpBSlLwWteJ+uI25s4AQy6g/xz3RZuedmuNo91lLw2rY+AbPEPQdxd7mg1rXoQ==" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "node-abi": { - "version": "2.30.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz", - "integrity": "sha512-g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg==", - "requires": { - "semver": "^5.4.1" - } - }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==" - }, - "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" - }, - "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==" - }, - "node-machine-id": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", - "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==" - }, - "node-ts-uuid": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/node-ts-uuid/-/node-ts-uuid-1.0.8.tgz", - "integrity": "sha512-o/qbHffN0uI2SYDxqc5vuMrWHZe7MV2XdCimsJz4hnbus/9yEw6OdshXqbmDFCpFKUzrKePb8zXPwWOGCPqTCw==" - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - }, - "dependencies": { - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - } - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "nth-check": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", - "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/open/-/open-8.2.1.tgz", - "integrity": "sha512-rXILpcQlkF/QuFez2BJDf3GsqpjGKbkUUToAIGo9A0Q6ZkoSGogZJulrUdwRkrAsoQvoZsrjCYt8+zblOk7JQQ==", - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "openapi-types": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-7.2.3.tgz", - "integrity": "sha512-olbaNxz12R27+mTyJ/ZAFEfUruauHH27AkeQHDHRq5AF0LdNkK1SSV7EourXQDK+4aX7dv2HtyirAGK06WMAsA==" - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "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.3" - } - }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "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, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "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, - "requires": { - "p-limit": "^3.0.2" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "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, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-semver": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz", - "integrity": "sha1-mkr9bfBj3Egm+T+6SpnPIj9mbLg=", - "dev": true, - "requires": { - "semver": "^5.1.0" - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "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 - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "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 - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==" - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true - }, - "playwright": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.14.0.tgz", - "integrity": "sha512-aR5oZ1iVsjQkGfYCjgYAmyMAVu0MQ0i8MgdnfdqDu9EVLfbnpuuFmTv/Rb7/Yjno1kOrDUP9+RyNC+zfG3wozA==", - "dev": true, - "requires": { - "commander": "^6.1.0", - "debug": "^4.1.1", - "extract-zip": "^2.0.1", - "https-proxy-agent": "^5.0.0", - "jpeg-js": "^0.4.2", - "mime": "^2.4.6", - "pngjs": "^5.0.0", - "progress": "^2.0.3", - "proper-lockfile": "^4.1.1", - "proxy-from-env": "^1.1.0", - "rimraf": "^3.0.2", - "stack-utils": "^2.0.3", - "ws": "^7.4.6", - "yazl": "^2.5.1" - }, - "dependencies": { - "commander": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", - "dev": true - } - } - }, - "pngjs": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", - "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==", - "dev": true - }, - "prebuild-install": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", - "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", - "requires": { - "detect-libc": "^1.0.3", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^2.21.0", - "npmlog": "^4.0.1", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^3.0.3", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - } - }, - "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 - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "proper-lockfile": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", - "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", - "requires": { - "graceful-fs": "^4.2.4", - "retry": "^0.12.0", - "signal-exit": "^3.0.2" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "querystring": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz", - "integrity": "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==" - }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", - "dev": true, - "requires": { - "mute-stream": "~0.0.4" - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "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==" - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" - }, - "resolve-alpn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.0.tgz", - "integrity": "sha512-e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA==" - }, - "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==", - "dev": true - }, - "responselike": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", - "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", - "requires": { - "lowercase-keys": "^2.0.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=" - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==" - }, - "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==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.3.0.tgz", - "integrity": "sha512-p2yuGIg9S1epc3vrjKf6iVb3RCaAYjYskkO+jHIaV0IjOPlJop4UnodOoFb2xeNwlguqLYvGw1b1McillYb5Gw==", - "requires": { - "tslib": "~2.1.0" - }, - "dependencies": { - "tslib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", - "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==" - } - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sanitize-filename": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", - "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", - "dev": true, - "requires": { - "truncate-utf8-bytes": "^1.0.0" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "selenium-webdriver": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", - "integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==", - "dev": true, - "requires": { - "jszip": "^3.1.3", - "rimraf": "^2.5.4", - "tmp": "0.0.30", - "xml2js": "^0.4.17" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "tmp": { - "version": "0.0.30", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", - "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.1" - } - } - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.7.2", - "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" - } - } - }, - "serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.1" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "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, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "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 - }, - "shimmer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", - "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==" - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz", - "integrity": "sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==", - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "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==", - "dev": true - } - } - }, - "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 - }, - "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "stack-chain": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/stack-chain/-/stack-chain-1.3.7.tgz", - "integrity": "sha1-0ZLJ/06moiyUxN1FkXHj8AzqEoU=" - }, - "stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", - "dev": true, - "requires": { - "escape-string-regexp": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - } - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" - }, - "stoppable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", - "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==" - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "sudo-prompt": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", - "integrity": "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==" - }, - "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==", - "requires": { - "has-flag": "^4.0.0" - } - }, - "table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", - "dev": true, - "requires": { - "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", - "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "is-fullwidth-code-point": { - "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==", - "dev": true - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "targz": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/targz/-/targz-1.0.1.tgz", - "integrity": "sha1-j3alI2lM3t+7XWCkB2/27uzFOY8=", - "dev": true, - "requires": { - "tar-fs": "^1.8.1" - }, - "dependencies": { - "bl": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", - "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", - "dev": true, - "requires": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "pump": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", - "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "tar-fs": { - "version": "1.16.3", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz", - "integrity": "sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==", - "dev": true, - "requires": { - "chownr": "^1.0.1", - "mkdirp": "^0.5.1", - "pump": "^1.0.0", - "tar-stream": "^1.1.2" - } - }, - "tar-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", - "dev": true, - "requires": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" - } - } - } - }, - "tedious": { - "version": "9.2.3", - "resolved": "https://registry.npmjs.org/tedious/-/tedious-9.2.3.tgz", - "integrity": "sha512-+mI2r/5mqxpTHKBZ/SW+NNH2MK5i3Pwwkw0gF5ZrS2wf2uT/03bLSss8nm7xh604abJXyjx0sirhwH63H328qA==", - "requires": { - "@azure/ms-rest-nodeauth": "^3.0.6", - "@js-joda/core": "^3.1.0", - "adal-node": "^0.1.28", - "bl": "^3.0.0", - "depd": "^2.0.0", - "iconv-lite": "^0.6.2", - "jsbi": "^3.1.3", - "native-duplexpair": "^1.0.0", - "punycode": "^2.1.0", - "readable-stream": "^3.6.0", - "sprintf-js": "^1.1.2" - }, - "dependencies": { - "@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" - }, - "adal-node": { - "version": "0.1.28", - "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", - "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", - "requires": { - "@types/node": "^8.0.47", - "async": ">=0.6.0", - "date-utils": "*", - "jws": "3.x.x", - "request": ">= 2.52.0", - "underscore": ">= 1.3.1", - "uuid": "^3.1.0", - "xmldom": ">= 0.1.x", - "xpath.js": "~1.1.0" - } - }, - "bl": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-3.0.1.tgz", - "integrity": "sha512-jrCW5ZhfQ/Vt07WX1Ngs+yn9BDqPL/gw28S7s9H6QK/gupnizNzJAss5akW20ISgOrbLTlXOOCTJeNUQqruAWQ==", - "requires": { - "readable-stream": "^3.0.1" - } - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-buffer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" - }, - "tough-cookie": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", - "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", - "requires": { - "ip-regex": "^2.1.0", - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "traverse": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", - "dev": true - }, - "tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==" - }, - "truncate-utf8-bytes": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", - "integrity": "sha1-QFkjkJWS1W94pYGENLC3hInKXys=", - "dev": true, - "requires": { - "utf8-byte-length": "^1.0.1" - } - }, - "ts-essentials": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz", - "integrity": "sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==", - "dev": true - }, - "ts-node": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", - "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", - "dev": true, - "requires": { - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "source-map-support": "^0.5.17", - "yn": "3.1.1" - }, - "dependencies": { - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - } - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==" - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-rest-client": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.5.tgz", - "integrity": "sha512-952/Aegu3lTqUAI1anbDLbewojnF/gh8at9iy1CIrfS1h/+MtNjB1Y9z6ZF5n2kZd+97em56lZ9uu7Zz3y/pwg==", - "dev": true, - "requires": { - "qs": "^6.9.1", - "tunnel": "0.0.6", - "underscore": "^1.12.1" - } - }, - "typedi": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/typedi/-/typedi-0.10.0.tgz", - "integrity": "sha512-v3UJF8xm68BBj6AF4oQML3ikrfK2c9EmZUyLOfShpJuItAqVBHWP/KtpGinkSsIiP6EZyyb6Z3NXyW9dgS9X1w==" - }, - "typescript": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", - "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", - "dev": true - }, - "uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "dev": true - }, - "underscore": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz", - "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==" - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "unzip-stream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/unzip-stream/-/unzip-stream-0.3.1.tgz", - "integrity": "sha512-RzaGXLNt+CW+T41h1zl6pGz3EaeVhYlK+rdAap+7DxW5kqsqePO8kRtWPaCiVqdhZc86EctSPVYNix30YOMzmw==", - "dev": true, - "requires": { - "binary": "^0.3.0", - "mkdirp": "^0.5.1" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { - "punycode": "^2.1.0" - } - }, - "url-join": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz", - "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=", - "dev": true - }, - "url-parse": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.3.tgz", - "integrity": "sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==", - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "utf8-byte-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", - "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, - "validator": { - "version": "13.6.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-13.6.0.tgz", - "integrity": "sha512-gVgKbdbHgtxpRyR8K0O6oFZPhhB5tT1jeEHZR0Znr9Svg03U0+r9DXWMrnRAB+HtCStDQKlaIZm42tVsVjqtjg==" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vsce": { - "version": "1.96.1", - "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.96.1.tgz", - "integrity": "sha512-KnEVqjfc1dXrpZsbJ8J7B9VQ7GAAx8o5RqBNk42Srv1KF9+e2/aXchQHe9QZxeUs/FiliHoMGpGvnHTXwKIT2A==", - "dev": true, - "requires": { - "azure-devops-node-api": "^11.0.1", - "chalk": "^2.4.2", - "cheerio": "^1.0.0-rc.9", - "commander": "^6.1.0", - "denodeify": "^1.2.1", - "glob": "^7.0.6", - "leven": "^3.1.0", - "lodash": "^4.17.15", - "markdown-it": "^10.0.0", - "mime": "^1.3.4", - "minimatch": "^3.0.3", - "osenv": "^0.1.3", - "parse-semver": "^1.1.1", - "read": "^1.0.7", - "semver": "^5.1.0", - "tmp": "^0.2.1", - "typed-rest-client": "^1.8.4", - "url-join": "^1.1.0", - "yauzl": "^2.3.1", - "yazl": "^2.2.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - } - } - }, - "vscode-extension-tester": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/vscode-extension-tester/-/vscode-extension-tester-4.1.2.tgz", - "integrity": "sha512-QWy7BBS8zdsWMj7/okpb8aJ/+16BelZzqLrJd2zYZJbzepxxrXZhpE034HmLlMdEnvTqN9yM94uVLz1CcZS6KA==", - "dev": true, - "requires": { - "@types/selenium-webdriver": "^3.0.15", - "commander": "^8.0.0", - "compare-versions": "^3.6.0", - "fs-extra": "^10.0.0", - "glob": "^7.1.7", - "js-yaml": "^4.1.0", - "monaco-page-objects": "^1.6.3", - "request": "^2.88.0", - "sanitize-filename": "^1.6.3", - "selenium-webdriver": "^3.0.0", - "targz": "^1.0.1", - "unzip-stream": "^0.3.0", - "vsce": "^1.96.0", - "vscode-extension-tester-locators": "^1.59.0" - }, - "dependencies": { - "commander": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.1.0.tgz", - "integrity": "sha512-mf45ldcuHSYShkplHHGKWb4TrmwQadxOn7v4WuhDJy0ZVoY5JFajaRDKD0PNe5qXzBX0rhovjTnP6Kz9LETcuA==", - "dev": true - }, - "fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true - } - } - }, - "vscode-extension-tester-locators": { - "version": "1.59.0", - "resolved": "https://registry.npmjs.org/vscode-extension-tester-locators/-/vscode-extension-tester-locators-1.59.0.tgz", - "integrity": "sha512-P2nW8PXZjsV1lJzkVQbRV9TvXk0jkc1dDSSzaYkKLksyejgljFwCbgUbC3VxyQZHTH8kQtLxj8HNIM6QAGM9vA==", - "dev": true - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", - "requires": { - "defaults": "^1.0.3" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "workerpool": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", - "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", - "dev": true - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "is-fullwidth-code-point": { - "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==" - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "dev": true - }, - "xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - } - }, - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" - }, - "xmldom": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.6.0.tgz", - "integrity": "sha512-iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg==" - }, - "xpath.js": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xpath.js/-/xpath.js-1.1.0.tgz", - "integrity": "sha512-jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==" - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "is-fullwidth-code-point": { - "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==" - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" - }, - "yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "requires": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - } - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3" - } - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - }, - "z-schema": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.1.tgz", - "integrity": "sha512-Gp8xU2lULhREqTWj9t4BEAeA7M835n4fWJ9KjGWksV3wmLUdOJo2hAr+QYvkVZIGOOTyeN274g1f95dKRsgYgQ==", - "requires": { - "commander": "^2.7.1", - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^13.6.0" - } - }, - "zip-a-folder": { - "version": "0.0.12", - "resolved": "https://registry.npmjs.org/zip-a-folder/-/zip-a-folder-0.0.12.tgz", - "integrity": "sha512-wZGiWgp3z2TocBlzx3S5tsLgPbT39qG2uIZmn2MhYLVjhKIr2nMhg7i4iPDL4W3XvMDaOEEVU5ZB0Y/Pt6BLvA==", - "requires": { - "archiver": "^3.1.1" - } - }, - "zip-stream": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.1.3.tgz", - "integrity": "sha512-EkXc2JGcKhO5N5aZ7TmuNo45budRaFGHOmz24wtJR7znbNqDPmdZtUauKX6et8KAVseAMBOyWJqEpXcHTBsh7Q==", - "requires": { - "archiver-utils": "^2.1.0", - "compress-commons": "^2.1.1", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - } - } -} diff --git a/packages/p1/package.json b/packages/p1/package.json deleted file mode 100644 index 9c84af5c..00000000 --- a/packages/p1/package.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "name": "lerna-test-pkg1", - "version": "0.16.0-alpha.1", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "long odd codeasdf", - "license": "MIT", - "gitHead": "1441c53643c5d246fdf6fb4f3ab8e261cf5e0bd8", - "devDependencies": { - "@mochajs/json-file-reporter": "^1.3.0", - "@types/chai": "^4.2.19", - "@types/fs-extra": "^9.0.11", - "@types/keytar": "^4.4.2", - "@types/mocha": "^8.2.2", - "@types/node": "^14.17.4", - "@types/uuid": "^8.3.0", - "@typescript-eslint/eslint-plugin": "^4.28.1", - "@typescript-eslint/parser": "^4.28.1", - "chai": "^4.3.4", - "eslint": "^7.29.0", - "fs-extra": "^9.1.0", - "mocha": "^8.4.0", - "playwright": "^1.12.3", - "rimraf": "^3.0.2", - "ts-node": "^9.1.1", - "typescript": "^4.3.5", - "uuid": "^8.3.2", - "vscode-extension-tester": "^4.1.0" - }, - "dependencies": { - "@azure/msal-node": "^1.2.0", - "@microsoft/teamsfx-cli": "^0.3.0", - "axios": "^0.21.1", - "dotenv": "^8.2.0", - "querystring": "^0.2.1" - } -} diff --git a/packages/p1/tsconfig.json b/packages/p1/tsconfig.json deleted file mode 100644 index a1443555..00000000 --- a/packages/p1/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "compilerOptions": { - "module": "commonjs", - "target": "es6", - "outDir": "out", - "lib": ["es6", "dom", "esnext.asynciterable"], - "sourceMap": true, - "rootDir": "src", - "resolveJsonModule": true, - "skipLibCheck": true, - "strict": true /* enable all strict type-checking options */, - "jsx": "react" - /* Additional Checks */ - // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ - // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - }, - "include": ["src"], - "exclude": ["node_modules", ".test-resources"], - } diff --git a/packages/p2/2.md b/packages/p2/2.md deleted file mode 100644 index 0cfbf088..00000000 --- a/packages/p2/2.md +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/packages/p2/LICENSE b/packages/p2/LICENSE deleted file mode 100644 index 8f7691b7..00000000 --- a/packages/p2/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 Long Hao - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/packages/p2/package-lock.json b/packages/p2/package-lock.json deleted file mode 100644 index eafb67f7..00000000 --- a/packages/p2/package-lock.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "lerna-test-pkg2", - "version": "0.16.0-alpha.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "lerna-test-pkg1": { - "version": "0.13.1-rc.0", - "resolved": "https://registry.npmjs.org/lerna-test-pkg1/-/lerna-test-pkg1-0.13.1-rc.0.tgz", - "integrity": "sha512-VtUH7QSSzmPrfa+9F2rMfE1GDB+o1Won2zM3HyTeu0M0rnQwB5GR4g8InWCwUyZXTBJXvmrCNx2PTGhVxEmNTw==" - } - } -} diff --git a/packages/p2/package.json b/packages/p2/package.json deleted file mode 100644 index ee353162..00000000 --- a/packages/p2/package.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "lerna-test-pkg2", - "version": "0.16.0-alpha.1", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "dependencies": { - "lerna-test-pkg1": "^0.13.1-rc.0" - }, - "author": "long", - "license": "MIT", - "gitHead": "1441c53643c5d246fdf6fb4f3ab8e261cf5e0bd8" -} diff --git a/packages/p3/3.md b/packages/p3/3.md deleted file mode 100644 index 2f4e349d..00000000 --- a/packages/p3/3.md +++ /dev/null @@ -1 +0,0 @@ -sdf diff --git a/packages/p3/LICENSE b/packages/p3/LICENSE deleted file mode 100644 index 8f7691b7..00000000 --- a/packages/p3/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 Long Hao - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/packages/p3/package-lock.json b/packages/p3/package-lock.json deleted file mode 100644 index d6575a52..00000000 --- a/packages/p3/package-lock.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "lerna-test-pkg3", - "version": "0.16.0-alpha.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "lerna-test-pkg1": { - "version": "0.9.22-alpha.5", - "resolved": "https://registry.npmjs.org/lerna-test-pkg1/-/lerna-test-pkg1-0.9.22-alpha.5.tgz", - "integrity": "sha512-HMEfBRYwakie1K80vL0row/ID0skseFCyLsGy9FSiAdf/U6tm14BtlYlc+WpmX5ZQMS+q0M6tujleNL/dHkyDQ==" - }, - "lerna-test-pkg2": { - "version": "0.9.22-alpha.5", - "resolved": "https://registry.npmjs.org/lerna-test-pkg2/-/lerna-test-pkg2-0.9.22-alpha.5.tgz", - "integrity": "sha512-5YtoeUUr2aBkTTzXdF7/v/xJK3e4QUqo5hbjMXxn4VN4jaQcvekluMQ86O4P5djtHtG6IRriu8/l2wHrZeQThw==", - "requires": { - "lerna-test-pkg1": "^0.9.22-alpha.5" - }, - "dependencies": { - "lerna-test-pkg1": { - "version": "0.9.22-alpha.5", - "resolved": "https://registry.npmjs.org/lerna-test-pkg1/-/lerna-test-pkg1-0.9.22-alpha.5.tgz", - "integrity": "sha512-HMEfBRYwakie1K80vL0row/ID0skseFCyLsGy9FSiAdf/U6tm14BtlYlc+WpmX5ZQMS+q0M6tujleNL/dHkyDQ==" - } - } - } - } -} diff --git a/packages/p3/package.json b/packages/p3/package.json deleted file mode 100644 index 2e39e542..00000000 --- a/packages/p3/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "lerna-test-pkg3", - "version": "0.16.0-alpha.1", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "dependencies": { - "lerna-test-pkg1": "^0.16.0-alpha.1", - "lerna-test-pkg2": "^0.16.0-alpha.1" - }, - "author": "long", - "license": "MIT", - "gitHead": "1441c53643c5d246fdf6fb4f3ab8e261cf5e0bd8" -} diff --git a/packages/p4/.eslintrc.js b/packages/p4/.eslintrc.js deleted file mode 100644 index f660e395..00000000 --- a/packages/p4/.eslintrc.js +++ /dev/null @@ -1,20 +0,0 @@ -/**@type {import('eslint').Linter.Config} */ -// eslint-disable-next-line no-undef -module.exports = { - root: true, - parser: '@typescript-eslint/parser', - plugins: [ - '@typescript-eslint', - ], - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - ], - rules: { - 'semi': [2, "always"], - '@typescript-eslint/no-unused-vars': 0, - '@typescript-eslint/no-explicit-any': 0, - '@typescript-eslint/explicit-module-boundary-types': 0, - '@typescript-eslint/no-non-null-assertion': 0, - } -}; \ No newline at end of file diff --git a/packages/p4/.vscode/extensions.json b/packages/p4/.vscode/extensions.json deleted file mode 100644 index af515502..00000000 --- a/packages/p4/.vscode/extensions.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - // See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations. - // Extension identifier format: ${publisher}.${name}. Example: vscode.csharp - - // List of extensions which should be recommended for users of this workspace. - "recommendations": [ - "dbaeumer.vscode-eslint" - ] -} \ No newline at end of file diff --git a/packages/p4/.vscode/launch.json b/packages/p4/.vscode/launch.json deleted file mode 100644 index 527cbf4b..00000000 --- a/packages/p4/.vscode/launch.json +++ /dev/null @@ -1,35 +0,0 @@ -// A launch configuration that compiles the extension and then opens it inside a new window -// Use IntelliSense to learn about possible attributes. -// Hover to view descriptions of existing attributes. -// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 -{ - "version": "0.2.0", - "configurations": [{ - "name": "Run Extension", - "type": "extensionHost", - "request": "launch", - "runtimeExecutable": "${execPath}", - "args": [ - "--extensionDevelopmentPath=${workspaceFolder}" - ], - "outFiles": [ - "${workspaceFolder}/out/**/*.js" - ], - "preLaunchTask": "npm: watch" - }, - { - "name": "Run Extension Tests", - "type": "extensionHost", - "request": "launch", - "runtimeExecutable": "${execPath}", - "args": [ - "--extensionDevelopmentPath=${workspaceFolder}", - "--extensionTestsPath=${workspaceFolder}/out/test" - ], - "outFiles": [ - "${workspaceFolder}/out/test/**/*.js" - ], - "preLaunchTask": "npm: watch" - } - ] -} diff --git a/packages/p4/.vscode/settings.json b/packages/p4/.vscode/settings.json deleted file mode 100644 index e46111f1..00000000 --- a/packages/p4/.vscode/settings.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "editor.insertSpaces": false -} \ No newline at end of file diff --git a/packages/p4/.vscode/tasks.json b/packages/p4/.vscode/tasks.json deleted file mode 100644 index 241aa6d9..00000000 --- a/packages/p4/.vscode/tasks.json +++ /dev/null @@ -1,20 +0,0 @@ -// See https://go.microsoft.com/fwlink/?LinkId=733558 -// for the documentation about the tasks.json format -{ - "version": "2.0.0", - "tasks": [ - { - "type": "npm", - "script": "watch", - "problemMatcher": "$tsc-watch", - "isBackground": true, - "presentation": { - "reveal": "never" - }, - "group": { - "kind": "build", - "isDefault": true - } - } - ] -} \ No newline at end of file diff --git a/packages/p4/4.md b/packages/p4/4.md deleted file mode 100644 index b8626c4c..00000000 --- a/packages/p4/4.md +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/packages/p4/README.md b/packages/p4/README.md deleted file mode 100644 index 8cd563e6..00000000 --- a/packages/p4/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# CodeLens Sample - -This is a sample extension that shows the usage of the CodeLens API. - -It is not intended as a production quality extension. - -- Create a new file -- Write anything -- Click on the CodeLens for action example -- Can be enabled or disabled by command palete - -## VS Code API - -### `languages` module - -- [`languages.registerCodeLensProvider`](https://code.visualstudio.com/api/references/vscode-api#languages.registerCodeLensProvider) - -### CodeLens Provider - -- [`CodeLensProvider`](https://code.visualstudio.com/api/references/vscode-api#CodeLensProvider) -- [`CodeLensProvider.provideCodeLenses`](https://code.visualstudio.com/api/references/vscode-api#CodeLensProvider.provideCodeLenses) -- [`CodeLensProvider.resolveCodeLens`](https://code.visualstudio.com/api/references/vscode-api#CodeLensProvider.resolveCodeLens) - -## Running the Sample - -- Run `npm install` in terminal to install dependencies -- Run the `Run Extension` target in the Debug View. This will: - - Start a task `npm: watch` to compile the code - - Run the extension in a new VS Code window diff --git a/packages/p4/demo.gif b/packages/p4/demo.gif deleted file mode 100644 index 3a989fb7c8c9f3fa0f6331cb45852862e3e55f8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 535734 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 yOYJJS&V2s!YVBr7xsA=3fJME-$aBZ1lhT<7 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%0D!?FXwE^5VPpx$U7YH*dAsiE?g`=It>{uZ1 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 { - this._onDidChangeCodeLenses.fire(); - }); - } - provideCodeLenses(document, token) { - if (vscode.workspace.getConfiguration("codelens-sample").get("enableCodeLens", true)) { - this.codeLenses = []; - const regex = new RegExp(this.regex); - const text = document.getText(); - let matches; - while ((matches = regex.exec(text)) !== null) { - const line = document.lineAt(document.positionAt(matches.index).line); - const indexOf = line.text.indexOf(matches[0]); - const position = new vscode.Position(line.lineNumber, indexOf); - const range = document.getWordRangeAtPosition(position, new RegExp(this.regex)); - if (range) { - this.codeLenses.push(new vscode.CodeLens(range)); - } - } - return this.codeLenses; - } - return []; - } - resolveCodeLens(codeLens, token) { - if (vscode.workspace.getConfiguration("codelens-sample").get("enableCodeLens", true)) { - codeLens.command = { - title: "Codelens provided by sample extension", - tooltip: "Tooltip provided by sample extension", - command: "codelens-sample.codelensAction", - arguments: ["Argument 1", false] - }; - return codeLens; - } - return null; - } -} -exports.CodelensProvider = CodelensProvider; -//# sourceMappingURL=CodelensProvider.js.map \ No newline at end of file diff --git a/packages/p4/out/CodelensProvider.js.map b/packages/p4/out/CodelensProvider.js.map deleted file mode 100644 index 6a3d9b6a..00000000 --- a/packages/p4/out/CodelensProvider.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CodelensProvider.js","sourceRoot":"","sources":["../src/CodelensProvider.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC;;GAEG;AACH,MAAa,gBAAgB;IAOzB;QALQ,eAAU,GAAsB,EAAE,CAAC;QAEnC,2BAAsB,GAA8B,IAAI,MAAM,CAAC,YAAY,EAAQ,CAAC;QAC5E,0BAAqB,GAAuB,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAG1F,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;QAErB,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5C,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,iBAAiB,CAAC,QAA6B,EAAE,KAA+B;QAEnF,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,EAAE;YAClF,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,OAAO,CAAC;YACZ,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE;gBAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;gBACtE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9C,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAC/D,MAAM,KAAK,GAAG,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,IAAI,KAAK,EAAE;oBACP,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;iBACpD;aACJ;YACD,OAAO,IAAI,CAAC,UAAU,CAAC;SAC1B;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,eAAe,CAAC,QAAyB,EAAE,KAA+B;QAC7E,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,EAAE;YAClF,QAAQ,CAAC,OAAO,GAAG;gBACf,KAAK,EAAE,uCAAuC;gBAC9C,OAAO,EAAE,sCAAsC;gBAC/C,OAAO,EAAE,gCAAgC;gBACzC,SAAS,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC;aACnC,CAAC;YACF,OAAO,QAAQ,CAAC;SACnB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAhDD,4CAgDC"} \ No newline at end of file diff --git a/packages/p4/out/extension.js b/packages/p4/out/extension.js deleted file mode 100644 index bef2eb15..00000000 --- a/packages/p4/out/extension.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.deactivate = exports.activate = void 0; -// The module 'vscode' contains the VS Code extensibility API -// Import the module and reference it with the alias vscode in your code below -const vscode_1 = require("vscode"); -const CodelensProvider_1 = require("./CodelensProvider"); -// this method is called when your extension is activated -// your extension is activated the very first time the command is executed -let disposables = []; -function activate(context) { - const codelensProvider = new CodelensProvider_1.CodelensProvider(); - vscode_1.languages.registerCodeLensProvider("*", codelensProvider); - vscode_1.commands.registerCommand("codelens-sample.enableCodeLens", () => { - vscode_1.workspace.getConfiguration("codelens-sample").update("enableCodeLens", true, true); - }); - vscode_1.commands.registerCommand("codelens-sample.disableCodeLens", () => { - vscode_1.workspace.getConfiguration("codelens-sample").update("enableCodeLens", false, true); - }); - vscode_1.commands.registerCommand("codelens-sample.codelensAction", (args) => { - vscode_1.window.showInformationMessage(`CodeLens action clicked with args=${args}`); - }); -} -exports.activate = activate; -// this method is called when your extension is deactivated -function deactivate() { - if (disposables) { - disposables.forEach(item => item.dispose()); - } - disposables = []; -} -exports.deactivate = deactivate; -//# sourceMappingURL=extension.js.map \ No newline at end of file diff --git a/packages/p4/out/extension.js.map b/packages/p4/out/extension.js.map deleted file mode 100644 index f6a569f0..00000000 --- a/packages/p4/out/extension.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":";;;AAAA,6DAA6D;AAC7D,8EAA8E;AAC9E,mCAA8F;AAC9F,yDAAsD;AAEtD,yDAAyD;AACzD,0EAA0E;AAE1E,IAAI,WAAW,GAAiB,EAAE,CAAC;AAEnC,SAAgB,QAAQ,CAAC,OAAyB;IAC9C,MAAM,gBAAgB,GAAG,IAAI,mCAAgB,EAAE,CAAC;IAEhD,kBAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAE1D,iBAAQ,CAAC,eAAe,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC5D,kBAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,iBAAQ,CAAC,eAAe,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC7D,kBAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IAEH,iBAAQ,CAAC,eAAe,CAAC,gCAAgC,EAAE,CAAC,IAAS,EAAE,EAAE;QACrE,eAAM,CAAC,sBAAsB,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACP,CAAC;AAhBD,4BAgBC;AAED,2DAA2D;AAC3D,SAAgB,UAAU;IACtB,IAAI,WAAW,EAAE;QACb,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;KAC/C;IACD,WAAW,GAAG,EAAE,CAAC;AACrB,CAAC;AALD,gCAKC"} \ No newline at end of file diff --git a/packages/p4/package-lock.json b/packages/p4/package-lock.json deleted file mode 100644 index c46f3076..00000000 --- a/packages/p4/package-lock.json +++ /dev/null @@ -1,1281 +0,0 @@ -{ - "name": "lerna-test-pkg4", - "version": "0.8.0-alpha.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", - "dev": true - }, - "@babel/highlight": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz", - "integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - } - } - }, - "@eslint/eslintrc": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", - "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", - "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.4", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", - "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", - "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.4", - "fastq": "^1.6.0" - } - }, - "@types/json-schema": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", - "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", - "dev": true - }, - "@types/node": { - "version": "12.12.35", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.35.tgz", - "integrity": "sha512-ASYsaKecA7TUsDrqIGPNk3JeEox0z/0XR/WsJJ8BIX/9+SkMSImQXKWfU/yBrSyc7ZSE/NPqLu36Nur0miCFfQ==", - "dev": true - }, - "@types/vscode": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.41.0.tgz", - "integrity": "sha512-7SfeY5u9jgiELwxyLB3z7l6l/GbN9CqpCQGkcRlB7tKRFBxzbz2PoBfGrLxI1vRfUCIq5+hg5vtDHExwq5j3+A==", - "dev": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.16.1.tgz", - "integrity": "sha512-SK777klBdlkUZpZLC1mPvyOWk9yAFCWmug13eAjVQ4/Q1LATE/NbcQL1xDHkptQkZOLnPmLUA1Y54m8dqYwnoQ==", - "dev": true, - "requires": { - "@typescript-eslint/experimental-utils": "4.16.1", - "@typescript-eslint/scope-manager": "4.16.1", - "debug": "^4.1.1", - "functional-red-black-tree": "^1.0.1", - "lodash": "^4.17.15", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - } - }, - "@typescript-eslint/experimental-utils": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.16.1.tgz", - "integrity": "sha512-0Hm3LSlMYFK17jO4iY3un1Ve9x1zLNn4EM50Lia+0EV99NdbK+cn0er7HC7IvBA23mBg3P+8dUkMXy4leL33UQ==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.16.1", - "@typescript-eslint/types": "4.16.1", - "@typescript-eslint/typescript-estree": "4.16.1", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" - } - }, - "@typescript-eslint/parser": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.16.1.tgz", - "integrity": "sha512-/c0LEZcDL5y8RyI1zLcmZMvJrsR6SM1uetskFkoh3dvqDKVXPsXI+wFB/CbVw7WkEyyTKobC1mUNp/5y6gRvXg==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "4.16.1", - "@typescript-eslint/types": "4.16.1", - "@typescript-eslint/typescript-estree": "4.16.1", - "debug": "^4.1.1" - } - }, - "@typescript-eslint/scope-manager": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.16.1.tgz", - "integrity": "sha512-6IlZv9JaurqV0jkEg923cV49aAn8V6+1H1DRfhRcvZUrptQ+UtSKHb5kwTayzOYTJJ/RsYZdcvhOEKiBLyc0Cw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.16.1", - "@typescript-eslint/visitor-keys": "4.16.1" - } - }, - "@typescript-eslint/types": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.16.1.tgz", - "integrity": "sha512-nnKqBwMgRlhzmJQF8tnFDZWfunXmJyuXj55xc8Kbfup4PbkzdoDXZvzN8//EiKR27J6vUSU8j4t37yUuYPiLqA==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.16.1.tgz", - "integrity": "sha512-m8I/DKHa8YbeHt31T+UGd/l8Kwr0XCTCZL3H4HMvvLCT7HU9V7yYdinTOv1gf/zfqNeDcCgaFH2BMsS8x6NvJg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.16.1", - "@typescript-eslint/visitor-keys": "4.16.1", - "debug": "^4.1.1", - "globby": "^11.0.1", - "is-glob": "^4.0.1", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.16.1.tgz", - "integrity": "sha512-s/aIP1XcMkEqCNcPQtl60ogUYjSM8FU2mq1O7y5cFf3Xcob1z1iXWNB6cC43Op+NGRTFgGolri6s8z/efA9i1w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.16.1", - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", - "dev": true - } - } - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "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==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "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 - }, - "enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "eslint": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz", - "integrity": "sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==", - "dev": true, - "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.20", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.4", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } - } - }, - "eslint-visitor-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", - "dev": true - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } - } - } - } - }, - "eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz", - "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", - "dev": true - }, - "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - } - }, - "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 - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "globby": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", - "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, - "dependencies": { - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true - } - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-fullwidth-code-point": { - "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==", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "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 - }, - "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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "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, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "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.3" - } - }, - "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, - "requires": { - "callsites": "^3.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "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 - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true - }, - "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 - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "queue-microtask": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", - "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==", - "dev": true - }, - "regexpp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", - "dev": true - }, - "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 - }, - "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==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "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==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "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, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "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 - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "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==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - } - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "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 - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "table": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", - "dev": true, - "requires": { - "ajv": "^7.0.2", - "lodash": "^4.17.20", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0" - }, - "dependencies": { - "ajv": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz", - "integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "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 - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", - "dev": true - }, - "tsutils": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.20.0.tgz", - "integrity": "sha512-RYbuQuvkhuqVeXweWT3tJLKOEJ/UUw9GjNEZGWdrLLlM+611o1gwLHBpxoFJKKl25fLprp2eVthtKs5JOrNeXg==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - }, - "typescript": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.2.tgz", - "integrity": "sha512-tbb+NVrLfnsJy3M59lsDgrzWIflR4d4TIUjz+heUnHZwdF7YsrMTKoRERiIvI2lvBG95dfpLxB21WZhys1bgaQ==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "v8-compile-cache": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", - "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } -} diff --git a/packages/p4/package.json b/packages/p4/package.json deleted file mode 100644 index 4ebdfa45..00000000 --- a/packages/p4/package.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "name": "lerna-test-pkg4", - "displayName": "CodeLens Sample", - "description": "Samples for VS Code's CodeLens API", - "version": "0.8.0-alpha.1", - "publisher": "formulahendry", - "engines": { - "vscode": "^1.26.0" - }, - "categories": [ - "Other" - ], - "activationEvents": [ - "*" - ], - "main": "./out/extension", - "contributes": { - "commands": [ - { - "title": "Enable CodeLens", - "command": "codelens-sample.enableCodeLens", - "category": "CodeLens Sample" - }, - { - "title": "Disable Codelens", - "command": "codelens-sample.disableCodeLens", - "category": "CodeLens Sample" - } - ], - "configuration": { - "properties": { - "codelens-sample.enableCodeLens": { - "type": "boolean", - "default": true - } - } - } - }, - "scripts": { - "vscode:prepublish": "npm run compile", - "compile": "tsc -p ./", - "lint": "eslint . --ext .ts,.tsx", - "watch": "tsc -watch -p ./" - }, - "devDependencies": { - "@types/node": "^12.12.0", - "@types/vscode": "^1.26.0", - "@typescript-eslint/eslint-plugin": "^4.16.0", - "@typescript-eslint/parser": "^4.16.0", - "eslint": "^7.21.0", - "typescript": "^4.2.2" - }, - "dependencies": { - "lerna-test-pkg1": "^0.16.0-alpha.1", - "lerna-test-pkg2": "^0.16.0-alpha.1" - } -} diff --git a/packages/p4/src/CodelensProvider.ts b/packages/p4/src/CodelensProvider.ts deleted file mode 100644 index bbb023be..00000000 --- a/packages/p4/src/CodelensProvider.ts +++ /dev/null @@ -1,55 +0,0 @@ -import * as vscode from 'vscode'; - -/** - * CodelensProvider - */ -export class CodelensProvider implements vscode.CodeLensProvider { - - private codeLenses: vscode.CodeLens[] = []; - private regex: RegExp; - private _onDidChangeCodeLenses: vscode.EventEmitter = new vscode.EventEmitter(); - public readonly onDidChangeCodeLenses: vscode.Event = this._onDidChangeCodeLenses.event; - - constructor() { - this.regex = /(.+)/g; - - vscode.workspace.onDidChangeConfiguration((_) => { - this._onDidChangeCodeLenses.fire(); - }); - } - - public provideCodeLenses(document: vscode.TextDocument, token: vscode.CancellationToken): vscode.CodeLens[] | Thenable { - - if (vscode.workspace.getConfiguration("codelens-sample").get("enableCodeLens", true)) { - this.codeLenses = []; - const regex = new RegExp(this.regex); - const text = document.getText(); - let matches; - while ((matches = regex.exec(text)) !== null) { - const line = document.lineAt(document.positionAt(matches.index).line); - const indexOf = line.text.indexOf(matches[0]); - const position = new vscode.Position(line.lineNumber, indexOf); - const range = document.getWordRangeAtPosition(position, new RegExp(this.regex)); - if (range) { - this.codeLenses.push(new vscode.CodeLens(range)); - } - } - return this.codeLenses; - } - return []; - } - - public resolveCodeLens(codeLens: vscode.CodeLens, token: vscode.CancellationToken) { - if (vscode.workspace.getConfiguration("codelens-sample").get("enableCodeLens", true)) { - codeLens.command = { - title: "Codelens provided by sample extension", - tooltip: "Tooltip provided by sample extension", - command: "codelens-sample.codelensAction", - arguments: ["Argument 1", false] - }; - return codeLens; - } - return null; - } -} - diff --git a/packages/p4/src/extension.ts b/packages/p4/src/extension.ts deleted file mode 100644 index 6eae1581..00000000 --- a/packages/p4/src/extension.ts +++ /dev/null @@ -1,35 +0,0 @@ -// The module 'vscode' contains the VS Code extensibility API -// Import the module and reference it with the alias vscode in your code below -import { ExtensionContext, languages, commands, Disposable, workspace, window } from 'vscode'; -import { CodelensProvider } from './CodelensProvider'; - -// this method is called when your extension is activated -// your extension is activated the very first time the command is executed - -let disposables: Disposable[] = []; - -export function activate(context: ExtensionContext) { - const codelensProvider = new CodelensProvider(); - - languages.registerCodeLensProvider("*", codelensProvider); - - commands.registerCommand("codelens-sample.enableCodeLens", () => { - workspace.getConfiguration("codelens-sample").update("enableCodeLens", true, true); - }); - - commands.registerCommand("codelens-sample.disableCodeLens", () => { - workspace.getConfiguration("codelens-sample").update("enableCodeLens", false, true); - }); - - commands.registerCommand("codelens-sample.codelensAction", (args: any) => { - window.showInformationMessage(`CodeLens action clicked with args=${args}`); - }); -} - -// this method is called when your extension is deactivated -export function deactivate() { - if (disposables) { - disposables.forEach(item => item.dispose()); - } - disposables = []; -} diff --git a/packages/p4/tsconfig.json b/packages/p4/tsconfig.json deleted file mode 100644 index ee8e5ef3..00000000 --- a/packages/p4/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "compilerOptions": { - "module": "commonjs", - "target": "es2019", - "lib": [ - "ES2019" - ], - "outDir": "out", - "sourceMap": true, - "skipLibCheck": true, - "rootDir": "src", - /* Strict Type-Checking Option */ - "strict": true, /* enable all strict type-checking options */ - /* Additional Checks */ - "noUnusedLocals": true /* Report errors on unused locals. */ - }, - "exclude": [ - "node_modules" - ] -} diff --git a/packages/p4/yarn.lock b/packages/p4/yarn.lock deleted file mode 100644 index 9b95bc6f..00000000 --- a/packages/p4/yarn.lock +++ /dev/null @@ -1,940 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@^7.0.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.1.tgz#d5481c5095daa1c57e16e54c6f9198443afb49ff" - integrity sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw== - dependencies: - "@babel/highlight" "^7.10.1" - -"@babel/helper-validator-identifier@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz#5770b0c1a826c4f53f5ede5e153163e0318e94b5" - integrity sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw== - -"@babel/highlight@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.1.tgz#841d098ba613ba1a427a2b383d79e35552c38ae0" - integrity sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg== - dependencies: - "@babel/helper-validator-identifier" "^7.10.1" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== - -"@types/eslint-visitor-keys@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d" - integrity sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag== - -"@types/json-schema@^7.0.3": - version "7.0.4" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.4.tgz#38fd73ddfd9b55abb1e1b2ed578cb55bd7b7d339" - integrity sha512-8+KAKzEvSUdeo+kmqnKrqgeE+LcA0tjYWFY7RPProVYwnqDjukzO+3b6dLD56rYX5TdWejnEOLJYOIeh4CXKuA== - -"@types/node@^12.12.0": - version "12.12.42" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.42.tgz#d0d1149336bd07540dd1ea576692829d575dec34" - integrity sha512-R/9QdYFLL9dE9l5cWWzWIZByVGFd7lk7JVOJ7KD+E1SJ4gni7XJRLz9QTjyYQiHIqEAgku9VgxdLjMlhhUaAFg== - -"@types/vscode@^1.26.0": - version "1.45.1" - resolved "https://registry.yarnpkg.com/@types/vscode/-/vscode-1.45.1.tgz#672fb8c2cc33cf14cd4d3bdaa19bb294fe2b2706" - integrity sha512-0NO9qrrEJBO8FsqHCrFMgR2suKnwCsKBWvRSb2OzH5gs4i3QO5AhEMQYrSzDbU/wLPt7N617/rN9lPY213gmwg== - -"@typescript-eslint/eslint-plugin@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.0.2.tgz#4a114a066e2f9659b25682ee59d4866e15a17ec3" - integrity sha512-ER3bSS/A/pKQT/hjMGCK8UQzlL0yLjuCZ/G8CDFJFVTfl3X65fvq2lNYqOG8JPTfrPa2RULCdwfOyFjZEMNExQ== - dependencies: - "@typescript-eslint/experimental-utils" "3.0.2" - functional-red-black-tree "^1.0.1" - regexpp "^3.0.0" - semver "^7.3.2" - tsutils "^3.17.1" - -"@typescript-eslint/experimental-utils@3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-3.0.2.tgz#bb2131baede8df28ec5eacfa540308ca895e5fee" - integrity sha512-4Wc4EczvoY183SSEnKgqAfkj1eLtRgBQ04AAeG+m4RhTVyaazxc1uI8IHf0qLmu7xXe9j1nn+UoDJjbmGmuqXQ== - dependencies: - "@types/json-schema" "^7.0.3" - "@typescript-eslint/typescript-estree" "3.0.2" - eslint-scope "^5.0.0" - eslint-utils "^2.0.0" - -"@typescript-eslint/parser@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-3.0.2.tgz#a92ef339added9bf7fb92605ac99c93ef243e834" - integrity sha512-80Z7s83e8QXHNUspqVlWwb4t5gdz/1bBBmafElbK1wwAwiD/yvJsFyHRxlEpNrt4rdK6eB3p+2WEFkEDHAKk9w== - dependencies: - "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "3.0.2" - "@typescript-eslint/typescript-estree" "3.0.2" - eslint-visitor-keys "^1.1.0" - -"@typescript-eslint/typescript-estree@3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-3.0.2.tgz#67a1ce4307ebaea43443fbf3f3be7e2627157293" - integrity sha512-cs84mxgC9zQ6viV8MEcigfIKQmKtBkZNDYf8Gru2M+MhnA6z9q0NFMZm2IEzKqAwN8lY5mFVd1Z8DiHj6zQ3Tw== - dependencies: - debug "^4.1.1" - eslint-visitor-keys "^1.1.0" - glob "^7.1.6" - is-glob "^4.0.1" - lodash "^4.17.15" - semver "^7.3.2" - tsutils "^3.17.1" - -acorn-jsx@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" - integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== - -acorn@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.2.0.tgz#17ea7e40d7c8640ff54a694c889c26f31704effe" - integrity sha512-apwXVmYVpQ34m/i71vrApRrRKCWQnZZF1+npOD0WV5xZFfwWOmKGQ2RWlfdy9vWITsenisM8M0Qeq8agcFHNiQ== - -ajv@^6.10.0, ajv@^6.10.2: - version "6.12.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" - integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== - 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" - -ansi-escapes@^4.2.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== - dependencies: - type-fest "^0.11.0" - -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== - dependencies: - "@types/color-name" "^1.1.1" - color-convert "^2.0.1" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.0.0.tgz#6e98081ed2d17faab615eb52ac66ec1fe6209e72" - integrity sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-width@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -cross-spawn@^7.0.2: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -debug@^4.0.1, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - -deep-is@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -eslint-scope@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" - integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz#7be1cc70f27a72a76cd14aa698bcabed6890e1cd" - integrity sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" - integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== - -eslint@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.1.0.tgz#d9a1df25e5b7859b0a3d86bb05f0940ab676a851" - integrity sha512-DfS3b8iHMK5z/YLSme8K5cge168I8j8o1uiVmFCgnnjxZQbCGyraF8bMl7Ju4yfBmCuxD7shOF7eqGkcuIHfsA== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - eslint-scope "^5.0.0" - eslint-utils "^2.0.0" - eslint-visitor-keys "^1.1.0" - espree "^7.0.0" - esquery "^1.2.0" - esutils "^2.0.2" - file-entry-cache "^5.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^12.1.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - inquirer "^7.0.0" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash "^4.17.14" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^5.2.3" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.0.0.tgz#8a7a60f218e69f120a842dc24c5a88aa7748a74e" - integrity sha512-/r2XEx5Mw4pgKdyb7GNLQNsu++asx/dltf/CI8RFi9oGHxmQFgvLbc5Op4U6i8Oaj+kdslhJtVlEZeAqH5qOTw== - dependencies: - acorn "^7.1.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" - integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.1.0, estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" - integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -external-editor@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -fast-deep-equal@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" - integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -figures@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" - integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== - dependencies: - flat-cache "^2.0.1" - -flat-cache@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" - integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== - dependencies: - flatted "^2.0.0" - rimraf "2.6.3" - write "1.0.3" - -flatted@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" - integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -glob-parent@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" - integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== - dependencies: - is-glob "^4.0.1" - -glob@^7.1.3, glob@^7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^12.1.0: - version "12.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" - integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== - dependencies: - type-fest "^0.8.1" - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -iconv-lite@^0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -import-fresh@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" - integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -inquirer@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" - integrity sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg== - dependencies: - ansi-escapes "^4.2.1" - chalk "^3.0.0" - cli-cursor "^3.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.15" - mute-stream "0.0.8" - run-async "^2.4.0" - rxjs "^6.5.3" - string-width "^4.1.0" - strip-ansi "^6.0.0" - through "^2.3.6" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^4.0.0, is-glob@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" - integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lodash@^4.17.14, lodash@^4.17.15: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -mkdirp@^0.5.1: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== - dependencies: - minimist "^1.2.5" - -ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -mute-stream@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - dependencies: - mimic-fn "^2.1.0" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - 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.3" - -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -regexpp@^3.0.0, regexpp@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" - integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== - dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" - -rimraf@2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - -run-async@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== - -rxjs@^6.5.3: - version "6.5.5" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" - integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== - dependencies: - tslib "^1.9.0" - -"safer-buffer@>= 2.1.2 < 3": - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -semver@^7.2.1, semver@^7.3.2: - version "7.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" - integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -signal-exit@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - -slice-ansi@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" - integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== - dependencies: - ansi-styles "^3.2.0" - astral-regex "^1.0.0" - is-fullwidth-code-point "^2.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -string-width@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - -string-width@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" - integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -strip-ansi@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-json-comments@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" - integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== - dependencies: - has-flag "^4.0.0" - -table@^5.2.3: - version "5.4.6" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" - integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== - dependencies: - ajv "^6.10.2" - lodash "^4.17.14" - slice-ansi "^2.1.0" - string-width "^3.0.0" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tslib@^1.8.1, tslib@^1.9.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== - -tsutils@^3.17.1: - version "3.17.1" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" - integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== - dependencies: - tslib "^1.8.1" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== - -type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - -typescript@3.8.3: - version "3.8.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.8.3.tgz#409eb8544ea0335711205869ec458ab109ee1061" - integrity sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w== - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -v8-compile-cache@^2.0.3: - version "2.1.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" - integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -word-wrap@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" - integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== - dependencies: - mkdirp "^0.5.1" From 04d2935662bbc9afc71f4b67162ddeab6d569c6b Mon Sep 17 00:00:00 2001 From: Long Hao Date: Wed, 3 Nov 2021 03:10:55 +0000 Subject: [PATCH 155/202] chore: v3 pt --- .github/workflows/e2e-test.yml | 22 ------- .github/workflows/mail.yml | 57 ------------------ .github/workflows/os.yml | 48 --------------- .github/workflows/reviewer.yml | 31 ---------- .github/workflows/unit-test.yml | 101 -------------------------------- 5 files changed, 259 deletions(-) delete mode 100644 .github/workflows/e2e-test.yml delete mode 100644 .github/workflows/mail.yml delete mode 100644 .github/workflows/os.yml delete mode 100644 .github/workflows/reviewer.yml delete mode 100644 .github/workflows/unit-test.yml diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml deleted file mode 100644 index b4736e66..00000000 --- a/.github/workflows/e2e-test.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: E2E Test - -on: - workflow_dispatch: - -jobs: - run-tests: - runs-on: windows-latest - steps: - - name: fail - run: | - exit 1 - - create-ado-issue: - runs-on: ubuntu-latest - needs: run-tests - if: ${{ failure() && (github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/main') }} - steps: - - name: fail - run: | - echo ${{ github.ref }} - exit 0 diff --git a/.github/workflows/mail.yml b/.github/workflows/mail.yml deleted file mode 100644 index bbfa5c07..00000000 --- a/.github/workflows/mail.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: mail - -on: - workflow_dispatch: - -jobs: - main: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Check git log - id: git-log - shell: bash - run: | - declare -A email_uid - for i in $(git log --pretty="%ae" e2e..HEAD | sort | uniq); - do - if [ ${email_uid[$i]+exist} ]; then - continue - fi - - resp=$(curl -u :${{ secrets.ADO_PAT }} "https://vssps.dev.azure.com/msazure/_apis/identities?searchFilter=General&filterValue=$i&queryMembership=None&api-version=6.0") - uid=$(echo $resp | jq '.value | .[] | .id' | xargs echo) - email_uid[$i]=$uid - done - echo ${email_uid[@]} - - gitlog=$(git log --pretty=format:'{"commit":"%h","subject":"%s","email":"%aE","date":"%aD"},' e2e..HEAD | grep -v "noreply") - gitlog=[${gitlog::-1}] - - description=" Commit Date Subject Author " - for row in $(echo $gitlog | jq -r '.[] | @base64'); do - _jq() { - echo ${row} | base64 --decode | jq -r ${1} - } - description="$description $(_jq '.commit') $(_jq '.subject') $(_jq '.date') $(_jq '.email') " - done - description=`echo $description | sed -e 's/"/\\\"/g'` - echo $description - echo "::set-output name=description::$description" - - - name: Send E-mail to the whole team - uses: satak/webrequest-action@master - with: - url: https://prod-30.eastus.logic.azure.com:443/workflows/9aa865da96054bd89749c2d4ce68df8e/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=uIoB06NUHSnKoZeWjNDI9t4rrhbTBKxJNiBtDoMRSQs - method: POST - payload: | - { - "to": "haolong@microsoft.com", - "body": "TeamsFx CLI E2E Test failed ${{ steps.git-log.outputs.description }}
The detail can be found here: https://github.com/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}.", - "subject": "[Failure] TeamsFx CLI E2E Test ${{ github.run-id }}", - "apiKey": "${{ secrets.MAIL_API_KEY }}" - } diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml deleted file mode 100644 index 728d0011..00000000 --- a/.github/workflows/os.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: os - -on: - workflow_dispatch: - -jobs: - test_os: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v2 - - - name: Setup node - uses: actions/setup-node@v2.1.2 - with: - node-version: 14 - - - name: lerna - run: | - npm install - npx lerna bootstrap - - - name: fail - run: | - exit 1 - - - name: test always - if: ${{ always() && github.ref == 'refs/heads/main' }} - run: | - echo "hello, world" - - - name: test fail - if: ${{ always() }} - run: | - echo "hello, world" - - - name: Install necessary tools in Linux - run: | - sudo apt update - - mkdir -p ~/.local/share/keyrings - echo 'Default_keyring' >> ~/.local/share/keyrings/default - echo '${{ secrets.DEFAULT_KEYRING }}' >> ~/.local/share/keyrings/Default_keyring.keyring - - - name: Azure Login - run: | - export SFDX_USE_GENERIC_UNIX_KEYCHAIN=true - npx ts-node packages/p1/azureLogin.ts -- '${{ secrets.AZURE_USERNAME }}' '${{ secrets.AZURE_PASSWORD }}' diff --git a/.github/workflows/reviewer.yml b/.github/workflows/reviewer.yml deleted file mode 100644 index ad6986eb..00000000 --- a/.github/workflows/reviewer.yml +++ /dev/null @@ -1,31 +0,0 @@ -name: reviewer - -on: - pull_request: - -jobs: - run-tests: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Setup node - uses: actions/setup-node@v2.1.2 - with: - node-version: 14 - - - name: assign-reviewer - uses: LongOddCode/assign-reviewer@0.2.1 - with: - reviewers: '["chagong"]' - conscript: 0 - script: bash - result: TELEMETRY_RESULT - run: | - line=`git diff -U0 ${{ github.base_ref }} | grep '^[+-]' | grep -Ev '^(--- a/|\+\+\+ b/)' | grep -i "telemetry" | wc -l` - if [ $line -gt 0 ]; then - echo '::set-output name=TELEMETRY_RESULT::true' - fi diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml deleted file mode 100644 index 948046ea..00000000 --- a/.github/workflows/unit-test.yml +++ /dev/null @@ -1,101 +0,0 @@ -name: Unit Test - -on: - pull_request: - branches: - - main - - dev - -jobs: - source-branch-test: - runs-on: ubuntu-latest - outputs: - coverages: ${{ steps.unit-test.outputs.coverages }} - steps: - - name: Checkout - uses: actions/checkout@v2 - with: - ref: ${{ github.head_ref }} - - - name: Setup node - uses: actions/setup-node@v2.1.2 - with: - node-version: 14 - - - name: Setup jq - shell: bash - run: - which jq - - - name: Setup project - run: | - npm run setup - - - name: Unit Test - id: unit-test - shell: bash - run: | - npx lerna run test:unit - coverages="{}" - for i in $(find . -name coverage-summary.json); do - coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') - done - echo $coverages - echo "::set-output name=coverages::$coverages" - - target-branch-test: - runs-on: ubuntu-latest - outputs: - coverages: ${{ steps.unit-test.outputs.coverages }} - steps: - - name: Checkout - uses: actions/checkout@v2 - with: - ref: ${{ github.base_ref }} - - - name: Setup node - uses: actions/setup-node@v2.1.2 - with: - node-version: 14 - - - name: Setup jq - shell: bash - run: - which jq - - - name: Setup project - run: | - npm run setup - - - name: Unit Test - id: unit-test - shell: bash - run: | - npx lerna run test:unit - coverages="{}" - for i in $(find . -name coverage-summary.json); do - coverages=$(echo $coverages | jq -rc --arg package $(basename $(dirname $(dirname $i))) --argjson total $(jq -cr '.total' $i) '.[$package]= $total') - done - echo $coverages - echo "::set-output name=coverages::$coverages" - - compare-coverage: - needs: [source-branch-test, target-branch-test] - runs-on: ubuntu-latest - steps: - - name: echo - run: | - echo ${{ needs.source-branch-test.outputs.coverages }} - echo ${{ needs.target-branch-test.outputs.coverages }} - mapfile -t source < <(echo ${{ needs.source-branch-test.outputs.coverages }} | jq -r 'keys[]' ) - - for i in ${source[@]}; do - if [[ $(echo ${{ needs.target-branch-test.outputs.coverages }} | jq .\"$i\") != "null" ]]; then - targetpct=$(echo ${{ needs.target-branch-test.outputs.coverages }} | jq .\"$i\".lines.pct) - sourcepct=$(echo ${{ needs.source-branch-test.outputs.coverages }} | jq .\"$i\".lines.pct) - if (( $(echo "$targetpct > $sourcepct" | bc -l ) )); then - printf "test coverage decreased: [target]%s, [source]%s\n" $targetpct $sourcepct - exit 1 - fi - fi - done From 065fee31e928a4b56c55ef92d9a8619f1187a909 Mon Sep 17 00:00:00 2001 From: Long Hao Date: Wed, 3 Nov 2021 03:14:52 +0000 Subject: [PATCH 156/202] chore: v3 pt --- packages/computing-plugin/package.json | 11 + packages/inner-loop-plugin/package.json | 11 + packages/pt-cli/package.json | 11 + packages/pt-vscode/.eslintrc.json | 24 + packages/pt-vscode/.gitignore | 5 + packages/pt-vscode/.vscode/extensions.json | 7 + packages/pt-vscode/.vscode/launch.json | 34 + packages/pt-vscode/.vscode/settings.json | 11 + packages/pt-vscode/.vscode/tasks.json | 20 + packages/pt-vscode/.vscodeignore | 10 + packages/pt-vscode/CHANGELOG.md | 9 + packages/pt-vscode/README.md | 70 + packages/pt-vscode/package-lock.json | 1739 +++++++++++++++++ packages/pt-vscode/package.json | 45 + packages/pt-vscode/src/extension.ts | 26 + packages/pt-vscode/src/test/runTest.ts | 23 + .../src/test/suite/extension.test.ts | 15 + packages/pt-vscode/src/test/suite/index.ts | 38 + packages/pt-vscode/tsconfig.json | 21 + .../pt-vscode/vsc-extension-quickstart.md | 42 + 20 files changed, 2172 insertions(+) create mode 100644 packages/computing-plugin/package.json create mode 100644 packages/inner-loop-plugin/package.json create mode 100644 packages/pt-cli/package.json create mode 100644 packages/pt-vscode/.eslintrc.json create mode 100644 packages/pt-vscode/.gitignore create mode 100644 packages/pt-vscode/.vscode/extensions.json create mode 100644 packages/pt-vscode/.vscode/launch.json create mode 100644 packages/pt-vscode/.vscode/settings.json create mode 100644 packages/pt-vscode/.vscode/tasks.json create mode 100644 packages/pt-vscode/.vscodeignore create mode 100644 packages/pt-vscode/CHANGELOG.md create mode 100644 packages/pt-vscode/README.md create mode 100644 packages/pt-vscode/package-lock.json create mode 100644 packages/pt-vscode/package.json create mode 100644 packages/pt-vscode/src/extension.ts create mode 100644 packages/pt-vscode/src/test/runTest.ts create mode 100644 packages/pt-vscode/src/test/suite/extension.test.ts create mode 100644 packages/pt-vscode/src/test/suite/index.ts create mode 100644 packages/pt-vscode/tsconfig.json create mode 100644 packages/pt-vscode/vsc-extension-quickstart.md diff --git a/packages/computing-plugin/package.json b/packages/computing-plugin/package.json new file mode 100644 index 00000000..7ded0003 --- /dev/null +++ b/packages/computing-plugin/package.json @@ -0,0 +1,11 @@ +{ + "name": "pt-computing-plugin", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC" +} diff --git a/packages/inner-loop-plugin/package.json b/packages/inner-loop-plugin/package.json new file mode 100644 index 00000000..39d02300 --- /dev/null +++ b/packages/inner-loop-plugin/package.json @@ -0,0 +1,11 @@ +{ + "name": "pt-inner-loop-plugin", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC" +} diff --git a/packages/pt-cli/package.json b/packages/pt-cli/package.json new file mode 100644 index 00000000..b757b132 --- /dev/null +++ b/packages/pt-cli/package.json @@ -0,0 +1,11 @@ +{ + "name": "pt_cli_v3", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC" +} diff --git a/packages/pt-vscode/.eslintrc.json b/packages/pt-vscode/.eslintrc.json new file mode 100644 index 00000000..f9b22b79 --- /dev/null +++ b/packages/pt-vscode/.eslintrc.json @@ -0,0 +1,24 @@ +{ + "root": true, + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 6, + "sourceType": "module" + }, + "plugins": [ + "@typescript-eslint" + ], + "rules": { + "@typescript-eslint/naming-convention": "warn", + "@typescript-eslint/semi": "warn", + "curly": "warn", + "eqeqeq": "warn", + "no-throw-literal": "warn", + "semi": "off" + }, + "ignorePatterns": [ + "out", + "dist", + "**/*.d.ts" + ] +} diff --git a/packages/pt-vscode/.gitignore b/packages/pt-vscode/.gitignore new file mode 100644 index 00000000..0b60dfa1 --- /dev/null +++ b/packages/pt-vscode/.gitignore @@ -0,0 +1,5 @@ +out +dist +node_modules +.vscode-test/ +*.vsix diff --git a/packages/pt-vscode/.vscode/extensions.json b/packages/pt-vscode/.vscode/extensions.json new file mode 100644 index 00000000..3ac9aeb6 --- /dev/null +++ b/packages/pt-vscode/.vscode/extensions.json @@ -0,0 +1,7 @@ +{ + // See http://go.microsoft.com/fwlink/?LinkId=827846 + // for the documentation about the extensions.json format + "recommendations": [ + "dbaeumer.vscode-eslint" + ] +} diff --git a/packages/pt-vscode/.vscode/launch.json b/packages/pt-vscode/.vscode/launch.json new file mode 100644 index 00000000..670d6e66 --- /dev/null +++ b/packages/pt-vscode/.vscode/launch.json @@ -0,0 +1,34 @@ +// A launch configuration that compiles the extension and then opens it inside a new window +// Use IntelliSense to learn about possible attributes. +// Hover to view descriptions of existing attributes. +// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Run Extension", + "type": "extensionHost", + "request": "launch", + "args": [ + "--extensionDevelopmentPath=${workspaceFolder}" + ], + "outFiles": [ + "${workspaceFolder}/out/**/*.js" + ], + "preLaunchTask": "${defaultBuildTask}" + }, + { + "name": "Extension Tests", + "type": "extensionHost", + "request": "launch", + "args": [ + "--extensionDevelopmentPath=${workspaceFolder}", + "--extensionTestsPath=${workspaceFolder}/out/test/suite/index" + ], + "outFiles": [ + "${workspaceFolder}/out/test/**/*.js" + ], + "preLaunchTask": "${defaultBuildTask}" + } + ] +} diff --git a/packages/pt-vscode/.vscode/settings.json b/packages/pt-vscode/.vscode/settings.json new file mode 100644 index 00000000..30bf8c2d --- /dev/null +++ b/packages/pt-vscode/.vscode/settings.json @@ -0,0 +1,11 @@ +// Place your settings in this file to overwrite default and user settings. +{ + "files.exclude": { + "out": false // set this to true to hide the "out" folder with the compiled JS files + }, + "search.exclude": { + "out": true // set this to false to include "out" folder in search results + }, + // Turn off tsc task auto detection since we have the necessary tasks as npm scripts + "typescript.tsc.autoDetect": "off" +} \ No newline at end of file diff --git a/packages/pt-vscode/.vscode/tasks.json b/packages/pt-vscode/.vscode/tasks.json new file mode 100644 index 00000000..3b17e53b --- /dev/null +++ b/packages/pt-vscode/.vscode/tasks.json @@ -0,0 +1,20 @@ +// See https://go.microsoft.com/fwlink/?LinkId=733558 +// for the documentation about the tasks.json format +{ + "version": "2.0.0", + "tasks": [ + { + "type": "npm", + "script": "watch", + "problemMatcher": "$tsc-watch", + "isBackground": true, + "presentation": { + "reveal": "never" + }, + "group": { + "kind": "build", + "isDefault": true + } + } + ] +} diff --git a/packages/pt-vscode/.vscodeignore b/packages/pt-vscode/.vscodeignore new file mode 100644 index 00000000..38999676 --- /dev/null +++ b/packages/pt-vscode/.vscodeignore @@ -0,0 +1,10 @@ +.vscode/** +.vscode-test/** +src/** +.gitignore +.yarnrc +vsc-extension-quickstart.md +**/tsconfig.json +**/.eslintrc.json +**/*.map +**/*.ts diff --git a/packages/pt-vscode/CHANGELOG.md b/packages/pt-vscode/CHANGELOG.md new file mode 100644 index 00000000..85faf257 --- /dev/null +++ b/packages/pt-vscode/CHANGELOG.md @@ -0,0 +1,9 @@ +# Change Log + +All notable changes to the "pt-vscode" extension will be documented in this file. + +Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file. + +## [Unreleased] + +- Initial release \ No newline at end of file diff --git a/packages/pt-vscode/README.md b/packages/pt-vscode/README.md new file mode 100644 index 00000000..7a91cb33 --- /dev/null +++ b/packages/pt-vscode/README.md @@ -0,0 +1,70 @@ +# pt-vscode README + +This is the README for your extension "pt-vscode". After writing up a brief description, we recommend including the following sections. + +## Features + +Describe specific features of your extension including screenshots of your extension in action. Image paths are relative to this README file. + +For example if there is an image subfolder under your extension project workspace: + +\!\[feature X\]\(images/feature-x.png\) + +> Tip: Many popular extensions utilize animations. This is an excellent way to show off your extension! We recommend short, focused animations that are easy to follow. + +## Requirements + +If you have any requirements or dependencies, add a section describing those and how to install and configure them. + +## Extension Settings + +Include if your extension adds any VS Code settings through the `contributes.configuration` extension point. + +For example: + +This extension contributes the following settings: + +* `myExtension.enable`: enable/disable this extension +* `myExtension.thing`: set to `blah` to do something + +## Known Issues + +Calling out known issues can help limit users opening duplicate issues against your extension. + +## Release Notes + +Users appreciate release notes as you update your extension. + +### 1.0.0 + +Initial release of ... + +### 1.0.1 + +Fixed issue #. + +### 1.1.0 + +Added features X, Y, and Z. + +----------------------------------------------------------------------------------------------------------- +## Following extension guidelines + +Ensure that you've read through the extensions guidelines and follow the best practices for creating your extension. + +* [Extension Guidelines](https://code.visualstudio.com/api/references/extension-guidelines) + +## Working with Markdown + +**Note:** You can author your README using Visual Studio Code. Here are some useful editor keyboard shortcuts: + +* Split the editor (`Cmd+\` on macOS or `Ctrl+\` on Windows and Linux) +* Toggle preview (`Shift+CMD+V` on macOS or `Shift+Ctrl+V` on Windows and Linux) +* Press `Ctrl+Space` (Windows, Linux) or `Cmd+Space` (macOS) to see a list of Markdown snippets + +### For more information + +* [Visual Studio Code's Markdown Support](http://code.visualstudio.com/docs/languages/markdown) +* [Markdown Syntax Reference](https://help.github.com/articles/markdown-basics/) + +**Enjoy!** diff --git a/packages/pt-vscode/package-lock.json b/packages/pt-vscode/package-lock.json new file mode 100644 index 00000000..0aa36d37 --- /dev/null +++ b/packages/pt-vscode/package-lock.json @@ -0,0 +1,1739 @@ +{ + "name": "pt-vscode", + "version": "0.0.1", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@eslint/eslintrc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.3.tgz", + "integrity": "sha512-DHI1wDPoKCBPoLZA3qDR91+3te/wDSc1YhKg3jR8NxKKRJq2hwHwcWv31cSwSYvIBrmbENoYMWcenW8uproQqg==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.0.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } + } + }, + "@humanwhocodes/config-array": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", + "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@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==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@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==", + "dev": true + }, + "@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==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true + }, + "@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "dev": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "dev": true + }, + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true + }, + "@types/mocha": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.0.0.tgz", + "integrity": "sha512-scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA==", + "dev": true + }, + "@types/node": { + "version": "14.17.32", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.32.tgz", + "integrity": "sha512-JcII3D5/OapPGx+eJ+Ik1SQGyt6WvuqdRfh9jUwL6/iHGjmyOriBDciBUu7lEIBTL2ijxwrR70WUnw5AEDmFvQ==", + "dev": true + }, + "@types/vscode": { + "version": "1.61.0", + "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.61.0.tgz", + "integrity": "sha512-9k5Nwq45hkRwdfCFY+eKXeQQSbPoA114mF7U/4uJXRBJeGIO7MuJdhF1PnaDN+lllL9iKGQtd6FFXShBXMNaFg==", + "dev": true + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.3.0.tgz", + "integrity": "sha512-ARUEJHJrq85aaiCqez7SANeahDsJTD3AEua34EoQN9pHS6S5Bq9emcIaGGySt/4X2zSi+vF5hAH52sEen7IO7g==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "5.3.0", + "@typescript-eslint/scope-manager": "5.3.0", + "debug": "^4.3.2", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.1.8", + "regexpp": "^3.2.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/experimental-utils": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.3.0.tgz", + "integrity": "sha512-NFVxYTjKj69qB0FM+piah1x3G/63WB8vCBMnlnEHUsiLzXSTWb9FmFn36FD9Zb4APKBLY3xRArOGSMQkuzTF1w==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@typescript-eslint/scope-manager": "5.3.0", + "@typescript-eslint/types": "5.3.0", + "@typescript-eslint/typescript-estree": "5.3.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + } + }, + "@typescript-eslint/parser": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.3.0.tgz", + "integrity": "sha512-rKu/yAReip7ovx8UwOAszJVO5MgBquo8WjIQcp1gx4pYQCwYzag+I5nVNHO4MqyMkAo0gWt2gWUi+36gWAVKcw==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.3.0", + "@typescript-eslint/types": "5.3.0", + "@typescript-eslint/typescript-estree": "5.3.0", + "debug": "^4.3.2" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.3.0.tgz", + "integrity": "sha512-22Uic9oRlTsPppy5Tcwfj+QET5RWEnZ5414Prby465XxQrQFZ6nnm5KnXgnsAJefG4hEgMnaxTB3kNEyjdjj6A==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.3.0", + "@typescript-eslint/visitor-keys": "5.3.0" + } + }, + "@typescript-eslint/types": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.3.0.tgz", + "integrity": "sha512-fce5pG41/w8O6ahQEhXmMV+xuh4+GayzqEogN24EK+vECA3I6pUwKuLi5QbXO721EMitpQne5VKXofPonYlAQg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.3.0.tgz", + "integrity": "sha512-FJ0nqcaUOpn/6Z4Jwbtf+o0valjBLkqc3MWkMvrhA2TvzFXtcclIM8F4MBEmYa2kgcI8EZeSAzwoSrIC8JYkug==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.3.0", + "@typescript-eslint/visitor-keys": "5.3.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.3.0.tgz", + "integrity": "sha512-oVIAfIQuq0x2TFDNLVavUn548WL+7hdhxYn+9j3YdJJXB7mH9dAmZNJsPDa7Jc+B9WGqoiex7GUDbyMxV0a/aw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.3.0", + "eslint-visitor-keys": "^3.0.0" + } + }, + "@ungap/promise-all-settled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", + "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", + "dev": true + }, + "@vscode/test-electron": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@vscode/test-electron/-/test-electron-1.6.2.tgz", + "integrity": "sha512-W01ajJEMx6223Y7J5yaajGjVs1QfW3YGkkOJHVKfAMEqNB1ZHN9wCcViehv5ZwVSSJnjhu6lYEYgwBdHtCxqhQ==", + "dev": true, + "requires": { + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "rimraf": "^3.0.2", + "unzipper": "^0.10.11" + } + }, + "acorn": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "requires": { + "debug": "4" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "big-integer": { + "version": "1.6.50", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.50.tgz", + "integrity": "sha512-+O2uoQWFRo8ysZNo/rjtri2jIwjr3XfeAgRjAUADRqGG+ZITvyn8J1kvXLTaKVr3hhGXk+f23tKfdzmklVM9vQ==", + "dev": true + }, + "binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", + "dev": true, + "requires": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bluebird": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", + "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "buffer-indexof-polyfill": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", + "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", + "dev": true + }, + "buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", + "dev": true + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "dev": true + }, + "chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", + "dev": true, + "requires": { + "traverse": ">=0.3.0 <0.4" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "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==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true + }, + "deep-is": { + "version": "0.1.4", + "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 + }, + "diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "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 + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.1.0.tgz", + "integrity": "sha512-JZvNneArGSUsluHWJ8g8MMs3CfIEzwaLx9KyH4tZ2i+R2/rPWzL8c0zg3rHdwYVpN/1sB9gqnjHwz9HoeJpGHw==", + "dev": true, + "requires": { + "@eslint/eslintrc": "^1.0.3", + "@humanwhocodes/config-array": "^0.6.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^6.0.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.0.0", + "espree": "^9.0.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^6.0.1", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.2.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "eslint-scope": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-6.0.0.tgz", + "integrity": "sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + } + } + }, + "eslint-visitor-keys": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz", + "integrity": "sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==", + "dev": true + }, + "espree": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.0.0.tgz", + "integrity": "sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ==", + "dev": true, + "requires": { + "acorn": "^8.5.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "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 + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "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, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "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, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "globby": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + } + }, + "graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "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==", + "dev": true + }, + "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, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true + }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + }, + "dependencies": { + "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 + } + } + }, + "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 + }, + "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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "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, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "listenercount": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", + "integrity": "sha1-hMinKrWcRyUyFIDJdeZQg0LnCTc=", + "dev": true + }, + "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, + "requires": { + "p-locate": "^5.0.0" + } + }, + "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 + }, + "log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "mocha": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.1.3.tgz", + "integrity": "sha512-Xcpl9FqXOAYqI3j79pEtHBBnQgVXIhpULjGQa7DVb0Po+VzmSIK9kanAiWLHoRR/dbZ2qpdPshuXr8l1VaHCzw==", + "dev": true, + "requires": { + "@ungap/promise-all-settled": "1.1.2", + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.5.2", + "debug": "4.3.2", + "diff": "5.0.0", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.1.7", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", + "minimatch": "3.0.4", + "ms": "2.1.3", + "nanoid": "3.1.25", + "serialize-javascript": "6.0.0", + "strip-json-comments": "3.1.1", + "supports-color": "8.1.1", + "which": "2.0.2", + "workerpool": "6.1.5", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", + "yargs-unparser": "2.0.0" + }, + "dependencies": { + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "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 + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "nanoid": { + "version": "3.1.25", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", + "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "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.3" + } + }, + "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, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "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, + "requires": { + "p-limit": "^3.0.2" + } + }, + "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, + "requires": { + "callsites": "^3.0.0" + } + }, + "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 + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "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 + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true + }, + "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 + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "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==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "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==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "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, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "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 + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "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, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "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, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "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 + }, + "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==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", + "dev": true + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + }, + "typescript": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", + "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", + "dev": true + }, + "unzipper": { + "version": "0.10.11", + "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.11.tgz", + "integrity": "sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==", + "dev": true, + "requires": { + "big-integer": "^1.6.17", + "binary": "~0.3.0", + "bluebird": "~3.4.1", + "buffer-indexof-polyfill": "~1.0.0", + "duplexer2": "~0.1.4", + "fstream": "^1.0.12", + "graceful-fs": "^4.2.2", + "listenercount": "~1.0.1", + "readable-stream": "~2.3.6", + "setimmediate": "~1.0.4" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "workerpool": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", + "integrity": "sha512-XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "dev": true + }, + "yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "dev": true, + "requires": { + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + } + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + } + } +} diff --git a/packages/pt-vscode/package.json b/packages/pt-vscode/package.json new file mode 100644 index 00000000..c54cafaf --- /dev/null +++ b/packages/pt-vscode/package.json @@ -0,0 +1,45 @@ +{ + "name": "pt-vscode", + "displayName": "pt-vscode", + "description": "", + "version": "0.0.1", + "engines": { + "vscode": "^1.61.0" + }, + "categories": [ + "Other" + ], + "activationEvents": [ + "onCommand:pt-vscode.helloWorld" + ], + "main": "./out/extension.js", + "contributes": { + "commands": [ + { + "command": "pt-vscode.helloWorld", + "title": "Hello World" + } + ] + }, + "scripts": { + "vscode:prepublish": "npm run compile", + "compile": "tsc -p ./", + "watch": "tsc -watch -p ./", + "pretest": "npm run compile && npm run lint", + "lint": "eslint src --ext ts", + "test": "node ./out/test/runTest.js" + }, + "devDependencies": { + "@types/vscode": "^1.61.0", + "@types/glob": "^7.1.4", + "@types/mocha": "^9.0.0", + "@types/node": "14.x", + "@typescript-eslint/eslint-plugin": "^5.1.0", + "@typescript-eslint/parser": "^5.1.0", + "eslint": "^8.1.0", + "glob": "^7.1.7", + "mocha": "^9.1.3", + "typescript": "^4.4.4", + "@vscode/test-electron": "^1.6.2" + } +} diff --git a/packages/pt-vscode/src/extension.ts b/packages/pt-vscode/src/extension.ts new file mode 100644 index 00000000..f99c6060 --- /dev/null +++ b/packages/pt-vscode/src/extension.ts @@ -0,0 +1,26 @@ +// The module 'vscode' contains the VS Code extensibility API +// Import the module and reference it with the alias vscode in your code below +import * as vscode from 'vscode'; + +// this method is called when your extension is activated +// your extension is activated the very first time the command is executed +export function activate(context: vscode.ExtensionContext) { + + // Use the console to output diagnostic information (console.log) and errors (console.error) + // This line of code will only be executed once when your extension is activated + console.log('Congratulations, your extension "pt-vscode" is now active!'); + + // The command has been defined in the package.json file + // Now provide the implementation of the command with registerCommand + // The commandId parameter must match the command field in package.json + let disposable = vscode.commands.registerCommand('pt-vscode.helloWorld', () => { + // The code you place here will be executed every time your command is executed + // Display a message box to the user + vscode.window.showInformationMessage('Hello World from pt-vscode!'); + }); + + context.subscriptions.push(disposable); +} + +// this method is called when your extension is deactivated +export function deactivate() {} diff --git a/packages/pt-vscode/src/test/runTest.ts b/packages/pt-vscode/src/test/runTest.ts new file mode 100644 index 00000000..27b3ceb2 --- /dev/null +++ b/packages/pt-vscode/src/test/runTest.ts @@ -0,0 +1,23 @@ +import * as path from 'path'; + +import { runTests } from '@vscode/test-electron'; + +async function main() { + try { + // The folder containing the Extension Manifest package.json + // Passed to `--extensionDevelopmentPath` + const extensionDevelopmentPath = path.resolve(__dirname, '../../'); + + // The path to test runner + // Passed to --extensionTestsPath + const extensionTestsPath = path.resolve(__dirname, './suite/index'); + + // Download VS Code, unzip it and run the integration test + await runTests({ extensionDevelopmentPath, extensionTestsPath }); + } catch (err) { + console.error('Failed to run tests'); + process.exit(1); + } +} + +main(); diff --git a/packages/pt-vscode/src/test/suite/extension.test.ts b/packages/pt-vscode/src/test/suite/extension.test.ts new file mode 100644 index 00000000..4ca0ab41 --- /dev/null +++ b/packages/pt-vscode/src/test/suite/extension.test.ts @@ -0,0 +1,15 @@ +import * as assert from 'assert'; + +// You can import and use all API from the 'vscode' module +// as well as import your extension to test it +import * as vscode from 'vscode'; +// import * as myExtension from '../../extension'; + +suite('Extension Test Suite', () => { + vscode.window.showInformationMessage('Start all tests.'); + + test('Sample test', () => { + assert.strictEqual(-1, [1, 2, 3].indexOf(5)); + assert.strictEqual(-1, [1, 2, 3].indexOf(0)); + }); +}); diff --git a/packages/pt-vscode/src/test/suite/index.ts b/packages/pt-vscode/src/test/suite/index.ts new file mode 100644 index 00000000..7029e38e --- /dev/null +++ b/packages/pt-vscode/src/test/suite/index.ts @@ -0,0 +1,38 @@ +import * as path from 'path'; +import * as Mocha from 'mocha'; +import * as glob from 'glob'; + +export function run(): Promise { + // Create the mocha test + const mocha = new Mocha({ + ui: 'tdd', + color: true + }); + + const testsRoot = path.resolve(__dirname, '..'); + + return new Promise((c, e) => { + glob('**/**.test.js', { cwd: testsRoot }, (err, files) => { + if (err) { + return e(err); + } + + // Add files to the test suite + files.forEach(f => mocha.addFile(path.resolve(testsRoot, f))); + + try { + // Run the mocha test + mocha.run(failures => { + if (failures > 0) { + e(new Error(`${failures} tests failed.`)); + } else { + c(); + } + }); + } catch (err) { + console.error(err); + e(err); + } + }); + }); +} diff --git a/packages/pt-vscode/tsconfig.json b/packages/pt-vscode/tsconfig.json new file mode 100644 index 00000000..8427a504 --- /dev/null +++ b/packages/pt-vscode/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "target": "ES2020", + "outDir": "out", + "lib": [ + "ES2020" + ], + "sourceMap": true, + "rootDir": "src", + "strict": true /* enable all strict type-checking options */ + /* Additional Checks */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + }, + "exclude": [ + "node_modules", + ".vscode-test" + ] +} diff --git a/packages/pt-vscode/vsc-extension-quickstart.md b/packages/pt-vscode/vsc-extension-quickstart.md new file mode 100644 index 00000000..b510bff3 --- /dev/null +++ b/packages/pt-vscode/vsc-extension-quickstart.md @@ -0,0 +1,42 @@ +# Welcome to your VS Code Extension + +## What's in the folder + +* This folder contains all of the files necessary for your extension. +* `package.json` - this is the manifest file in which you declare your extension and command. + * The sample plugin registers a command and defines its title and command name. With this information VS Code can show the command in the command palette. It doesn’t yet need to load the plugin. +* `src/extension.ts` - this is the main file where you will provide the implementation of your command. + * The file exports one function, `activate`, which is called the very first time your extension is activated (in this case by executing the command). Inside the `activate` function we call `registerCommand`. + * We pass the function containing the implementation of the command as the second parameter to `registerCommand`. + +## Get up and running straight away + +* Press `F5` to open a new window with your extension loaded. +* Run your command from the command palette by pressing (`Ctrl+Shift+P` or `Cmd+Shift+P` on Mac) and typing `Hello World`. +* Set breakpoints in your code inside `src/extension.ts` to debug your extension. +* Find output from your extension in the debug console. + +## Make changes + +* You can relaunch the extension from the debug toolbar after changing code in `src/extension.ts`. +* You can also reload (`Ctrl+R` or `Cmd+R` on Mac) the VS Code window with your extension to load your changes. + + +## Explore the API + +* You can open the full set of our API when you open the file `node_modules/@types/vscode/index.d.ts`. + +## Run tests + +* Open the debug viewlet (`Ctrl+Shift+D` or `Cmd+Shift+D` on Mac) and from the launch configuration dropdown pick `Extension Tests`. +* Press `F5` to run the tests in a new window with your extension loaded. +* See the output of the test result in the debug console. +* Make changes to `src/test/suite/extension.test.ts` or create new test files inside the `test/suite` folder. + * The provided test runner will only consider files matching the name pattern `**.test.ts`. + * You can create folders inside the `test` folder to structure your tests any way you want. + +## Go further + + * Reduce the extension size and improve the startup time by [bundling your extension](https://code.visualstudio.com/api/working-with-extensions/bundling-extension). + * [Publish your extension](https://code.visualstudio.com/api/working-with-extensions/publishing-extension) on the VSCode extension marketplace. + * Automate builds by setting up [Continuous Integration](https://code.visualstudio.com/api/working-with-extensions/continuous-integration). From 784430dc549c57326e5a145ef2bd891ef2940406 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 18 Nov 2021 11:06:30 +0800 Subject: [PATCH 157/202] chore: fix testplan script --- .github/workflows/test.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 00000000..de5b028d --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,12 @@ +name: test + +on: + workflow_dispatch: + +jobs: + do-sth: + runs-on: ubuntu-latest + steps: + - name: echo sth + run: | + echo "hello world" From 6e131dfe55b14c9ef075351ed096b270b0e397ed Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 18 Nov 2021 13:22:10 +0800 Subject: [PATCH 158/202] chore: fix testplan script --- .github/workflows/test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index de5b028d..983ee53d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,6 +2,9 @@ name: test on: workflow_dispatch: + parant_id: + descripton: "trigger workflow id" + required: false jobs: do-sth: From 4c594cc828275332ff68d401d57a3937862e55ee Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 18 Nov 2021 13:23:08 +0800 Subject: [PATCH 159/202] chore: fix testplan script --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 983ee53d..d167b4f7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,7 +2,7 @@ name: test on: workflow_dispatch: - parant_id: + parent_id: descripton: "trigger workflow id" required: false From 3589d8a687808244c07ea7857e45ec54be3a4765 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 18 Nov 2021 13:25:15 +0800 Subject: [PATCH 160/202] chore: fix testplan script --- .github/workflows/test.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index d167b4f7..f8e51eb3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,9 +2,10 @@ name: test on: workflow_dispatch: - parent_id: - descripton: "trigger workflow id" - required: false + inputs: + parent_id: + description: "trigger workflow id" + required: false jobs: do-sth: From 485c6a3ee4ff0b44c27d65b33c3ec321d58242ea Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 10 Jan 2022 13:36:02 +0800 Subject: [PATCH 161/202] chore: fix e2e report error --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f8e51eb3..febf3ada 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,4 +13,4 @@ jobs: steps: - name: echo sth run: | - echo "hello world" + echo ${{ job }} From f15b2c598aa3e6372a609c93f32d87adb224c9bd Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 10 Jan 2022 13:38:51 +0800 Subject: [PATCH 162/202] chore: fix e2e report error --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index febf3ada..e6d7787e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,4 +13,4 @@ jobs: steps: - name: echo sth run: | - echo ${{ job }} + echo ${{ job.id }} From 0d636e9d277677c031b8d3580864d041709530f7 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 10 Jan 2022 13:39:51 +0800 Subject: [PATCH 163/202] chore: fix e2e report error --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e6d7787e..d517b00e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,4 +13,4 @@ jobs: steps: - name: echo sth run: | - echo ${{ job.id }} + echo ${{ job.container.id }} From c80f6cba9cd64c45c434ae584dd41bdd2f368b5f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 10 Jan 2022 13:42:56 +0800 Subject: [PATCH 164/202] chore: fix e2e report error --- .github/workflows/test.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index d517b00e..5a3331bb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,5 +12,7 @@ jobs: runs-on: ubuntu-latest steps: - name: echo sth + env: + GITHUB_CONTEXT: ${{ toJson(github) }} run: | - echo ${{ job.container.id }} + echo "$GITHUB_CONTEXT" From 9378b4140737c4bf05b99a6241c15b1944aff879 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 10 Jan 2022 13:46:00 +0800 Subject: [PATCH 165/202] chore: fix e2e report error --- .github/workflows/test.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5a3331bb..6cdd6682 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -11,8 +11,14 @@ jobs: do-sth: runs-on: ubuntu-latest steps: - - name: echo sth + - name: echo github env: GITHUB_CONTEXT: ${{ toJson(github) }} run: | echo "$GITHUB_CONTEXT" + + - name: echo job + env: + JOB_CONTEXT: ${{ toJson(job) }} + run: | + echo "$JOB_CONTEXT" From 70598acbda72ea236f095bf5b71de76ebf9af8af Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 12 Jan 2022 14:03:36 +0800 Subject: [PATCH 166/202] chore: warning --- packages/pt-vscode/src/extension.ts | 32 ++++++++++++++++------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/packages/pt-vscode/src/extension.ts b/packages/pt-vscode/src/extension.ts index f99c6060..2a2cf700 100644 --- a/packages/pt-vscode/src/extension.ts +++ b/packages/pt-vscode/src/extension.ts @@ -1,26 +1,30 @@ // The module 'vscode' contains the VS Code extensibility API // Import the module and reference it with the alias vscode in your code below -import * as vscode from 'vscode'; +import * as vscode from "vscode"; // this method is called when your extension is activated // your extension is activated the very first time the command is executed export function activate(context: vscode.ExtensionContext) { - - // Use the console to output diagnostic information (console.log) and errors (console.error) - // This line of code will only be executed once when your extension is activated - console.log('Congratulations, your extension "pt-vscode" is now active!'); + // Use the console to output diagnostic information (console.log) and errors (console.error) + // This line of code will only be executed once when your extension is activated + console.log('Congratulations, your extension "pt-vscode" is now active!'); - // The command has been defined in the package.json file - // Now provide the implementation of the command with registerCommand - // The commandId parameter must match the command field in package.json - let disposable = vscode.commands.registerCommand('pt-vscode.helloWorld', () => { - // The code you place here will be executed every time your command is executed - // Display a message box to the user - vscode.window.showInformationMessage('Hello World from pt-vscode!'); - }); + // The command has been defined in the package.json file + // Now provide the implementation of the command with registerCommand + // The commandId parameter must match the command field in package.json + let disposable = vscode.commands.registerCommand( + "pt-vscode.helloWorld", + () => { + // The code you place here will be executed every time your command is executed + // Display a message box to the user + vscode.window.showInformationMessage("Hello World from pt-vscode!"); + } + ); - context.subscriptions.push(disposable); + context.subscriptions.push(disposable); } // this method is called when your extension is deactivated export function deactivate() {} + +//asdf From fb08361bc50a53a9581d7d5195f83b04594ac791 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 12 Jan 2022 14:04:03 +0800 Subject: [PATCH 167/202] Publish - pt-computing-plugin@1.0.1 - pt-inner-loop-plugin@1.0.1 - pt_cli_v3@1.0.1 - pt-vscode@0.0.2 --- packages/computing-plugin/package.json | 2 +- packages/inner-loop-plugin/package.json | 2 +- packages/pt-cli/package.json | 2 +- packages/pt-vscode/package-lock.json | 2 +- packages/pt-vscode/package.json | 8 ++++---- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/computing-plugin/package.json b/packages/computing-plugin/package.json index 7ded0003..02760ac8 100644 --- a/packages/computing-plugin/package.json +++ b/packages/computing-plugin/package.json @@ -1,6 +1,6 @@ { "name": "pt-computing-plugin", - "version": "1.0.0", + "version": "1.0.1", "description": "", "main": "index.js", "scripts": { diff --git a/packages/inner-loop-plugin/package.json b/packages/inner-loop-plugin/package.json index 39d02300..f5e1c47c 100644 --- a/packages/inner-loop-plugin/package.json +++ b/packages/inner-loop-plugin/package.json @@ -1,6 +1,6 @@ { "name": "pt-inner-loop-plugin", - "version": "1.0.0", + "version": "1.0.1", "description": "", "main": "index.js", "scripts": { diff --git a/packages/pt-cli/package.json b/packages/pt-cli/package.json index b757b132..5dc4db83 100644 --- a/packages/pt-cli/package.json +++ b/packages/pt-cli/package.json @@ -1,6 +1,6 @@ { "name": "pt_cli_v3", - "version": "1.0.0", + "version": "1.0.1", "description": "", "main": "index.js", "scripts": { diff --git a/packages/pt-vscode/package-lock.json b/packages/pt-vscode/package-lock.json index 0aa36d37..bb7c7ed6 100644 --- a/packages/pt-vscode/package-lock.json +++ b/packages/pt-vscode/package-lock.json @@ -1,6 +1,6 @@ { "name": "pt-vscode", - "version": "0.0.1", + "version": "0.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/pt-vscode/package.json b/packages/pt-vscode/package.json index c54cafaf..cd43732c 100644 --- a/packages/pt-vscode/package.json +++ b/packages/pt-vscode/package.json @@ -2,7 +2,7 @@ "name": "pt-vscode", "displayName": "pt-vscode", "description": "", - "version": "0.0.1", + "version": "0.0.2", "engines": { "vscode": "^1.61.0" }, @@ -30,16 +30,16 @@ "test": "node ./out/test/runTest.js" }, "devDependencies": { - "@types/vscode": "^1.61.0", "@types/glob": "^7.1.4", "@types/mocha": "^9.0.0", "@types/node": "14.x", + "@types/vscode": "^1.61.0", "@typescript-eslint/eslint-plugin": "^5.1.0", "@typescript-eslint/parser": "^5.1.0", + "@vscode/test-electron": "^1.6.2", "eslint": "^8.1.0", "glob": "^7.1.7", "mocha": "^9.1.3", - "typescript": "^4.4.4", - "@vscode/test-electron": "^1.6.2" + "typescript": "^4.4.4" } } From 1ac817c35d48f855fdefd5bc6b3bb6b019e1072a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 27 Jan 2022 11:05:51 +0800 Subject: [PATCH 168/202] chore: enable ut coverage --- packages/inner-loop-plugin/package.json | 4 +- packages/pt-vscode/package.json | 89 +++++++++++++------------ 2 files changed, 48 insertions(+), 45 deletions(-) diff --git a/packages/inner-loop-plugin/package.json b/packages/inner-loop-plugin/package.json index f5e1c47c..ea516d8d 100644 --- a/packages/inner-loop-plugin/package.json +++ b/packages/inner-loop-plugin/package.json @@ -1,7 +1,7 @@ { "name": "pt-inner-loop-plugin", - "version": "1.0.1", - "description": "", + "version": "1.0.2", + "description": "lala", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/pt-vscode/package.json b/packages/pt-vscode/package.json index cd43732c..ebc0a0a2 100644 --- a/packages/pt-vscode/package.json +++ b/packages/pt-vscode/package.json @@ -1,45 +1,48 @@ { - "name": "pt-vscode", - "displayName": "pt-vscode", - "description": "", - "version": "0.0.2", - "engines": { - "vscode": "^1.61.0" - }, - "categories": [ - "Other" - ], - "activationEvents": [ - "onCommand:pt-vscode.helloWorld" - ], - "main": "./out/extension.js", - "contributes": { - "commands": [ - { - "command": "pt-vscode.helloWorld", - "title": "Hello World" - } - ] - }, - "scripts": { - "vscode:prepublish": "npm run compile", - "compile": "tsc -p ./", - "watch": "tsc -watch -p ./", - "pretest": "npm run compile && npm run lint", - "lint": "eslint src --ext ts", - "test": "node ./out/test/runTest.js" - }, - "devDependencies": { - "@types/glob": "^7.1.4", - "@types/mocha": "^9.0.0", - "@types/node": "14.x", - "@types/vscode": "^1.61.0", - "@typescript-eslint/eslint-plugin": "^5.1.0", - "@typescript-eslint/parser": "^5.1.0", - "@vscode/test-electron": "^1.6.2", - "eslint": "^8.1.0", - "glob": "^7.1.7", - "mocha": "^9.1.3", - "typescript": "^4.4.4" - } + "name": "pt-vscode", + "displayName": "pt-vscode", + "description": "", + "version": "0.0.2", + "engines": { + "vscode": "^1.61.0" + }, + "categories": [ + "Other" + ], + "activationEvents": [ + "onCommand:pt-vscode.helloWorld" + ], + "main": "./out/extension.js", + "contributes": { + "commands": [ + { + "command": "pt-vscode.helloWorld", + "title": "Hello World" + } + ] + }, + "scripts": { + "vscode:prepublish": "npm run compile", + "compile": "tsc -p ./", + "watch": "tsc -watch -p ./", + "pretest": "npm run compile && npm run lint", + "lint": "eslint src --ext ts", + "test": "node ./out/test/runTest.js" + }, + "dependencies": { + "pt-inner-loop-plugin": "^1.0.0" + }, + "devDependencies": { + "@types/glob": "^7.1.4", + "@types/mocha": "^9.0.0", + "@types/node": "14.x", + "@types/vscode": "^1.61.0", + "@typescript-eslint/eslint-plugin": "^5.1.0", + "@typescript-eslint/parser": "^5.1.0", + "@vscode/test-electron": "^1.6.2", + "eslint": "^8.1.0", + "glob": "^7.1.7", + "mocha": "^9.1.3", + "typescript": "^4.4.4" + } } From e50d532fa65ba36a1478c0437fcb0aeaccd7b6e3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Fri, 18 Feb 2022 16:05:38 +0800 Subject: [PATCH 169/202] test --- test2.html | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 test2.html diff --git a/test2.html b/test2.html new file mode 100644 index 00000000..962e006c --- /dev/null +++ b/test2.html @@ -0,0 +1,71 @@ + + + + Highcharts 教程 | 菜鸟教程(runoob.com) + + + + +

+ + + From 99679d6bacc6ba555a871db2f7e751bee4e5d444 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 7 Mar 2022 11:49:41 +0800 Subject: [PATCH 170/202] chore: pack vsix locally --- .github/workflows/test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6cdd6682..201e04cb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,14 +2,14 @@ name: test on: workflow_dispatch: - inputs: - parent_id: - description: "trigger workflow id" - required: false jobs: do-sth: - runs-on: ubuntu-latest + strategy: + matrix: + os: [windows-latest, ubuntu-latest] + + runs-on: ${{ matrix.os }} steps: - name: echo github env: From 69e7351f695c6966e495c89eac50849f78d1f22c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 7 Mar 2022 12:14:53 +0800 Subject: [PATCH 171/202] chore: pack vsix locally --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 201e04cb..aeaa7b5e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,6 +19,6 @@ jobs: - name: echo job env: - JOB_CONTEXT: ${{ toJson(job) }} + JOB_CONTEXT: ${{ toJson(github.job) }} run: | echo "$JOB_CONTEXT" From f656da9576252507748480cca6266d689bab142a Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 7 Mar 2022 12:19:34 +0800 Subject: [PATCH 172/202] chore: pack vsix locally --- .github/workflows/test.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index aeaa7b5e..185b3f3a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -21,4 +21,8 @@ jobs: env: JOB_CONTEXT: ${{ toJson(github.job) }} run: | - echo "$JOB_CONTEXT" + result=`curl \ + -u :${{ secrets.GITHUB_TOKEN }}\ + https://api.github.com/repos//LongOddCode/lerna-test/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` + + echo $result From 15fbe4569c60b94492e5bc03de955e502fa4c3e3 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 7 Mar 2022 12:22:13 +0800 Subject: [PATCH 173/202] chore: pack vsix locally --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 185b3f3a..799d9e28 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -23,6 +23,6 @@ jobs: run: | result=`curl \ -u :${{ secrets.GITHUB_TOKEN }}\ - https://api.github.com/repos//LongOddCode/lerna-test/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` + https://api.github.com/repos/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` echo $result From 814c896bed6dcea44d99b53ad5801df92b9077f1 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 17 Mar 2022 12:26:33 +0800 Subject: [PATCH 174/202] chore: sync to testplan --- .github/workflows/test.yml | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 799d9e28..5c567883 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,17 +12,6 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: echo github - env: - GITHUB_CONTEXT: ${{ toJson(github) }} + if: ${{ GITHUB_REF_NAME == "main" }} run: | - echo "$GITHUB_CONTEXT" - - - name: echo job - env: - JOB_CONTEXT: ${{ toJson(github.job) }} - run: | - result=`curl \ - -u :${{ secrets.GITHUB_TOKEN }}\ - https://api.github.com/repos/LongOddCode/lerna-test/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` - - echo $result + echo $GITHUB_REF_NAME From c768fc9c017af0840d250c40a5a9e8cfab096f2d Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 17 Mar 2022 12:27:24 +0800 Subject: [PATCH 175/202] chore: sync to testplan --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5c567883..1600b47b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,6 +12,6 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: echo github - if: ${{ GITHUB_REF_NAME == "main" }} + if: ${{ $GITHUB_REF_NAME == "main" }} run: | echo $GITHUB_REF_NAME From b030c4f25a1ec568d4acba023296c95e15a36c4e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 17 Mar 2022 12:28:01 +0800 Subject: [PATCH 176/202] chore: sync to testplan --- .github/workflows/test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1600b47b..7695cad1 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,6 +12,5 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: echo github - if: ${{ $GITHUB_REF_NAME == "main" }} run: | echo $GITHUB_REF_NAME From 5b4454eece4f134e06d5e5d05d5c4603934b2324 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 17 Mar 2022 12:32:14 +0800 Subject: [PATCH 177/202] chore: sync to testplan --- .github/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7695cad1..e35c2700 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,5 +12,6 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: echo github + if: ${{ github.ref_name == "dev" }} run: | echo $GITHUB_REF_NAME From d35275d766cb7760e37c486e1d0c037ce0129c93 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Thu, 17 Mar 2022 12:33:29 +0800 Subject: [PATCH 178/202] chore: sync to testplan --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e35c2700..ce450ea4 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,6 +12,6 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: echo github - if: ${{ github.ref_name == "dev" }} + if: ${{ github.ref_name == 'dev' }} run: | echo $GITHUB_REF_NAME From 8a711ecb7ef58e36c2c8bf368411d2efe4759667 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 15:55:33 +0800 Subject: [PATCH 179/202] chore: test rerun --- .github/workflows/test.yml | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ce450ea4..fa01ca31 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -4,14 +4,36 @@ on: workflow_dispatch: jobs: - do-sth: + map: strategy: matrix: os: [windows-latest, ubuntu-latest] runs-on: ${{ matrix.os }} steps: - - name: echo github - if: ${{ github.ref_name == 'dev' }} + - name: exit 1 + if: ${{ matrix.os == 'ubuntu-latest' }} run: | - echo $GITHUB_REF_NAME + exit 1 + + - name: exit 0 + run: | + exit 0 + + reduce: + needs: map + runs-on: ubuntu-latest + steps: + - name: rerun + if: ${{ github.run_attempt < 4 }} + run: | + curl -i \ + -X POST \ + -u :${{ secrets.GITHUB_TOKEN }} + -H "Accept: application/vnd.github.v3+json" \ + https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/rerun-failed-jobs + + - name: done + if: ${{ github.run_attempt >= 4 }} + run: | + echo 1 From c2c0e77b39fa5547afcb229825dce6ff79a900d1 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 15:57:22 +0800 Subject: [PATCH 180/202] chore: test rerun --- .github/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fa01ca31..7c7afad2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,6 +22,7 @@ jobs: reduce: needs: map + if: ${{ always() }} runs-on: ubuntu-latest steps: - name: rerun From 05f946f953c296eb4153e108c98e34922b38da33 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 15:58:50 +0800 Subject: [PATCH 181/202] chore: test rerun --- .github/workflows/test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7c7afad2..e84d7c65 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -28,10 +28,11 @@ jobs: - name: rerun if: ${{ github.run_attempt < 4 }} run: | - curl -i \ + curl \ -X POST \ -u :${{ secrets.GITHUB_TOKEN }} -H "Accept: application/vnd.github.v3+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/rerun-failed-jobs - name: done From 290f6c9297de4e30b119c9b79691e89c70e3d73e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 16:02:22 +0800 Subject: [PATCH 182/202] chore: test rerun --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e84d7c65..c103aca2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -30,7 +30,7 @@ jobs: run: | curl \ -X POST \ - -u :${{ secrets.GITHUB_TOKEN }} + -u :${{ secrets.GITHUB_TOKEN }} \ -H "Accept: application/vnd.github.v3+json" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/rerun-failed-jobs From 4001eac2a56c7c2b871dae8d7332550b9e3b7357 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 16:15:38 +0800 Subject: [PATCH 183/202] chore: test rerun --- .github/workflows/test.yml | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c103aca2..ef81e89d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -28,12 +28,28 @@ jobs: - name: rerun if: ${{ github.run_attempt < 4 }} run: | - curl \ - -X POST \ + jobs=`curl \ -u :${{ secrets.GITHUB_TOKEN }} \ - -H "Accept: application/vnd.github.v3+json" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/rerun-failed-jobs + https://api.github.com/repos/OfficeDev/TeamsFx/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` + + cases=`echo $jobs| jq -r '.jobs[] | select(.name | contains("tests.ts")) | .name'` + + while IFS= read -r case; + do + if [ -z "$case" ]; then + continue + fi + status=`echo $jobs | jq --arg case $case -r '.jobs[] | select(.name == $case ) | .conclusion'` + job_id=`echo $jobs | jq --arg case $case -r '.jobs[] | select(.name == $case ) | .id'` + if [ "$status" != "success" ]; then + curl \ + -X POST \ + -u :${{ secrets.GITHUB_TOKEN }} \ + -H "Accept: application/vnd.github.v3+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ github.repository }}/actions/jobs/$job_id/rerun + fi + done <<< $cases - name: done if: ${{ github.run_attempt >= 4 }} From b05f193a845cf0513c97c368583d57677d5ac463 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 16:17:15 +0800 Subject: [PATCH 184/202] chore: test rerun --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ef81e89d..58ddb34c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -30,7 +30,7 @@ jobs: run: | jobs=`curl \ -u :${{ secrets.GITHUB_TOKEN }} \ - https://api.github.com/repos/OfficeDev/TeamsFx/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` + https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` cases=`echo $jobs| jq -r '.jobs[] | select(.name | contains("tests.ts")) | .name'` From 945d01e08b4563cd8d77de4de09a81f87b14119f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 16:20:37 +0800 Subject: [PATCH 185/202] chore: test rerun --- .github/workflows/test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 58ddb34c..f477767b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -42,6 +42,7 @@ jobs: status=`echo $jobs | jq --arg case $case -r '.jobs[] | select(.name == $case ) | .conclusion'` job_id=`echo $jobs | jq --arg case $case -r '.jobs[] | select(.name == $case ) | .id'` if [ "$status" != "success" ]; then + echo $job_id curl \ -X POST \ -u :${{ secrets.GITHUB_TOKEN }} \ From d92c05e39f46abf6ce135e953725eaf351da8531 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Tue, 13 Dec 2022 16:31:35 +0800 Subject: [PATCH 186/202] chore: test rerun --- .github/workflows/test.yml | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f477767b..2bc3a4c1 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,24 +32,16 @@ jobs: -u :${{ secrets.GITHUB_TOKEN }} \ https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` - cases=`echo $jobs| jq -r '.jobs[] | select(.name | contains("tests.ts")) | .name'` + cases=`echo $jobs| jq -r '.jobs[] | select(.conclusion=="failure") | .id'` while IFS= read -r case; do - if [ -z "$case" ]; then - continue - fi - status=`echo $jobs | jq --arg case $case -r '.jobs[] | select(.name == $case ) | .conclusion'` - job_id=`echo $jobs | jq --arg case $case -r '.jobs[] | select(.name == $case ) | .id'` - if [ "$status" != "success" ]; then - echo $job_id - curl \ + curl \ -X POST \ -u :${{ secrets.GITHUB_TOKEN }} \ -H "Accept: application/vnd.github.v3+json" \ -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/jobs/$job_id/rerun - fi + https://api.github.com/repos/${{ github.repository }}/actions/jobs/$case/rerun done <<< $cases - name: done From 68a9f94d043438fa13088f2f3ffeb91e39c2395e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:01:40 +0800 Subject: [PATCH 187/202] chore: test rerun --- .github/workflows/mail.yaml | 17 +++++++++++++++++ .github/workflows/test.yml | 28 +++++++--------------------- 2 files changed, 24 insertions(+), 21 deletions(-) create mode 100644 .github/workflows/mail.yaml diff --git a/.github/workflows/mail.yaml b/.github/workflows/mail.yaml new file mode 100644 index 00000000..5c3d37c5 --- /dev/null +++ b/.github/workflows/mail.yaml @@ -0,0 +1,17 @@ +name: mail + +on: + workflow_dispatch: + inputs: + run_id: + description: "run id" + required: true + type: string + +jobs: + mail: + runs-on: ubuntu-latest + steps: + - name: echo + run: | + echo "${{ github.event.inputs.run_id }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2bc3a4c1..35dbcb31 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -25,26 +25,12 @@ jobs: if: ${{ always() }} runs-on: ubuntu-latest steps: - - name: rerun - if: ${{ github.run_attempt < 4 }} - run: | - jobs=`curl \ - -u :${{ secrets.GITHUB_TOKEN }} \ - https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/attempts/${{ github.run_attempt }}/jobs?per_page=100` - - cases=`echo $jobs| jq -r '.jobs[] | select(.conclusion=="failure") | .id'` - - while IFS= read -r case; - do - curl \ - -X POST \ - -u :${{ secrets.GITHUB_TOKEN }} \ - -H "Accept: application/vnd.github.v3+json" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/jobs/$case/rerun - done <<< $cases - - name: done - if: ${{ github.run_attempt >= 4 }} run: | - echo 1 + curl \ + -X POST \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ github.repository }}/actions/workflows/mail/dispatches \ + -d '{"ref":"${GITHUB_REF##*/}","inputs":{"run_id":"${{ github.run_id }}"}}' From c25e3bc9ce916fc48528f05f6ae8066ddefdd03c Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:05:14 +0800 Subject: [PATCH 188/202] chore: test rerun --- .github/workflows/mail.yaml | 2 +- .github/workflows/test.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/mail.yaml b/.github/workflows/mail.yaml index 5c3d37c5..8df8be77 100644 --- a/.github/workflows/mail.yaml +++ b/.github/workflows/mail.yaml @@ -14,4 +14,4 @@ jobs: steps: - name: echo run: | - echo "${{ github.event.inputs.run_id }} + echo "${{ github.event.inputs.run_id }}" diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 35dbcb31..ad72d88e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,5 +32,5 @@ jobs: -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/workflows/mail/dispatches \ + https://api.github.com/repos/${{ github.repository }}/actions/workflows/mail.yaml/dispatches \ -d '{"ref":"${GITHUB_REF##*/}","inputs":{"run_id":"${{ github.run_id }}"}}' From 814205d16d62ae21c7c5c3a05b6ed4fc27e82cf9 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:20:32 +0800 Subject: [PATCH 189/202] chore: test rerun --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ad72d88e..3ae24123 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -33,4 +33,4 @@ jobs: -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/${{ github.repository }}/actions/workflows/mail.yaml/dispatches \ - -d '{"ref":"${GITHUB_REF##*/}","inputs":{"run_id":"${{ github.run_id }}"}}' + -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}"}}' From 9e40bf7cdef7ace9a2f0faf873229b3448423fb5 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:35:35 +0800 Subject: [PATCH 190/202] chore: test rerun --- .github/workflows/mail.yaml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/mail.yaml b/.github/workflows/mail.yaml index 8df8be77..200a26a3 100644 --- a/.github/workflows/mail.yaml +++ b/.github/workflows/mail.yaml @@ -12,6 +12,15 @@ jobs: mail: runs-on: ubuntu-latest steps: - - name: echo + - name: check run: | - echo "${{ github.event.inputs.run_id }}" + run=`curl \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.event.inputs.run_id }}` + + status=`jq -r '.conclusion' $run` + run_attempt=`jq -r '.run_attempt' $run` + echo $status + echo $run_attempt From d5e043bd0fd45ad4a5cc1f370028b33083980140 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:38:20 +0800 Subject: [PATCH 191/202] chore: test rerun --- .github/workflows/mail.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/mail.yaml b/.github/workflows/mail.yaml index 200a26a3..af94bdd2 100644 --- a/.github/workflows/mail.yaml +++ b/.github/workflows/mail.yaml @@ -20,7 +20,7 @@ jobs: -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.event.inputs.run_id }}` - status=`jq -r '.conclusion' $run` - run_attempt=`jq -r '.run_attempt' $run` + status=`jq -r '.conclusion' <<< "$run"` + run_attempt=`jq -r '.run_attempt' <<< "$run"` echo $status echo $run_attempt From f8639d48589e7ea8659a3ecd5db2279ea873a61d Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:46:43 +0800 Subject: [PATCH 192/202] chore: test rerun --- .github/workflows/mail.yaml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/mail.yaml b/.github/workflows/mail.yaml index af94bdd2..356f0222 100644 --- a/.github/workflows/mail.yaml +++ b/.github/workflows/mail.yaml @@ -12,7 +12,7 @@ jobs: mail: runs-on: ubuntu-latest steps: - - name: check + - name: re-run failed jobs run: | run=`curl \ -H "Accept: application/vnd.github+json" \ @@ -22,5 +22,14 @@ jobs: status=`jq -r '.conclusion' <<< "$run"` run_attempt=`jq -r '.run_attempt' <<< "$run"` + echo $status echo $run_attempt + + if [[ "$status" == "failure" && "$run_attempt" -lt "4" ]]; then + curl \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ github.event.inputs.run_id }}/rerun-failed-jobs + fi From ff14483f10139bbe0ee6f2da1fc307da6d40d9fa Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Wed, 14 Dec 2022 13:53:40 +0800 Subject: [PATCH 193/202] chore: test rerun --- .github/workflows/mail.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mail.yaml b/.github/workflows/mail.yaml index 356f0222..17bae155 100644 --- a/.github/workflows/mail.yaml +++ b/.github/workflows/mail.yaml @@ -28,6 +28,7 @@ jobs: if [[ "$status" == "failure" && "$run_attempt" -lt "4" ]]; then curl \ + -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ -H "X-GitHub-Api-Version: 2022-11-28" \ From 03ef7233fc9085aa130964b37e261d7ad5cb0715 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 13:46:41 +0800 Subject: [PATCH 194/202] chore: disable test plan temporary --- .github/workflows/{mail.yaml => rerun.yml} | 14 ++++++++------ .github/workflows/test.yml | 4 ++-- 2 files changed, 10 insertions(+), 8 deletions(-) rename .github/workflows/{mail.yaml => rerun.yml} (78%) diff --git a/.github/workflows/mail.yaml b/.github/workflows/rerun.yml similarity index 78% rename from .github/workflows/mail.yaml rename to .github/workflows/rerun.yml index 17bae155..226f3e04 100644 --- a/.github/workflows/mail.yaml +++ b/.github/workflows/rerun.yml @@ -1,4 +1,4 @@ -name: mail +name: rerun failed jobs on: workflow_dispatch: @@ -7,9 +7,14 @@ on: description: "run id" required: true type: string + max_attempts: + description: "max attempts, default is 3" + required: false + default: "3" + type: string jobs: - mail: + rerun: runs-on: ubuntu-latest steps: - name: re-run failed jobs @@ -23,10 +28,7 @@ jobs: status=`jq -r '.conclusion' <<< "$run"` run_attempt=`jq -r '.run_attempt' <<< "$run"` - echo $status - echo $run_attempt - - if [[ "$status" == "failure" && "$run_attempt" -lt "4" ]]; then + if [[ "$status" == "failure" && "$run_attempt" -lt ${{ github.event.inputs.max_attempts }} ]]; then curl \ -X POST \ -H "Accept: application/vnd.github+json" \ diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3ae24123..6c8908a2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,5 +32,5 @@ jobs: -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/workflows/mail.yaml/dispatches \ - -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}"}}' + https://api.github.com/repos/${{ github.repository }}/actions/workflows/rerun.yaml/dispatches \ + -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}","max_attempts":"3"}}' From 1e9f98294d5de520a5ac94788bb8962ad91d2bbf Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 13:48:51 +0800 Subject: [PATCH 195/202] chore: disable test plan temporary --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6c8908a2..d5c8a0be 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,5 +32,5 @@ jobs: -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/workflows/rerun.yaml/dispatches \ + https://api.github.com/repos/${{ github.repository }}/actions/workflows/rerun.yml/dispatches \ -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}","max_attempts":"3"}}' From f5c442176f2fc64b3365c75d44b23361fd11272e Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 14:21:29 +0800 Subject: [PATCH 196/202] chore: disable test plan temporary --- .github/workflows/test.yml | 46 +++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index d5c8a0be..50c2d8b5 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -4,7 +4,15 @@ on: workflow_dispatch: jobs: - map: + setup: + runs-on: ubuntu-latest + steps: + - name: do sth. + run: | + echo "do sth." + + execute-case: + needs: setup strategy: matrix: os: [windows-latest, ubuntu-latest] @@ -20,17 +28,35 @@ jobs: run: | exit 0 - reduce: - needs: map + tear-down: if: ${{ always() }} + needs: execute-case + runs-on: ubuntu-latest + steps: + - name: do sth. + run: | + echo "do sth." + + rerun: + needs: tear-down + if: ${{ failure() && github.run_attempt < 3 && github.event_name == 'schedule' }} runs-on: ubuntu-latest steps: - - name: done + - name: Checkout run: | curl \ - -X POST \ - -H "Accept: application/vnd.github+json" \ - -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/workflows/rerun.yml/dispatches \ - -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}","max_attempts":"3"}}' + -X POST \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ github.repository }}/actions/workflows/rerun.yml/dispatches \ + -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}", "max_attempts":"3"}}' + + report: + needs: rerun + if: ${{ success() || (failure() && github.run_attempt >=3) }} + runs-on: ubuntu-latest + steps: + - name: do sth. + run: | + echo "do sth." From e7d1b8e40bfd8990f861b0e968f9d5b71dbb5cca Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 14:26:22 +0800 Subject: [PATCH 197/202] chore: disable test plan temporary --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 50c2d8b5..37972a2b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -39,7 +39,7 @@ jobs: rerun: needs: tear-down - if: ${{ failure() && github.run_attempt < 3 && github.event_name == 'schedule' }} + if: ${{ failure() && github.run_attempt < 3 }} runs-on: ubuntu-latest steps: - name: Checkout From f55a4affa221ce8e888ee621bd09af65a0ae1e60 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 14:29:37 +0800 Subject: [PATCH 198/202] chore: disable test plan temporary --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 37972a2b..73ec1ddf 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,7 +22,7 @@ jobs: - name: exit 1 if: ${{ matrix.os == 'ubuntu-latest' }} run: | - exit 1 + exit 0 - name: exit 0 run: | From 85611a4663593e50a7cb9fa620c423e37192879f Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 14:38:29 +0800 Subject: [PATCH 199/202] chore: disable test plan temporary --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 73ec1ddf..c9722e0f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -53,7 +53,7 @@ jobs: -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}", "max_attempts":"3"}}' report: - needs: rerun + needs: execute-case if: ${{ success() || (failure() && github.run_attempt >=3) }} runs-on: ubuntu-latest steps: From 54065e4981ededd4e0e8f68f243afc36d8b06588 Mon Sep 17 00:00:00 2001 From: LongOddCode Date: Mon, 9 Jan 2023 14:40:01 +0800 Subject: [PATCH 200/202] chore: disable test plan temporary --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c9722e0f..e59ab90e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,7 +22,7 @@ jobs: - name: exit 1 if: ${{ matrix.os == 'ubuntu-latest' }} run: | - exit 0 + exit 1 - name: exit 0 run: | From 38a3aca6ce5d37730f7d992bf2bbf929f4714fdc Mon Sep 17 00:00:00 2001 From: Long Hao Date: Thu, 27 Apr 2023 10:47:04 +0800 Subject: [PATCH 201/202] test: reassign owner --- .github/workflows/test.yml | 52 ++------------------------------------ 1 file changed, 2 insertions(+), 50 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e59ab90e..ad2cffd0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,59 +2,11 @@ name: test on: workflow_dispatch: + pull_request: jobs: setup: - runs-on: ubuntu-latest - steps: - - name: do sth. - run: | - echo "do sth." - - execute-case: - needs: setup - strategy: - matrix: - os: [windows-latest, ubuntu-latest] - - runs-on: ${{ matrix.os }} - steps: - - name: exit 1 - if: ${{ matrix.os == 'ubuntu-latest' }} - run: | - exit 1 - - - name: exit 0 - run: | - exit 0 - - tear-down: - if: ${{ always() }} - needs: execute-case - runs-on: ubuntu-latest - steps: - - name: do sth. - run: | - echo "do sth." - - rerun: - needs: tear-down - if: ${{ failure() && github.run_attempt < 3 }} - runs-on: ubuntu-latest - steps: - - name: Checkout - run: | - curl \ - -X POST \ - -H "Accept: application/vnd.github+json" \ - -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"\ - -H "X-GitHub-Api-Version: 2022-11-28" \ - https://api.github.com/repos/${{ github.repository }}/actions/workflows/rerun.yml/dispatches \ - -d '{"ref":"'${GITHUB_REF##*/}'","inputs":{"run_id":"${{ github.run_id }}", "max_attempts":"3"}}' - - report: - needs: execute-case - if: ${{ success() || (failure() && github.run_attempt >=3) }} + if: github.actor == "deps" runs-on: ubuntu-latest steps: - name: do sth. From 23359ea34daf2a84d822604c9633e24d48a6353d Mon Sep 17 00:00:00 2001 From: Long Hao Date: Thu, 27 Apr 2023 10:48:53 +0800 Subject: [PATCH 202/202] test: reassign owner --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ad2cffd0..d2105940 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -6,8 +6,8 @@ on: jobs: setup: - if: github.actor == "deps" runs-on: ubuntu-latest + if: github.actor == 'deps' steps: - name: do sth. run: |

wE~(rdkm11`7no!IA_p@Ij#?T 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